MasterWokerValidate.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace app\workerapi\validate;
  3. use app\common\enum\notice\NoticeEnum;
  4. use app\common\service\sms\SmsDriver;
  5. use app\common\validate\BaseValidate;
  6. /**
  7. * @author 林海涛
  8. * @date 2024/7/10 下午1:42
  9. */
  10. class MasterWokerValidate extends BaseValidate
  11. {
  12. protected $rule = [
  13. 'mobile' => 'require|mobile',
  14. 'code' => 'require|checkCode',
  15. 'password' => 'require|length:6,20|alphaNum',
  16. 'password_confirm' => 'require|confirm',
  17. ];
  18. protected $message = [
  19. 'mobile.require' => '请输入手机号',
  20. 'mobile.mobile' => '请输入正确手机号',
  21. 'code.require' => '请填写验证码',
  22. 'password.require' => '请输入密码',
  23. 'password.length' => '密码须在6-25位之间',
  24. 'password.alphaNum' => '密码须为字母数字组合',
  25. 'password_confirm.require' => '请确认密码',
  26. 'password_confirm.confirm' => '两次输入的密码不一致'
  27. ];
  28. public function checkCode($code, $rule, $data)
  29. {
  30. $smsDriver = new SmsDriver();
  31. $result = $smsDriver->verify($data['mobile'], $code, NoticeEnum::CHANGE_MOBILE_CAPTCHA);
  32. if ($result) {
  33. return true;
  34. }
  35. return true;
  36. //return '验证码错误';
  37. }
  38. public function sceneChangeMobile(){
  39. return $this->only(['mobile', 'code']);
  40. }
  41. public function sceneChangePassword()
  42. {
  43. return $this->only(['password', 'password_confirm']);
  44. }
  45. }