public ZhengBaSyncData LoadZhengBaSyncData(DateTime now, int selectRoleIfNewCreate, long dayBeginTicks) { ZhengBaSyncData syncData = new ZhengBaSyncData(); syncData.Month = ZhengBaUtils.MakeMonth(now); syncData.IsThisMonthInActivity = CheckThisMonthInActivity(now, dayBeginTicks); bool bMonthFirst = false; if (syncData.IsThisMonthInActivity) { bMonthFirst = CheckBuildZhengBaRank(selectRoleIfNewCreate, syncData.Month); syncData.RoleList = LoadZhengBaRankData(syncData.Month); syncData.SupportList = LoadZhengBaSupportData(syncData.Month); } else { bMonthFirst = false; syncData.RoleList = new List <ZhengBaRoleInfoData>(); syncData.SupportList = new List <ZhengBaSupportAnalysisData>(); } syncData.RoleModTime = now; syncData.SupportModTime = now; // 本月的参赛人数第一次创建到db中,那么广播公告和邮件通知 if (bMonthFirst && MonthRankFirstCreate != null) { MonthRankFirstCreate(selectRoleIfNewCreate); } return(syncData); }
public ZhengBaSyncData SyncZhengBaData(ZhengBaSyncData lastSyncData) { ZhengBaSyncData result = new ZhengBaSyncData(); lock (Mutex) { result.Month = SyncData.Month; result.RealActDay = SyncData.RealActDay; result.RoleModTime = SyncData.RoleModTime; result.SupportModTime = SyncData.SupportModTime; result.TodayIsPking = SyncData.TodayIsPking; result.IsThisMonthInActivity = SyncData.IsThisMonthInActivity; result.RankResultOfDay = SyncData.RankResultOfDay; result.CenterTime = TimeUtil.NowDateTime(); if (result.RoleModTime > lastSyncData.RoleModTime && SyncData.RoleList != null) { result.RoleList = new List <ZhengBaRoleInfoData>(SyncData.RoleList); } if (result.SupportModTime > lastSyncData.SupportModTime && SyncData.SupportList != null) { result.SupportList = new List <ZhengBaSupportAnalysisData>(SyncData.SupportList); } } return(result); }
public ZhengBaSyncData LoadZhengBaSyncData(DateTime now, int selectRoleIfNewCreate, long dayBeginTicks) { ZhengBaSyncData syncData = new ZhengBaSyncData(); syncData.Month = ZhengBaUtils.MakeMonth(now); syncData.IsThisMonthInActivity = this.CheckThisMonthInActivity(now, dayBeginTicks); bool bMonthFirst; if (syncData.IsThisMonthInActivity) { bMonthFirst = this.CheckBuildZhengBaRank(selectRoleIfNewCreate, syncData.Month); syncData.RoleList = this.LoadZhengBaRankData(syncData.Month); syncData.SupportList = this.LoadZhengBaSupportData(syncData.Month); } else { bMonthFirst = false; syncData.RoleList = new List <ZhengBaRoleInfoData>(); syncData.SupportList = new List <ZhengBaSupportAnalysisData>(); } syncData.LastKingData = this.LoadZhengBaKingData(ref syncData.LastKingModTime); syncData.RoleModTime = now; syncData.SupportModTime = now; if (bMonthFirst && this.MonthRankFirstCreate != null) { this.MonthRankFirstCreate(selectRoleIfNewCreate); } return(syncData); }
public ZhengBaSyncData GetZhengBaRankData(ZhengBaSyncData lastSyncData) { ITianTiService kuaFuService = GetKuaFuService(); if (null != kuaFuService) { try { return(kuaFuService.SyncZhengBaData(lastSyncData)); } catch (System.Exception ex) { ResetKuaFuService(); } } return(null); }
public void ReloadSyncData(DateTime now) { int selectRoleIfNewCreate = 100; ZhengBaMatchConfig matchConfig = this._Config.MatchConfigList.Find((ZhengBaMatchConfig _m) => _m.Day == 1); if (matchConfig.MinRank > 0) { selectRoleIfNewCreate = matchConfig.MinRank; } long dayBeginTicks = matchConfig.DayBeginTick; ZhengBaSyncData syncData = this.Persistence.LoadZhengBaSyncData(now, selectRoleIfNewCreate, dayBeginTicks); lock (this.Mutex) { this.SyncData = syncData; this.FixSyncData(now); } }
public void ReloadSyncData(DateTime now) { int selectRoleIfNewCreate = ZhengBaConsts.DefaultJoinRoleNum; long dayBeginTicks = 0; ZhengBaMatchConfig matchConfig = _Config.MatchConfigList.Find(_m => _m.Day == 1); if (matchConfig.MinRank > 0) { selectRoleIfNewCreate = matchConfig.MinRank; } dayBeginTicks = matchConfig.DayBeginTick; ZhengBaSyncData syncData = Persistence.LoadZhengBaSyncData(now, selectRoleIfNewCreate, dayBeginTicks); lock (Mutex) { SyncData = syncData; FixSyncData(now); } }
public ZhengBaSyncData SyncZhengBaData(ZhengBaSyncData lastSyncData) { return(ZhengBaManagerK.Instance().SyncZhengBaData(lastSyncData)); }