void GetDailycupData(DailycupFullDataEntity dailycupData, Guid managerId, int beginRound, int endRound) { try { List <DailycupMatchEntity> matchlist = DailycupMatchMgr.GetMatchByRound(dailycupData.DailycupId, beginRound, endRound); var manager = ManagerCore.Instance.GetManager(managerId); var gambleCountMax = CacheFactory.VipdicCache.GetEffectValue(manager.VipLevel, EnumVipEffect.DailycupGambleCount); //BuffPlusHelper.DailycupGambleCount(ref gambleCountMax); dailycupData.GambleCountMax = gambleCountMax; dailycupData.MyGambleData = DailycupGambleMgr.GetMyGamebleData(dailycupData.DailycupId, managerId); if (dailycupData.MyGambleData != null) { foreach (var entity in dailycupData.MyGambleData) { entity.TimeTick = ShareUtil.GetTimeTick(entity.RowTime); } } foreach (var entity in matchlist) { entity.RoundType = CalRoundType(entity.Round, beginRound); } dailycupData.Matchs = matchlist; } catch (Exception ex) { SystemlogMgr.Error("doGetDailycupData", ex); } }
DailycupFullDataResponse GetDailycupDataToday(Guid managerId, DailycupInfoEntity dailycup, DateTime curTime) { DailycupFullDataEntity dailycupData = new DailycupFullDataEntity(); dailycupData.DailycupId = dailycup.Idx; dailycupData.HasNext = true; dailycupData.AttendState = GetAttendState(managerId) ? 1 : 0; if (dailycup.Status > (int)EnumDailycupStatus.Close) { //计算开始回合 int beginRound = BeginRound(dailycup.Round); int endRound = NowShowRound(beginRound, dailycup.Round, curTime); dailycupData.RoundType = CalRoundType(endRound, beginRound); if (endRound >= beginRound) { GetDailycupData(dailycupData, managerId, beginRound, endRound); //最新轮时间 DateTime cTime = NowRoundEndTime(dailycup.Round, endRound); if (curTime < cTime) //最新轮比分是否隐藏 { int maxCount = 0; bool hasGambleRight = CheckGambleCount(dailycupData.MyGambleData.Count, managerId, out maxCount); foreach (DailycupMatchEntity match in dailycupData.Matchs) { if (match.Round == endRound) { match.HomeScore = -1; match.AwayScore = -1; if (dailycupData.MyGambleData.Exists(gamble => gamble.MatchId == match.Idx)) { match.Status = (int)EnumDailycupMatchStatus.HasGamble; } else { if (hasGambleRight) { match.Status = (int)EnumDailycupMatchStatus.Gamble; } else { match.Status = (int)EnumDailycupMatchStatus.NoGambel; } } } } } } } var response = ResponseHelper.CreateSuccess <DailycupFullDataResponse>(); response.Data = dailycupData; return(response); }
/// <summary> /// Gets the full dailycup data by day. /// </summary> /// <param name="managerId">The manager.</param> /// <param name="dailycupId">The daily.</param> /// <returns></returns> /// <remarks> /// </remarks> /// <history> /// </history> public DailycupFullDataResponse GetDailycupData(Guid managerId, int dailycupId, DateTime curTime) { try { DailycupInfoEntity dailycup = null; if (dailycupId == 0) { dailycup = DailycupInfoMgr.GetByDate(DateTime.Today); if (dailycup == null) { return(ResponseHelper.Create <DailycupFullDataResponse>(MessageCode.DailycupNotExists)); } } else { dailycup = DailycupInfoMgr.GetById(dailycupId); } if (dailycup == null) { return(ResponseHelper.InvalidParameter <DailycupFullDataResponse>()); } if (dailycup.RunDate == DateTime.Today) //判断是否是当日杯赛,今天的杯赛是昨天创建 { return(GetDailycupDataToday(managerId, dailycup, curTime)); } else { //计算开始回合 int beginRound = BeginRound(dailycup.Round); int endRound = dailycup.Round; DailycupFullDataEntity dailycupData = new DailycupFullDataEntity(); dailycupData.DailycupId = dailycup.Idx; GetDailycupData(dailycupData, managerId, beginRound, endRound); foreach (DailycupMatchEntity match in dailycupData.Matchs) { match.Status = (int)EnumDailycupMatchStatus.ShowScore; } dailycupData.RoundType = CalRoundType(endRound, beginRound); dailycupData.HasNext = dailycup.RunDate < DateTime.Today.AddDays(1); dailycupData.AttendState = GetAttendState(managerId) ? 1 : 0; var response = ResponseHelper.CreateSuccess <DailycupFullDataResponse>(); response.Data = dailycupData; return(response); } } catch (Exception ex) { SystemlogMgr.Error("GetDailycupData", ex); return(ResponseHelper.Create <DailycupFullDataResponse>(MessageCode.Exception)); } }