SmsController.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. /**
  3. * 短信
  4. * @author wesmiler
  5. */
  6. namespace app\api\controller;
  7. use app\weixin\model\Member;
  8. use app\weixin\service\Sms;
  9. use app\weixin\validate\MemberValidate;
  10. use cmf\controller\HomeBaseController;
  11. class SmsController extends HomeBaseController
  12. {
  13. /**
  14. * 发送短信验证码
  15. * @return mixed
  16. */
  17. public function sendCode()
  18. {
  19. // 参数验证
  20. $mobile = input('mobile', '');
  21. $scene = input('scene', 'code');
  22. $userId = input('id', 0);
  23. $validate = new MemberValidate();
  24. if(!$validate->scene('code')->check(input())){
  25. showJson(1004, $validate->getError());
  26. }
  27. // 场景验证
  28. switch ($scene) {
  29. case 'code': // 完善信息注册
  30. case 'reg': // 账号注册
  31. $id = Member::where(['mobile' => $mobile])->where('user_status','>=',0)->value('id');
  32. if ($id && $id != $userId) {
  33. showJson(1004, 2001);
  34. }
  35. if($id && $id == $userId){
  36. showJson(1004, 2000);
  37. }
  38. break;
  39. case 'marketReg': // 分销账号注册
  40. $id = Member::where(['user_login' => $mobile,'agent_type'=> 1])->where('agent_status','>=',0)->value('id');
  41. if ($id && $id != $userId) {
  42. showJson(1004, 2001);
  43. }
  44. if($id && $id == $userId){
  45. showJson(1004, 2000);
  46. }
  47. break;
  48. case 'login': // 登录
  49. case 'fpwd': // 找回密码
  50. case 'mpwd': // 修改密码
  51. if (!Member::where(['mobile' => $mobile])->value('id')) {
  52. showJson(1004, 2013);
  53. }
  54. break;
  55. }
  56. // 发送处理
  57. $result = Sms::sendCode($mobile, ['tpName' => 'code'], $scene);
  58. if (!is_array($result)) {
  59. showJson(1004, is_numeric($result) ? $result : 1009);
  60. }
  61. showJson(1005, 2016);
  62. }
  63. }
  64. ?>