|
|
@@ -69,4 +69,52 @@ class Sms extends BaseModel
|
|
|
}
|
|
|
return $flag;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 短信发送
|
|
|
+ */
|
|
|
+ public function sendCodeWx($mobile)
|
|
|
+ {
|
|
|
+ if (empty($mobile)) {
|
|
|
+ $this->error = '手机号码或会员号不能为空';
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ $smsConfig = SettingModel::getItem('sms', self::$app_id);
|
|
|
+ $template_code = $smsConfig['engine'][$smsConfig['default']];
|
|
|
+
|
|
|
+ // 判断会员号如果是手机号,则查询是否有有此会员号
|
|
|
+ $pattern = '/^1\d{10}$/';
|
|
|
+ if (!preg_match($pattern, $mobile)) {
|
|
|
+ $where = [['user_no', '=', $mobile]];
|
|
|
+ $user = (new User)->where($where)->find();
|
|
|
+ if (empty($user)) {
|
|
|
+ $this->error = '手机号码或会员号错误';
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ $mobile = $user['mobile'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $send_template = $template_code['template_code'];
|
|
|
+ if (empty($send_template)) {
|
|
|
+ $this->error = '短信登录未开启';
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ $code = str_pad(mt_rand(100000, 999999), 6, "0", STR_PAD_BOTH);
|
|
|
+ $SmsDriver = new SmsDriver($smsConfig);
|
|
|
+ $send_data = [
|
|
|
+ 'code' => $code
|
|
|
+ ];
|
|
|
+ //短信模板
|
|
|
+ $flag = $SmsDriver->sendSms($mobile, $send_template, $send_data);
|
|
|
+ if ($flag) {
|
|
|
+ $this->save([
|
|
|
+ 'mobile' => $mobile,
|
|
|
+ 'code' => $code,
|
|
|
+ 'app_id' => self::$app_id
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ return $flag;
|
|
|
+ }
|
|
|
}
|