AdminUser.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php namespace App\Http\Requests\Company;
  2. use App\Http\Requests\BaseRequest;
  3. use Illuminate\Validation\Rule;
  4. /**
  5. * 账号管理
  6. *
  7. * */
  8. class AdminUser extends BaseRequest{
  9. /**
  10. *
  11. * @return array
  12. */
  13. public function rules(){
  14. // 编辑时排除ID
  15. $id = request('uid',0);
  16. // 非重规则
  17. $unique = Rule::unique('admin_company')->where(function ($query) {
  18. return $query->where([['username','=',request('username','')]]);
  19. })->ignore($id,'uid');
  20. // 规则
  21. return [
  22. 'username' => ['required',$unique,'max:20'],
  23. 'phone' => ['required','phone'],
  24. 'uid' => 'required|integer|gt:0',
  25. 'password' => 'required|min:6|max:20|same:password_confirmation'
  26. ];
  27. }
  28. // 场景列表
  29. protected $scenes = [
  30. 'add' => ['username','phone'],
  31. 'edit' => ['uid','username','phone'],
  32. 'get_detail' => ['uid'],
  33. 'set_status' => ['uid'],
  34. 'alter_password' => ['password'],
  35. ];
  36. /**
  37. *
  38. * @return array
  39. */
  40. public function messages() {
  41. return [
  42. 'username.required' => '请输入登录账号',
  43. 'username.unique' => '账号名已存在',
  44. 'username.max' => '登录账号最长20个字符',
  45. 'phone.required' => '请输入手机号',
  46. 'phone.phone' => '手机号格式有误',
  47. 'uid.required' => '账号ID不能为空',
  48. 'uid.integer' => '账号ID格式错误',
  49. 'uid.gt' => '账号ID格式错误',
  50. 'password.required' => '请输入密码',
  51. 'password.min' => '密码长度不能小于6位',
  52. 'password.max' => '密码长度不能大于16位',
  53. 'password.same' => '确认密码不一致',
  54. ];
  55. }
  56. }