From f716003ce965eddf14c9cf0470708ec9bf4a9a45 Mon Sep 17 00:00:00 2001
From: colly_wyx <wangyixiong_007@163.com>
Date: Wed, 18 Apr 2018 09:14:55 +0800
Subject: [PATCH] 修正参数错误

---
 Yfs/Api/User.php |  243 +++++++++++++++++++++++++++++++++++-------------
 1 files changed, 176 insertions(+), 67 deletions(-)

diff --git a/Yfs/Api/User.php b/Yfs/Api/User.php
index aa9054b..1871228 100644
--- a/Yfs/Api/User.php
+++ b/Yfs/Api/User.php
@@ -10,38 +10,71 @@
             'register' => array(
                 'phone' => array('name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '������������'),
                 'password' => array('name' => 'password', 'type' => 'string', 'require' => true, 'desc' => '������'),
+                'code' => array('name' => 'code', 'type' => 'string', 'require' => true, 'desc' => '���������������'),
             ),
-            'getBaseInfo' => array(
-                'userId' => array('name' => 'user_id', 'type' => 'int', 'min' => 1, 'require' => true, 'desc' => '������ID'),
+            'login' => array(
+                'phone' => array('name' => 'phone', 'type' => 'string', 'require' => true, 'desc' => '������������'),
+                'password' => array('name' => 'password', 'type' => 'string', 'require' => true, 'desc' => '������'),
             ),
-            'getMultiBaseInfo' => array(
-                'userIds' => array('name' => 'user_ids', 'type' => 'array', 'format' => 'explode', 'require' => true, 'desc' => '������ID������������������������'),
+            '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' => '������'),
+                'code' => array('name' => 'code', 'type' => 'string', 'require' => true, 'desc' => '���������������������'),
+            ),
+            'updateUserInfo' => array(
+                'user_id' => array('name' => 'user_id', 'type' => 'string', 'require' => true, 'desc' => '������id'),
+                'field' => array('name' => 'field', 'type' => 'string', 'require' => true, 'desc' => '������������'),
+                'value' => array('name' => 'value', 'type' => 'string', 'require' => true, 'desc' => '������'),
+            )
         );
     }
 
