MemberValidator.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <?php
  2. namespace App\Http\Validator;
  3. class MemberValidator extends BaseValidator
  4. {
  5. // 当前模型所有验证规则
  6. public static $rules = [
  7. 'id' => 'required',
  8. 'code' => 'required',
  9. 'avatar' => 'required',
  10. 'nickname' => 'required|min:2|max:14',
  11. 'mobile' => 'required|mobile',
  12. 'openid' => 'required',
  13. 'scene' => 'required',
  14. 'access_token' => 'required',
  15. 'realname' => 'required|min:2|max:30',
  16. ];
  17. public static $msgs = [
  18. 'required' => ':attribute不能为空',
  19. 'string' => ':attribute必须是字符串',
  20. 'min' => ':attribute长度不能小于:min位',
  21. 'max' => ':attribute长度不能大于:max位',
  22. 'exists' => ':attribute不存在',
  23. 'rule' => ':attribute格式不正确',
  24. 'mobile' => ':attribute格式不正确',
  25. ];
  26. // 当前模型所有验证字段
  27. public static $fields = [
  28. 'id' => 'ID',
  29. 'code' => '微信授权码',
  30. 'openid' => '微信ID',
  31. 'access_token' => 'access_token',
  32. 'avatar' => '头像',
  33. 'gender' => '性别',
  34. 'nickname' => '昵称',
  35. 'password' => '登录密码',
  36. 'username' => '登录账号',
  37. 'realname' => '姓名',
  38. ];
  39. // 当前模型所有验证场景
  40. public static $scenes = [
  41. 'info'=> ['id'],
  42. 'wx_login'=> ['openid','access_token'],
  43. 'login'=> ['username','password'],
  44. 'mobile'=> ['mobile','code','scene'],
  45. 'modify'=> ['id'],
  46. 'sms'=> ['mobile','sms_type'],
  47. ];
  48. /**
  49. * 验证
  50. * @param $request
  51. * @param string $scene
  52. * @return int|mixed
  53. */
  54. public static function check($request, $scene=''){
  55. $validator = new BaseValidator(self::$rules, self::$msgs, self::$fields, self::$scenes);
  56. return $validator->checkParams($request, $scene);
  57. }
  58. }