/** * 我的账户信息 * @param string $user_id * @return array|int */ public function account($user_id) { if (!is_numeric($user_id)) { return ErrorConstant::USER_ID_ERROR; } $user = UserModel::findOne($user_id); if ($user === null) { return ErrorConstant::USER_NOT_EXISTS; } $_userInfo = $user->toArray(['icon_url', 'nick_name']); //用户积分 $_userInfo['score'] = 999; //是否有未读消息 $_userInfo['unreadMessagee'] = true; return $_userInfo; }
/** * 获取用户邀请码信息 * * @param $user_id * @return array|int */ public function invitationCode($user_id) { if (!is_numeric($user_id)) { return ErrorConstant::USER_ID_ERROR; } $user = UserModel::findOne($user_id); if ($user === null) { return ErrorConstant::USER_NOT_EXISTS; } $_userInfo = $user->toArray(['icon_url', 'nick_name', 'name']); $_invitationCode = $this->getInvitationCode($user_id); if (is_array($_invitationCode)) { $_userInfo['invitationCode'] = $_invitationCode; } else { return $_invitationCode; } return $_userInfo; }
/** * 找回密码 * @param string $mobile * @param string $password * @param string $code * @return bool|int */ public function forgetPassword($mobile, $password, $code) { //校验手机号是否已经注册 $user = UserModel::findOne(['mobile' => $mobile]); if ($user === null) { return ErrorConstant::MOBILE_NOT_REGISTER; } //校验密码 if (($_isRight = $this->checkPass($password)) !== true) { return $_isRight; } //校验验证码 $_isRight = \common\services\VerifyCodeService::getService()->checkCode($mobile, $code); if ($_isRight !== true) { return $_isRight; } //跟新密码 $user->password = $password; if ($user->update()) { $this->OnAfterFindPassword(); return true; } return ErrorConstant::FORGET_PASSWORD_FAIED; }
/** * 解除好友关系 * @param $user_id * @param $friend_id * @return int */ public function releaseFriend($user_id, $friend_id) { if (!is_numeric($user_id) || !is_numeric($friend_id)) { return ErrorConstant::PARAM_ERROR; } if (UserModel::findOne($friend_id === null)) { return ErrorConstant::USER_NOT_EXISTS; } //判断是已经是好友关系 $_relation = FriendModel::isFriend($user_id, $friend_id); if ($_relation === false) { return ErrorConstant::FRIEND_NOT_EXISTS; } switch ($_relation->status) { case FriendModel::RELATION_STATUS_IN_HAND: return ErrorConstant::FRIEND_IN_HAND; default: break; } $_relation->status = FriendModel::RELATION_STATUS_RELEASE; $_relation->release_time = \common\helpers\DateHelper::now(); $_relation->deleted = FriendModel::IS_DELETED; if ($_relation->update() === false) { return ErrorConstant::RELEASE_FRIEND_FAILED; } $this->triggerFriendEvent(self::AFTER_RELEASE_FRIEND, $user_id, $friend_id); return true; }