From 64689425ccf235d8f971bba4dffab9f13f89045d Mon Sep 17 00:00:00 2001 From: colly <576734462@qq.com> Date: Tue, 01 Aug 2017 16:55:12 +0800 Subject: [PATCH] 短信接口调整合并,忘记密码 --- Yfs/Domain/Data.php | 2 + Yfs/Api/User.php | 30 ++++++++++++++ Config/app.php | 3 + Yfs/Domain/User.php | 23 +++++++++++ Library/Alidayu/Config/app.php | 3 + Yfs/Api/Send.php | 55 +++++++++++++++++---------- 6 files changed, 92 insertions(+), 24 deletions(-) diff --git a/Config/app.php b/Config/app.php index 8e7cb02..61aa257 100644 --- a/Config/app.php +++ b/Config/app.php @@ -31,7 +31,8 @@ //������������ 'templates' => array( - 'register' => 'SMS_71216225' + 'register' => 'SMS_71216225', + 'resetPwd' => 'SMS_71216225' ), 'app_key' => '23531128', 'secretkey' => 'b079269785183c5a7520da9b8047bb42' diff --git a/Library/Alidayu/Config/app.php b/Library/Alidayu/Config/app.php index 02db954..1a858ab 100644 --- a/Library/Alidayu/Config/app.php +++ b/Library/Alidayu/Config/app.php @@ -10,7 +10,8 @@ //������������ 'templates' => array( - 'register' => '71245307' + 'register' => '71245307', + 'resetPwd' => '71245307' ) ) ); \ No newline at end of file diff --git a/Yfs/Api/Send.php b/Yfs/Api/Send.php index 8f0caaf..b60e178 100644 --- a/Yfs/Api/Send.php +++ b/Yfs/Api/Send.php @@ -17,51 +17,64 @@ */ public function getRules(){ return array( - 'register_sms' => array( + 'sms' => array( 'phone' => array( 'name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '���������������' + ), + 'type' => array( + 'name' => 'type', + 'type' => 'string', + 'require' => true, + 'desc' => '������������������' ) - ) + ), ); } /** - * ������������ + * ������������������ * @desc ������������������ * @return bool code ������������0��������������� 1������������ * @return string msg ������������ */ - public function register_sms(){ + public function sms(){ $rs = array('code' => 0, 'msg' => ''); $sms_service = new Domain_SmsCode(); - $scene = 'register'; - if($sms_service->check($this->phone, $scene)){ - $code = Common_Util::random(6, 1); - $send_json_data = json_encode(array('mobile_validate' => $code)); - if($this->alidayu->send($this->phone, $send_json_data, $scene)){ - $data = array(); - $time = time(); - $data['phone'] = $this->phone; - $data['code'] = $code; - $data['create_time'] = date('Y-m-d H:i:s', $time); - $data['expire_time'] = date('Y-m-d H:i:s', $time + 60); - $data['scene'] = $scene; - $data['status'] = 0; - $sms_service->add($data); - $rs['msg'] = '������������'; + $promit_scene = array('register', 'resetPwd'); + if(in_array($this->type, $promit_scene)){ + $scene = $this->type; + if($sms_service->check($this->phone, $scene)){ + $code = Common_Util::random(6, 1); + $send_json_data = json_encode(array('mobile_validate' => $code)); + if($this->alidayu->send($this->phone, $send_json_data, $scene)){ + $data = array(); + $time = time(); + $data['phone'] = $this->phone; + $data['code'] = $code; + $data['create_time'] = date('Y-m-d H:i:s', $time); + $data['expire_time'] = date('Y-m-d H:i:s', $time + 60); + $data['scene'] = $scene; + $data['status'] = 0; + $sms_service->add($data); + $rs['msg'] = '������������'; + } + else{ + $rs['code'] = 1; + $rs['msg'] = '������������'; + } } else{ $rs['code'] = 1; - $rs['msg'] = '������������'; + $rs['msg'] = '������������������������,������������60���'; } } else{ $rs['code'] = 1; - $rs['msg'] = '������������������������,������������60���'; + $rs['msg'] = '���������������������'; } return $rs; diff --git a/Yfs/Api/User.php b/Yfs/Api/User.php index 1422596..285c600 100644 --- a/Yfs/Api/User.php +++ b/Yfs/Api/User.php @@ -19,6 +19,10 @@ 'getUserInfo' => array( 'phone' => array('name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '������������'), ), + 'resetPwd' => array( + 'phone' => array('name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '������������'), + 'password' => array('name' => 'password', 'type' => 'string', 'require' => true, 'desc' => '������'), + ) ); } @@ -117,7 +121,6 @@ */ public function getUserInfo(){ $rs = array('code' => 0, 'msg' => '', 'info' => array()); - $user_service = new Domain_User(); $user = $user_service->getUserInfoByPhone($this->phone); @@ -134,4 +137,29 @@ return $rs; } + /** + * ������������ + * @desc ������������ + * @return bool code ������������0��������������� 1������������ + * @return string msg ������������ + */ + public function resetPwd(){ + $rs = array('code' => 0, 'msg' => ''); + $user_service = new Domain_User(); + $result = $user_service->resetPwd($this->phone, $this->password); + if($reslt == 0){ + $rs['msg'] = '������������������'; + } + elseif($result == 1){ + $rs['code'] = 1; + $rs['msg'] = '���������������������������'; + } + else{ + $rs['code'] = 1; + $rs['msg'] = '������������������'; + } + + return $rs; + } + } diff --git a/Yfs/Domain/Data.php b/Yfs/Domain/Data.php index 1a39944..c5851ec 100644 --- a/Yfs/Domain/Data.php +++ b/Yfs/Domain/Data.php @@ -32,4 +32,6 @@ } + + } diff --git a/Yfs/Domain/User.php b/Yfs/Domain/User.php index b682d32..00bca82 100644 --- a/Yfs/Domain/User.php +++ b/Yfs/Domain/User.php @@ -70,4 +70,27 @@ } } + /** + * ������������ + * @param [type] $phone [description] + * @param [type] $newPwd [description] + * @return [type] [description] + */ + public function resetPwd($phone, $newPwd){ + $user = $this->getUserInfoByPhone($phone); + if($user && $user['is_lock'] == 0){ + $data['password'] = md5(md5($newPwd).$user['encrypt']); + $result = $this->model->update($data, array('_id' => $user['_id'])); + if($result){ + return 0; + } + else{ + return 2; + } + } + else{ + return 1; + } + } + } -- Gitblit v1.8.0