//查询本亲友圈所有排行榜信息
        public static async Task <List <RanKingPlayerInfo> > QueryRankingInfo(this FriendsCircleComponent friendsCircleComponent, int friendsCircleId)
        {
            List <RanKingPlayerInfo> ranKingPlayerInfos = await FriendsCircleComponent.Ins.dbProxyComponent.Query <RanKingPlayerInfo>(ranking => ranking.FriendsCircleId == friendsCircleId &&
                                                                                                                                      ranking.TotalNumber != 0);//局数是0的 不显示

            return(ranKingPlayerInfos);
        }
        //查询亲友圈申请列表
        public static async Task <ApplyFriendsCirleInfo> QueryFriendsCircleApply(this FriendsCircleComponent friendsCircleComponent, int friendsCircleId)
        {
            List <ApplyFriendsCirleInfo> applyFriendsCirleInfos = await friendsCircleComponent.dbProxyComponent.Query <ApplyFriendsCirleInfo>(
                friendsCircle => friendsCircle.FriendsCirleId == friendsCircleId);

            if (applyFriendsCirleInfos.Count > 0)
            {
                return(applyFriendsCirleInfos[0]);
            }
            return(ApplyFriendsCirleInfoFactory.Create(friendsCircleId));
        }
        //查询亲友圈信息
        public static async Task <FriendsCircle> QueryFriendsCircle(this FriendsCircleComponent friendsCircleComponent, int friendsCircleId)
        {
            List <FriendsCircle> friendsCircles = await friendsCircleComponent.dbProxyComponent.Query <FriendsCircle>(
                friendsCircle => friendsCircle.FriendsCircleId == friendsCircleId);

            if (friendsCircles.Count > 0)
            {
                return(friendsCircles[0]);
            }
            return(null);
        }
        //查询亲友圈成员列表
        public static async Task <FriendsCirleMemberInfo> QueryFriendsCircleMember(this FriendsCircleComponent friendsCircleComponent, int friendsCircleId)
        {
            List <FriendsCirleMemberInfo> friendsCircles = await friendsCircleComponent.dbProxyComponent.Query <FriendsCirleMemberInfo>(
                friendsCircle => friendsCircle.FriendsCircleId == friendsCircleId);

            if (friendsCircles.Count > 0)
            {
                return(friendsCircles[0]);
            }
            return(FriendsCirleMemberInfoFactory.Create(friendsCircleId));
        }
        //查询用户所在亲友圈信息
        public static async Task <UserInFriendsCircle> QueryUserInFriendsCircle(this FriendsCircleComponent friendsCircleComponent, long userId)
        {
            List <UserInFriendsCircle> userfriendsCircles = await friendsCircleComponent.dbProxyComponent.Query <UserInFriendsCircle>(
                userInfriendsCircle => userInfriendsCircle.UserId == userId);

            if (userfriendsCircles.Count > 0)
            {
                return(userfriendsCircles[0]);
            }
            return(UserInFriendsCircleFactory.Create(userId));
        }
Ejemplo n.º 6
0
 //修改推荐亲友圈配置
 public static void AlterRecommend(this FriendsCircleComponent friendsCircleComponent, FriendsCircle friendsCircle, bool isRecommend)
 {
     if (isRecommend)
     {
         if (!FriendsCircleComponent.Ins.RecommendFriendsCircleList.Contains(friendsCircle))
         {
             FriendsCircleComponent.Ins.RecommendFriendsCircleList.Add(friendsCircle);
         }
     }
     else
     {
         if (FriendsCircleComponent.Ins.RecommendFriendsCircleList.Contains(friendsCircle))
         {
             FriendsCircleComponent.Ins.RecommendFriendsCircleList.Remove(friendsCircle);
         }
     }
 }
Ejemplo n.º 7
0
 //获取推荐亲友圈信息
 public static async Task <List <FriendsCircle> > GetRecommendFriendsCircle(this FriendsCircleComponent friendsCircleComponent, int startIndex, int count)
 {
     if (friendsCircleComponent.RecommendFriendsCircleList.Count > startIndex + count)
     {
         return(friendsCircleComponent.RecommendFriendsCircleList.GetRange(startIndex, count));
     }
     else
     {
         if (friendsCircleComponent.RecommendFriendsCircleList.Count >= count)
         {
             return(friendsCircleComponent.RecommendFriendsCircleList.GetRange(friendsCircleComponent.RecommendFriendsCircleList.Count - count, count));
         }
         else
         {
             return(friendsCircleComponent.RecommendFriendsCircleList);
         }
     }
 }
Ejemplo n.º 8
0
        //创建亲友圈
        public static async Task <FriendsCircle> CreatorFriendsCircle(this FriendsCircleComponent friendsCircleComponent,
                                                                      long creatorUserId, string name, string announcement, RepeatedField <int> roomConfigs, long toyGameId, IResponse iResponse)
        {
            User creatorUser = await UserHelp.QueryUserInfo(creatorUserId);

            if (creatorUser.Jewel < 200)
            {
                iResponse.Message = "钻石少于200无法创建亲友圈";
                return(null);
            }
            //效验配置 如果配置错误 会使用默认配置
            if (!RoomConfigIntended.IntendedRoomConfigParameter(roomConfigs, toyGameId))
            {
                iResponse.Message = "玩法配置错误 无法创建";
                return(null);
            }
            FriendsCircle friendsCircle = FriendsCircleFactory.Create(name, creatorUserId, roomConfigs, announcement);
            await friendsCircle.SucceedJoinFriendsCircle(creatorUserId); //成功加入到亲友圈 这个方法和保存亲友圈数据到数据库

            return(friendsCircle);
        }
Ejemplo n.º 9
0
 //获得新创建的亲友圈Id
 public static int GetNewFriendsCircleId(this FriendsCircleComponent friendsCircleComponent)
 {
     return(++friendsCircleComponent.FriendsCircleMaxId);
 }
Ejemplo n.º 10
0
 //存储到数据库
 public static async Task SaveDB(this FriendsCircleComponent friendsCircleComponent, ComponentWithId component)
 {
     await friendsCircleComponent.dbProxyComponent.Save(component);
 }
Ejemplo n.º 11
0
 //玩家退出亲友圈
 public static async void UserOutFriendsCircle(this FriendsCircleComponent friendsCircleComponent, long userId, int friendsCircleId)
 {
     FriendsCircle friendsCircle = await friendsCircleComponent.QueryFriendsCircle(friendsCircleId);
 }