Enterprise.php 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <?php
  2. namespace app\common\validate;
  3. use think\Validate;
  4. use app\admin\model\Enterprise as EnterpriseModel;
  5. class Enterprise 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. 'type' => 'require',
  13. 'agencyType' => 'require',
  14. 'industryFieldNew' => 'require',
  15. 'enterpriseTag' => 'require',
  16. 'enterpriseType' => 'require',
  17. 'agentName' => 'require|regex:/^[\x{4e00}-\x{9fa5}]+$/u|max:30',
  18. 'agentPhone' => 'require|mobile',
  19. 'verificationCode' => 'require',
  20. 'legal' => 'require', //|regex:/^[\x{4e00}-\x{9fa5}]+$/u
  21. 'street' => 'require',
  22. 'address' => 'require',
  23. 'ephone' => 'require',
  24. 'agentEmail' => 'require|email',
  25. 'bankCard' => 'require',
  26. 'bank' => 'require|regex:/^[\x{4e00}-\x{9fa5}\(\)()\da-zA-Z&]{2,50}$/u',
  27. 'bankNetwork' => 'require|regex:/^[\x{4e00}-\x{9fa5}\(\)()\da-zA-Z&]{2,50}$/u'
  28. ];
  29. protected $message = [
  30. 'username.require' => '请填写账号!',
  31. 'username.max' => '账号最多50个字符!',
  32. 'username.unique' => '该账号已被注册',
  33. 'password.require' => '请填写密码!',
  34. 'password.min' => '密码最少长度8位',
  35. 'password.regex' => '密码应包含字母与数字两种字符',
  36. 're_password.require' => '请输入重复密码',
  37. 're_password.confirm' => '两次密码输入不一致',
  38. 'name.require' => '请输入单位名称',
  39. 'name.max' => '单位名称最多100个字符!',
  40. 'name.unique' => '该单位名称已存在',
  41. 'idCard.require' => '请填写统一社会信用代码!',
  42. 'idCard.regex' => '统一社会信用代码不正确!',
  43. 'idCard.unique' => '该统一社会信用代码已存在',
  44. 'type.require' => '申报类型必须选择',
  45. 'type.require' => '机构类型必须选择',
  46. 'industryFieldNew.require' => '产业领域必须选择',
  47. 'enterpriseTag.require' => '单位标签必须选择',
  48. 'enterpriseType.require' => '单位类型必须选择',
  49. 'agentName.require' => '请填写人才联络员',
  50. 'agentName.max' => '人才联络员最多30个字符',
  51. 'agentName.regex' => '人才联络员姓名只能是中文',
  52. 'agentPhone.require' => '请填写人才联络员手机号',
  53. "agentPhone.mobile" => "请填写正确的人才联络员手机号",
  54. 'verificationCode.require' => '请输入手机验证码',
  55. 'legal.require' => '请输入单位法人',
  56. //'legal.regex' => '法人姓名只能是中文',
  57. 'street.require' => '请选择所属镇(街道)',
  58. 'address.require' => '请输入单位地址',
  59. 'ephone.require' => '请输入单位电话',
  60. 'agentEmail|require' => '请输入邮箱',
  61. 'agentEmail.email' => '邮箱格式错误',
  62. 'bankCard.require' => '请输入企业银行账号',
  63. 'bank.require' => '请输入企业开户银行',
  64. 'bankNetwork.require' => '请输入企业开户银行网点',
  65. 'bank.regex' => '开户银行不正确,请检查',
  66. 'bankNetwork.regex' => '开户银行网点不正确,请检查'
  67. ];
  68. protected $scene = [
  69. 'add' => ['username', 'password', 're_password', 'name', 'idCard', 'type', 'agencyType', 'industryFieldNew', 'enterpriseTag', 'enterpriseType', 'agentName', 'agentPhone', 'verificationCode', 'legal', 'street', 'address', 'ephone', 'agentEmail', 'bankCard', 'bank', 'bankNetwork'],
  70. 'add2' => ['username', 'password', 're_password', 'name', 'idCard', 'type', 'enterpriseTag', 'enterpriseType', 'agentName', 'agentPhone', 'verificationCode', 'legal', 'street', 'address', 'ephone', 'agentEmail', 'bankCard', 'bank', 'bankNetwork'],
  71. 'change' => ['name', 'idCard', 'industryFieldNew', 'enterpriseTag', 'enterpriseType', 'agentName', 'agentPhone', 'legal', 'street', 'address', 'ephone', 'agentEmail', 'bankCard', 'bank', 'bankNetwork'],
  72. 'change2' => ['name', 'idCard', 'enterpriseTag', 'enterpriseType', 'agentName', 'agentPhone', 'legal', 'street', 'address', 'ephone', 'agentEmail', 'bankCard', 'bank', 'bankNetwork'],
  73. 'changePwd' => ['password'],
  74. 'check_common' => ['name', 'idCard', 'industryFieldNew', 'enterpriseTag', 'enterpriseType', 'agentName', 'legal', 'street', 'address', 'ephone', 'agentEmail', 'bankCard', 'bank', 'bankNetwork'],
  75. 'jc_add' => ['username', 'password', 're_password', 'name', 'idCard', 'type', 'agentName', 'agentPhone', 'verificationCode', 'legal', 'street', 'address', 'ephone', 'agentEmail'],
  76. 'sy_add' => ['username', 'password', 're_password', 'name', 'verificationCode', 'street', 'address', 'ephone', 'agentEmail'],
  77. 'sy_change' => ['name', 'agentName', 'agentPhone', 'street', 'address', 'ephone', 'agentEmail'],
  78. 'jc_change' => ['name', 'idCard', 'agentName', 'agentPhone', 'legal', 'street', 'address', 'ephone', 'agentEmail']
  79. ];
  80. protected function checkUserName($value, $rule, $data = []) {
  81. $info = EnterpriseModel::where('username', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  82. if ($info) {
  83. return "该账号已被注册";
  84. } else {
  85. return true;
  86. }
  87. }
  88. protected function checkName($value, $rule, $data = []) {
  89. $info = EnterpriseModel::where('name', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  90. if ($info) {
  91. return "机构名称已存在";
  92. } else {
  93. return true;
  94. }
  95. }
  96. protected function checkID($value, $rule, $data = []) {
  97. if (!preg_match("/^([0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\d{14})$/", $value)) {
  98. return "统一社会信用代码不正确";
  99. }
  100. $info = EnterpriseModel::where('idCard', $value)->where('delete', 0)->where('id', '<>', $data['id'])->find();
  101. if ($info) {
  102. return "该统一社会信用代码已存在";
  103. } else {
  104. return true;
  105. }
  106. }
  107. }