public static ApplyFriendsCirleInfo Create(int friendsCirleId) { ApplyFriendsCirleInfo applyFriendsCirleInfo = ComponentFactory.Create <ApplyFriendsCirleInfo>(); applyFriendsCirleInfo.FriendsCirleId = friendsCirleId; return(applyFriendsCirleInfo); }
protected override async void Run(Session session, C2F_GetFriendsCircleApplyJoinList message, Action <F2C_GetFriendsCircleApplyJoinList> reply) { F2C_GetFriendsCircleApplyJoinList response = new F2C_GetFriendsCircleApplyJoinList(); try { ApplyFriendsCirleInfo applyFriendsCirleInfo = await FriendsCircleComponent.Ins.QueryFriendsCircleApply(message.FriendsCrircleId); response.ApplyJoinUserIdList = applyFriendsCirleInfo.ApplyList; reply(response); } catch (Exception e) { ReplyError(response, e, reply); } }
//处理申请加入亲友圈 public static async Task DisposeApplyResult(this FriendsCircle friendsCircle, long applyUserId, bool isConsent, IResponse iResponse) { ApplyFriendsCirleInfo applyFriendsCirleInfo = await FriendsCircleComponent.Ins.QueryFriendsCircleApply(friendsCircle.FriendsCircleId); if (!applyFriendsCirleInfo.ApplyList.Contains(applyUserId)) { iResponse.Message = "该玩家不在申请列表里面 或被其他管理处理"; return; } applyFriendsCirleInfo.ApplyList.Remove(applyUserId); await FriendsCircleComponent.Ins.SaveDB(applyFriendsCirleInfo); if (isConsent) { await friendsCircle.SucceedJoinFriendsCircle(applyUserId);//成功加入亲友圈 } }
//申请加入亲友圈 public static async Task ApplyJoinFriendsCircle(this FriendsCircle friendsCircle, long userId, IResponse iResponse) { FriendsCirleMemberInfo memberInfo = await FriendsCircleComponent.Ins.QueryFriendsCircleMember(friendsCircle.FriendsCircleId); if (memberInfo.MemberList.Contains(userId)) { iResponse.Message = "你已经在该亲友圈中"; return; } ApplyFriendsCirleInfo applyFriendsCirleInfo = await FriendsCircleComponent.Ins.QueryFriendsCircleApply(friendsCircle.FriendsCircleId); if (applyFriendsCirleInfo.ApplyList.Contains(userId)) { iResponse.Message = "已经在申请列表中"; return; } applyFriendsCirleInfo.ApplyList.Add(userId); await FriendsCircleComponent.Ins.SaveDB(applyFriendsCirleInfo); }