Exemplo n.º 1
0
 /**
  * API:添加好友
  *
  * @access public
  * @param 无
  * @return JsonView 响应json
  */
 public function exeAddFriend()
 {
     $requestParam = $this->getAllParameters();
     Logger::debug('requestParam:' . print_r($requestParam, true));
     $requestJsonParam = $this->getDecodedJsonRequest();
     Logger::debug('requestJsonParam:' . print_r($requestJsonParam, true));
     $user_id = $requestParam['user_id'];
     $session_key = $requestParam['session_key'];
     $friend_id = $requestJsonParam['friend_id'];
     if ($user_id == $friend_id) {
         $messageArr['error'] = "不能添加自己为好友!";
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "friend/add_friend");
     }
     //最大好友数判断
     $friendNum = FriendModel::getFriendNum($user_id);
     if ($friendNum >= Constants::MAX_FRIEND_NUM) {
         $messageArr['error'] = "好友数已达上限!";
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "friend/add_friend");
     }
     //是否已申请添加,
     $isAdd = FriendModel::isAddFriend($user_id, $friend_id);
     if ($isAdd) {
         $messageArr['error'] = "已在申请列表中!";
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "friend/add_friend");
     }
     $res = FriendModel::insertMail(array('n_send_id' => $user_id, 'n_receive_id' => $friend_id, 'n_type' => 1, 't_update_time' => date("Y-m-d H:i:s"), 't_create_time' => date("Y-m-d H:i:s")));
     if (!$res) {
         throw new Exception("insert false");
     }
     $messageArr['friendInfo'] = FriendAction::exeGetFriendMenu($user_id);
     $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
     $view = new JsonView();
     return $this->getViewByJson($view, $messageArr, 1, "friend/add_friend");
 }