public HttpResponseMessage AllFightList([FromBody] RankParameterModel rank) { FightLogic fightLogic = new FightLogic(); jsonResult = fightLogic.AllFightList(rank); returnResult.Content = new StringContent(jsonResult, Encoding.UTF8, "application/json"); return(returnResult); }
public HttpResponseMessage TeamRank([FromBody] RankParameterModel rank) { RankLogic rankLogic = new RankLogic(); jsonResult = rankLogic.TeamRank(rank); returnResult.Content = new StringContent(jsonResult, Encoding.UTF8, "application/json"); return(returnResult); }
public string AllFightList(RankParameterModel rank) { string result = ""; MessageModel message = new MessageModel(); List <FightStateModel> fightStateList = new List <FightStateModel>(); JavaScriptSerializer jss = new JavaScriptSerializer(); HashSet <object> returnResult = new HashSet <object>(); //获取约战平台约战记录的当前状态 //个人排行:昵称,签名,氦气,战斗力,大神系数 using (HiGame_V1Entities context = new HiGame_V1Entities()) { //联合查询 var sql = "SELECT" + " t1.DateID,t1.STeamID,t1.ETeamID,t1.Money,t1.FightAddress,t1.CurrentState," + " t2.StateTime,t3.TeamName as STeamName,t4.TeamName as ETeamName" + " FROM" + " db_DateFight t1 join db_FightState t2" + " ON t1.DateID = t2.DateID and t1.CurrentState = t2.State" + " LEFT JOIN db_Team t3" + " ON t1.STeamID = t3.TeamID" + " LEFT JOIN db_Team t4" + " ON t1.ETeamID = t4.TeamID ORDER BY t2.StateTime DESC"; var fightStateDetailList = context.Database.SqlQuery <FightStateDetailModel>(sql) .Skip((rank.StartPage - 1) * rank.PageCount) .Take(rank.PageCount).ToList(); if (fightStateDetailList == null) { //无游戏数据 message.Message = MESSAGE.NOGAMEDATA; message.MessageCode = MESSAGE.NOGAMEDATA_CODE; } else { foreach (FightStateDetailModel fight in fightStateDetailList) { //拼接返回字段信息 FightStateModel fightState = new FightStateModel(); fightState.FightAsset = fight.Money; fightState.FightTime = Common.DateDiff(fight.StateTime, DateTime.Now); fightState.Description = Fight.FightState(fight); fightStateList.Add(fightState); } message.Message = MESSAGE.OK; message.MessageCode = MESSAGE.OK_CODE; } returnResult.Add(message); returnResult.Add(fightStateList); } result = jss.Serialize(returnResult); return(result); }
public string UserRank(RankParameterModel rank) { string result = ""; MessageModel message = new MessageModel(); JavaScriptSerializer jss = new JavaScriptSerializer(); HashSet <object> returnResult = new HashSet <object>(); //个人排行:昵称,签名,氦气,战斗力,大神系数 using (HiGame_V1Entities context = new HiGame_V1Entities()) { //联合查询 string sql; if (rank.RankType == "Asset") { sql = "select" + " t1.UserID as UserID," + " t1.Address as Address," + " t1.Sex as Sex," + " CONVERT(varchar(100), t1.RegisterDate, 20) as RegDate," + " t1.UserWebNickName as NickName," + " t1.UserWebPicture as UserPicture," + " t1.Hobby," + " t2.GameID," + " t3.GamePower," + " t3.GameGrade," + " (CASE WHEN(select sum(t4.VirtualMoney) from" + " db_AssetRecord t4 where t4.UserID = t1.UserID) IS NULL THEN 0 ELSE (select sum(t4.VirtualMoney) from" + " db_AssetRecord t4 where t4.UserID = t1.UserID) END) as Asset" + " from db_User t1 left join" + " db_GameIDofUser t2 on t1.UserID = t2.UserID" + " left join db_GameInfoofPlatform t3" + " on t2.UGID = t3.UGID" + " where t2.GameType = 'DOTA2'" + " order by " + rank.RankType + " " + rank.RankSort + ",t1.RegisterDate "; } else { sql = "select" + " t1.UserID as UserID," + " t1.Address as Address," + " t1.Sex as Sex," + " CONVERT(varchar(100), t1.RegisterDate, 20) as RegDate," + " t1.UserWebNickName as NickName," + " t1.UserWebPicture as UserPicture," + " t1.Hobby," + " t2.GameID," + " t3.GamePower," + " t3.GameGrade," + " (CASE WHEN(select sum(t4.VirtualMoney) from" + " db_AssetRecord t4 where t4.UserID = t1.UserID) IS NULL THEN 0 ELSE (select sum(t4.VirtualMoney) from" + " db_AssetRecord t4 where t4.UserID = t1.UserID) END) as Asset" + " from db_User t1 left join" + " db_GameIDofUser t2 on t1.UserID = t2.UserID" + " left join db_GameInfoofPlatform t3" + " on t2.UGID = t3.UGID" + " where t2.GameType = 'DOTA2'" + " order by cast(" + rank.RankType + " as int) " + " " + rank.RankSort + ",t1.RegisterDate "; } var userRank = context.Database.SqlQuery <UserRankModel>(sql) .Skip((rank.StartPage - 1) * rank.PageCount) .Take(rank.PageCount).ToList(); if (userRank == null) { //无游戏数据 message.Message = MESSAGE.NOGAMEDATA; message.MessageCode = MESSAGE.NOGAMEDATA_CODE; } else { //循环user,添加擅长英雄图标 for (int i = 0; i < userRank.Count; i++) { //擅长英雄 userRank[i].HeroImage = User.GetHeroImgeByUserID(userRank[i].UserID); } message.Message = MESSAGE.OK; message.MessageCode = MESSAGE.OK_CODE; } returnResult.Add(message); returnResult.Add(userRank); } result = jss.Serialize(returnResult); return(result); }
public string TeamRank(RankParameterModel rank) { string result = ""; MessageModel message = new MessageModel(); JavaScriptSerializer jss = new JavaScriptSerializer(); HashSet <object> returnResult = new HashSet <object>(); //团队排行:战队名称,战斗力,氦气,热度 using (HiGame_V1Entities context = new HiGame_V1Entities()) { var sql = "SELECT" + " t.TeamID," + " t.TeamName," + " t.TeamDescription," + " t.TeamPicture," + " (CASE WHEN t.WinCount IS NULL THEN 0 ELSE t.WinCount END) as WinCount," + " (CASE WHEN t.LoseCount IS NULL THEN 0 ELSE t.LoseCount END) as LoseCount," + " (CASE WHEN t.FollowCount IS NULL THEN 0 ELSE t.FollowCount END) as FollowCount," + " CONVERT(varchar(100), t.CreateTime, 20) as CreateTime," + " t3.Content as RecruitContent," + " t.CreateUserID," + " t2.UserWebPicture as CreateUserLogo," + " (CASE WHEN t.FightScore IS NULL THEN 0 ELSE t.FightScore END) as FightScore," + " (CASE WHEN t.Asset IS NULL THEN 0 ELSE t.Asset END) as Asset," + " (" + " ((CASE WHEN t.WinCount IS NULL THEN 0 ELSE t.WinCount END)" + " +(CASE WHEN t.LoseCount IS NULL THEN 0 ELSE t.LoseCount END)" + " +(CASE WHEN t.FollowCount IS NULL THEN 0 ELSE t.FollowCount END))*10" + " + (CASE WHEN t.WinCount IS NULL THEN 0 ELSE t.WinCount END)*10 +" + " (CASE WHEN t.FightScore IS NULL THEN 0 ELSE t.FightScore END)+" + " (CASE WHEN t.Asset IS NULL THEN 0 ELSE t.Asset END))/ 3 as HotScore" + " FROM db_Team t" + " LEFT JOIN db_User t2 ON t.CreateUserID=t2.UserID" + " LEFT JOIN db_Recruit t3 ON t.TeamID=t3.TeamID" + " WHERE t.State = 0" + " ORDER BY " + rank.RankType + " " + rank.RankSort + ", t.SysTime"; var teamRank = context.Database.SqlQuery <TeamRankModel>(sql) .Skip((rank.StartPage - 1) * rank.PageCount) .Take(rank.PageCount).ToList(); if (teamRank == null) { //无游戏数据 message.Message = MESSAGE.NOGAMEDATA; message.MessageCode = MESSAGE.NOGAMEDATA_CODE; } else { //循环team,添加战队成员图标 for (int i = 0; i < teamRank.Count; i++) { //战队成员图标 teamRank[i].UserImage = Team.GetTeamUserByUserID(teamRank[i].TeamID); } message.Message = MESSAGE.OK; message.MessageCode = MESSAGE.OK_CODE; } returnResult.Add(message); returnResult.Add(teamRank); } result = jss.Serialize(returnResult); return(result); }