|  |  |  | 
|---|
|  |  |  | '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' => '重置密码验证码'), | 
|---|
|  |  |  | ) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 用户注册 | 
|---|
|  |  |  | * @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{ | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 用户登录 | 
|---|
|  |  |  | * @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($reslt == 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|