Hospital.php 3.2 KB

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