Example #1
0
        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);
        }
Example #2
0
        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);
        }
Example #3
0
        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);
        }
Example #4
0
        public ZhengBaSyncData GetZhengBaRankData(ZhengBaSyncData lastSyncData)
        {
            ITianTiService kuaFuService = GetKuaFuService();

            if (null != kuaFuService)
            {
                try
                {
                    return(kuaFuService.SyncZhengBaData(lastSyncData));
                }
                catch (System.Exception ex)
                {
                    ResetKuaFuService();
                }
            }

            return(null);
        }
Example #5
0
        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);
            }
        }
Example #6
0
        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);
            }
        }
Example #7
0
 public ZhengBaSyncData SyncZhengBaData(ZhengBaSyncData lastSyncData)
 {
     return(ZhengBaManagerK.Instance().SyncZhengBaData(lastSyncData));
 }