School.php 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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|checkUserName',
  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. 'idCard' => 'require|checkID',
  12. 'legal' => 'require', //|regex:/^[\x{4e00}-\x{9fa5}]+$/u
  13. 'ephone' => 'require',
  14. 'province' => 'require',
  15. 'city' => 'require',
  16. 'address' => 'require',
  17. 'agentName' => 'require|regex:/^[\x{4e00}-\x{9fa5}]+$/u|max:30',
  18. 'agentPhone' => 'require|mobile',
  19. 'verificationCode' => 'require',
  20. 'agentEmail' => 'require|email'
  21. ];
  22. protected $message = [
  23. 'username.require' => '请填写账号!',
  24. 'username.max' => '账号最多50个字符!',
  25. 'username.unique' => '该账号已被注册',
  26. 'password.require' => '请填写密码!',
  27. 'password.min' => '密码最少长度8位',
  28. 'password.regex' => '密码应包含字母与数字两种字符',
  29. 're_password.require' => '请输入重复密码',
  30. 're_password.confirm' => '两次密码输入不一致',
  31. 'name.require' => '请输入学校名称',
  32. 'name.max' => '学校名称最多100个字符!',
  33. 'idCard.require' => '请填写统一社会信用代码!',
  34. 'legal.require' => '请输入学校法人',
  35. 'ephone.require' => '请输入学校电话',
  36. 'province.require' => '请选择学校所在省份',
  37. 'city.require' => '请选择学校所在市',
  38. 'address.require' => '请输入学校地址',
  39. 'agentName.require' => '请填写人才联络员',
  40. 'agentName.max' => '人才联络员最多30个字符',
  41. 'agentName.regex' => '人才联络员姓名只能是中文',
  42. 'agentPhone.require' => '请填写人才联络员手机号',
  43. "agentPhone.mobile" => "请填写正确的人才联络员手机号",
  44. 'verificationCode.require' => '请输入手机验证码',
  45. 'agentEmail|require' => '请输入邮箱',
  46. 'agentEmail.email' => '邮箱格式错误'
  47. ];
  48. protected $scene = [
  49. 'add' => ['username', 'password', 're_password', 'name', 'idCard', 'legal', 'ephone', 'province', 'city', 'address', 'agentName', 'agentPhone', 'verificationCode', 'agentEmail'],
  50. 'change' => ['name', 'idCard', 'legal', 'ephone', 'province', 'city', 'address', 'agentName', 'agentPhone', 'agentEmail'],
  51. 'changePwd' => ['password'],
  52. ];
  53. protected function checkUserName($value, $rule, $data = []) {
  54. $info = EnterpriseModel::where('username', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  55. if ($info) {
  56. return "该账号已被注册";
  57. } else {
  58. return true;
  59. }
  60. }
  61. protected function checkName($value, $rule, $data = []) {
  62. $info = EnterpriseModel::where('name', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  63. if ($info) {
  64. return "学校名称已存在";
  65. } else {
  66. return true;
  67. }
  68. }
  69. protected function checkID($value, $rule, $data = []) {
  70. $info = EnterpriseModel::where('idCard', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  71. if ($info) {
  72. return "该登记号已存在";
  73. } else {
  74. return true;
  75. }
  76. }
  77. }