/// <summary> /// 搜索群组 /// </summary> /// <param name="gameId"></param> /// <param name="platFormId"></param> /// <param name="gameserverid"></param> /// <param name="gName"></param> /// <param name="pageNo"></param> /// <param name="pageSize"></param> /// <returns></returns> public GroupInfo SearchGroup(int gameId = 0, int platFormId = 0, int gameserverid = 0, string gName = "", int pageNo = 1, int pageSize = 20) { var list = this.GroupInforRepository.Where(p => p.gameId == gameId); if (platFormId != 0) { list = list.Where(p => p.platFormId == platFormId); } if (gameserverid != 0) { list = list.Where(p => p.gameserverid == gameserverid); } if (!string.IsNullOrEmpty(gName)) { list = list.Where(p => p.gName.IndexOf(gName) >= 0); } var count = list.Count(); list = list.OrderByDescending(t => t.points).Skip((pageNo - 1) * pageSize).Take(pageSize); GroupInfo _GroupInfo = new GroupInfo(); _GroupInfo.Group_Infor = list; _GroupInfo.count = count; _GroupInfo.pageNo = pageNo; _GroupInfo.pageSize = pageSize; return _GroupInfo; }
public GroupInfo getGroupInfo(int gid) { if (gid <= 0) return null; var info = GroupInforRepository.Get(gid); if (info == null) return null; int Ranking = GroupInforRepository.Where(t => t.points > info.points).Count() + 1; var iGameId = 0; if (info.gameId.HasValue) iGameId = (int)info.gameId; //var game_name = kt_gamesRepository.Where(t => t.gameId == (info.gameId.HasValue==true?0:1)).First(); var game_name = kt_gamesRepository.First(t => t.gameId == iGameId); var iflatId = 0; if (info.platFormId.HasValue) iflatId = (int)info.platFormId; var plat_name = kt_service_platform.First(t => t.platform_id == iflatId); //var platserver_name = kt_service_game.First(t => t.service_game_id == iflatId); //var plat_name = kt_service_platform.First(t => t.platform_id == platserver_name.platform_id); var iserviceId = 0; if (info.gameserverid.HasValue) iserviceId = (int)info.gameserverid; var server_name = kt_game_server.First(t => t.game_server_id == iserviceId); var minfo = GroupMemberRepository.Where(x => x.gId == gid && x.uType == 1); string groupusername = ""; if (minfo != null) { groupusername = minfo.First().GroupUserName; } var GroupInfo = new GroupInfo() { gId = gid, uId = info.uId, gName = info.gName, memberNum = info.memberNum, postNum = info.postNum, points = info.points, account = info.account, notice = info.notice, gPic = info.gPic, gameId = info.gameId, platFormId = info.platFormId, gameserverid = info.gameserverid, viewPerm = info.viewPerm, createDate = info.createDate, vistUrl = info.vistUrl, ranking = Ranking, joinPerm = info.joinPerm, GroupUserName = groupusername, isChatRoom=info.isChatRoom }; if (game_name != null) GroupInfo.game_name = game_name.game_name; if (plat_name != null) GroupInfo.plat_name = plat_name.platform_name; if (server_name != null) GroupInfo.gameserver_name = server_name.server_name; return GroupInfo; }