/**
   * 邀请好友
   *
   * @param args
   */
  @RPCReponse("e_invitation")
  public void invitation(LogicRequest args) {
    Long uid; // 用户id
    Long rid; // 房间id
    List<String> list; // 好友id列表
    List<String> onlinelist = new ArrayList<String>();
    try {
      InvitationOp op = ObjectBeanUtil.JACKSON.readValue(args.getData(), InvitationOp.class);
      if (op != null) {
        uid = op.getUid();
        rid = op.getRid();
        list = op.getList();
        String uName = "";
        String roomName = "";
        UserFundDetails uinfo = LobbyUserHelper.getUserInfo(uid);
        uName = uinfo.getNn();
        Rooms r = LocalCache.ROOMS.get(rid.toString());
        if (r != null) {
          roomName = r.getRn();
        }
        InvitationsRoomVo iRV =
            new InvitationsRoomVo(
                Definition.INVITATIONS, Definition.SUCCESS_CODE, rid, roomName, uid, uName);
        System.out.println(list);
        if (list != null && list.size() > 0) {
          Iterator itr = list.iterator();
          while (itr.hasNext()) {
            Long otherId = Long.valueOf(itr.next().toString());
            if (LobbyUserHelper.isLobby(otherId)) { // 大厅中存在该用户

              // 建立消息通道

              onlinelist.add(otherId.toString());

              // 存储消息邮件
              UserMessageHelper.Message message = new UserMessageHelper.Message();
              message.setTitle("牌局邀请");
              message.setContent(iRV.toString());
              message.setType(MessageManager.Type.INT.getValue());
              message.setSubtype(MessageManager.Subtype.interaction.getValue());
              UserMessageHelper.insertUserMessage(otherId, message);

              // MessageSendUtil.sendAddUserMsgTipToUser(otherId);//更新TOP菜单栏消息提示
              LobbyUserHelper.sendMsgTips(uid);
            }
          }

          LogicChannelUtil.sendToTargets(iRV, onlinelist);
        }
      }
    } catch (Exception e) {
      LOGGER.error("", e);
      e.printStackTrace();
    }
  }