School.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace app\common\validate;
  3. use think\Validate;
  4. use app\admin\model\Enterprise as EnterpriseModel;
  5. class School extends Validate {
  6. protected $rule = [
  7. 'username' => 'require|max:50|unique:un_enterprise',
  8. 'password' => 'require|min:8|regex:/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,}$/',
  9. 're_password' => 'require|confirm:password',
  10. 'name' => 'require|max:100|checkName', //|regex:/^[\x{4e00}-\x{9fa5}\(\)()\da-zA-Z&]{2,50}$/u
  11. 'legal' => 'require', //|regex:/^[\x{4e00}-\x{9fa5}]+$/u
  12. 'ephone' => 'require',
  13. 'province' => 'require',
  14. 'city' => 'require',
  15. 'address' => 'require',
  16. 'agentName' => 'require|regex:/^[\x{4e00}-\x{9fa5}]+$/u|max:30',
  17. 'agentPhone' => 'require|mobile',
  18. 'verificationCode' => 'require',
  19. 'agentEmail' => 'require|email'
  20. ];
  21. protected $message = [
  22. 'username.require' => '请填写账号!',
  23. 'username.max' => '账号最多50个字符!',
  24. 'username.unique' => '该账号已被注册',
  25. 'password.require' => '请填写密码!',
  26. 'password.min' => '密码最少长度8位',
  27. 'password.regex' => '密码应包含字母与数字两种字符',
  28. 're_password.require' => '请输入重复密码',
  29. 're_password.confirm' => '两次密码输入不一致',
  30. 'name.require' => '请输入学校名称',
  31. 'name.max' => '学校名称最多100个字符!',
  32. 'legal.require' => '请输入学校法人',
  33. 'ephone.require' => '请输入学校电话',
  34. 'province.require' => '请选择学校所在省份',
  35. 'city.require' => '请选择学校所在市',
  36. 'address.require' => '请输入学校地址',
  37. 'agentName.require' => '请填写人才联络员',
  38. 'agentName.max' => '人才联络员最多30个字符',
  39. 'agentName.regex' => '人才联络员姓名只能是中文',
  40. 'agentPhone.require' => '请填写人才联络员手机号',
  41. "agentPhone.mobile" => "请填写正确的人才联络员手机号",
  42. 'verificationCode.require' => '请输入手机验证码',
  43. 'agentEmail|require' => '请输入邮箱',
  44. 'agentEmail.email' => '邮箱格式错误'
  45. ];
  46. protected $scene = [
  47. 'add' => ['username', 'password', 're_password', 'name', 'legal', 'ephone', 'province', 'city', 'address', 'agentName', 'agentPhone', 'verificationCode', 'agentEmail'],
  48. 'change' => ['name', 'legal', 'ephone', 'province', 'city', 'address', 'agentName', 'agentPhone', 'agentEmail'],
  49. 'changePwd' => ['password'],
  50. ];
  51. protected function checkName($value, $rule, $data = []) {
  52. $info = EnterpriseModel::where('name', $value)->where('active', 1)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  53. if ($info) {
  54. return "学校名称已存在";
  55. } else {
  56. return true;
  57. }
  58. }
  59. }