From 3fffc1da75d49f832b9faf3467d91202e0220a3b Mon Sep 17 00:00:00 2001 From: colly_wyx <wangyixiong_007@163.com> Date: Thu, 26 Apr 2018 15:02:06 +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