-
+    /**
+     * ������������
+     * @desc ������������������
+     * @return bool code ������������0��������������������� 1������������
+     * @return string msg ������������
+     */
     public function register(){
-        $rs = array('code' => 0, 'msg' => '', 'info' => array());
-        $userService = new Domain_User();
-        if($userService->checkPhone($this->phone)){
-            $data['phone'] = $this->phone;
-            $data['encrypt'] = Common_Util::random(8);
-            $data['password'] = md5(md5($this->password).$data['encrypt']);
-            $data['nickname'] = $this->phone;
-            $data['refresh'] = 5;
-            $data['is_open_upload'] = 1;
-            $data['video'] = 1;
-            $data['create_time'] = date('Y-m-d H:i:s');
-            $data['edit_time'] = $data['create_time'];
-            $data['is_lock'] = 0;
-            $data['role'] = '596f23ab9e74bb85388b4567';
-            if($userService->register($data)){              
-                $rs['msg'] = '������������������';
+        $rs = array('code' => 0, 'msg' => '');
+        $user_service = new Domain_User();
+        if($user_service->checkPhone($this->phone)){
+            $sms_service = new Domain_SmsCode();
+            $result = $sms_service->checkSmsCode($this->phone, $this->code, 'register');
+            if($result == 0){
+                $data['phone'] = $this->phone;
+                $data['encrypt'] = Common_Util::random(8);
+                $data['password'] = md5(md5($this->password).$data['encrypt']);
+                $data['nickname'] = $this->phone;
+                $data['refresh_frequency'] = 5;
+                $data['is_open_upload'] = 1;
+                $data['video'] = 1;
+                $data['create_time'] = date('Y-m-d H:i:s');
+                $data['edit_time'] = $data['create_time'];
+                $data['is_lock'] = 0;
+                $data['role'] = '596f23ab9e74bb85388b4567';
+                if($user_service->register($data)){        
+                    $rs['msg'] = '������������������';
+                }
+                else{
+                    $rs['code'] = 1;
+                    $rs['msg'] = '������������'; 
+                }
+            }
+            elseif($result == 1){
+                $rs['code'] = 1;
+                $rs['msg'] = '������������������������������������������������������������������������';
+            }
+            elseif($result == 2){
+                $rs['code'] = 1;
+                $rs['msg'] = '���������������������';
             }
             else{
                 $rs['code'] = 1;
-                $rs['msg'] = '������������'; 
+                $rs['msg'] = '������������������,������������������������';
             }
         }
         else{
@@ -52,64 +85,140 @@
     }
 
     /**
+     * ������������
+     * @desc ������������������������
+     * @return bool code ������������0��������������������� 1������������������
+     * @return string msg ������������
+     */
+    public function login(){
+        $rs = array('code' => 0, 'msg' => '', 'info' => array());
+        $user_service = new Domain_User();
+        if(!$user_service->checkPhone($this->phone) && $user_service->checkUserStatus($this->phone)){
+            if($user_service->login($this->phone, $this->password)){
+                $rs['msg'] = '������������������';
+                $rs['info'] = $user_service->getUserInfoByPhone($this->phone);
+            }
+            else{
+                $rs['code'] = 1;
+                $rs['msg'] = '������������������������������������'; 
+            }
+        }
+        else{
+            $rs['code'] = 1;
+            $rs['msg'] = '������������������������������������';
+        }
+        return $rs;
+    }
+
+    /**
      * ������������������
-     * @return [type] [description]
+     * @desc ������������������������
+     * @return bool code ������������0��������������� 1������������
+     * @return string msg ������������
+     * @return object info ������������������
+     * @return string info._id ������id
+     * @return string info.phone ������������
+     * @return string info.encypt ���������
+     * @return string info.password ������
+     * @return string info.nickname ������������
+     * @return string info.refresh_frequency ������������
+     * @return string info.is_open_upload ������������������
+     * @return string info.is_lock ������������������0������������������1������������
      */
     public function getUserInfo(){
-
-    }
-
-    /**
-     * ������������������������
-     * @desc ������������������������������������
-     * @return int code ������������0��������������� 1���������������������
-     * @return object info ������������������
-     * @return int info.id ������ID
-     * @return string info.name ������������
-     * @return string info.note ������������
-     * @return string msg ������������
-     */
-    public function getBaseInfo() {
         $rs = array('code' => 0, 'msg' => '', 'info' => array());
+        $user_service = new Domain_User();
+        $user = $user_service->getUserInfoByPhone($this->phone);
 
-        $domain = new Domain_User();
-        $info = $domain->getBaseInfo($this->userId);
-
-        if (empty($info)) {
-            DI()->logger->debug('user not found', $this->userId);
-
-            $rs['code'] = 1;
-            $rs['msg'] = T('user not exists');
-            return $rs;
+        if ($user) {
+            $rs['code'] = 0;
+            $rs['msg'] = '������������������������';
+            $rs['info'] = $user;
         }
-
-        $rs['info'] = $info;
+        else{
+            $rs['code'] = 1;
+            $rs['msg'] = '���������������������';
+        }
 
         return $rs;
     }
 
     /**
-     * ������������������������������
-     * @desc ������������������������������������
-     * @return int code ������������0������������
-     * @return array list ������������
-     * @return int list[].id ������ID
-     * @return string list[].name ������������
-     * @return string list[].note ������������
-     * @return string msg ������������
-     * @exception 400 ������������������
-     * @exception 500 ���������������������
+     * ������������
+     * @desc ������������
+     * @return bool code ������������0��������������� 1������������
+     * @return string msg ������������
      */
-    public function getMultiBaseInfo() {
-        $rs = array('code' => 0, 'msg' => '', 'list' => array());
-
-        $domain = new Domain_User();
-        foreach ($this->userIds as $userId) {
-            $rs['list'][] = $domain->getBaseInfo($userId);
-
-            DI()->tracer->mark('FINISH_GET_INFO');
+    public function resetPwd(){
+        $rs = array('code' => 0, 'msg' => ''); 
+        $sms_service = new Domain_SmsCode();
+        $result = $sms_service->checkSmsCode($this->phone, $this->code, 'resetPwd');
+        if($result == 0){
+            $user_service = new Domain_User();
+            $result = $user_service->resetPwd($this->phone, $this->password);
+            if($result == 0){
+                $rs['msg'] = '������������������';
+            }
+            elseif($result == 1){
+                $rs['code'] = 1;
+                $rs['msg'] = '���������������������������';
+            }
+            else{
+                $rs['code'] = 1;
+                $rs['msg'] = '������������������';
+            }
+        } 
+        elseif($result == 1){
+            $rs['code'] = 1;
+            $rs['msg'] = '������������������������������������������������������������������������';
         }
-
+        elseif($result == 2){
+            $rs['code'] = 1;
+            $rs['msg'] = '���������������������';
+        }
+        else{
+            $rs['code'] = 1;
+            $rs['msg'] = '������������������,������������������������';
+        }
         return $rs;
     }
+
+    /**
+     * ������������������
+     * @desc ������������������
+     * @return string user_id ������id
+     * @return string field ������������������������������������['refresh_frequency', 'video', 'is_open_upload']
+     * @return string value ������
+     */
+    public function updateUserInfo(){
+        $rs = array('code' => 0, 'msg' => ''); 
+        $promit_field = array('refresh_frequency', 'video', 'is_open_upload');
+        if(in_array($this->field, $promit_field)){
+            $user_service = new Domain_User();
+            $data[$this->field] = $this->value;
+            $data['_id'] = $this->user_id;
+            $result = $user_service->updateUserInfo($data);
+            if($result == 0){
+                $rs['msg'] = '������������������������';
+            }
+            elseif($result == 1){
+                $rs['code'] = 1;
+                $rs['msg'] = '������������������������';
+            }
+            elseif($result == 2){
+                $rs['code'] = 1;
+                $rs['msg'] = '���������������������������������������';
+            }
+            else{
+                $rs['code'] = 1;
+                $rs['msg'] = '������id������������';
+            }
+        }
+        else{
+            $rs['code'] = 1;
+            $rs['msg'] = '���������������������';
+        }
+        return $rs;
+    }
+
 }

--
Gitblit v1.8.0