예제 #1
0
 /// <summary>ToLevelSpread 实体转换</summary>
 public static LevelSpread ToLevelSpread(report_level_day model)
 {
     return(new LevelSpread()
     {
         id = model.id,
         stage1_count = model.stage1_count,
         stage2_count = model.stage2_count,
         stage3_count = model.stage3_count,
         stage4_count = model.stage4_count,
         stage5_count = model.stage5_count,
         stage6_count = model.stage6_count,
         stage7_count = model.stage7_count,
         stage8_count = model.stage8_count,
         total_count = model.total_count,
         percent1 = Math.Round((Convert.ToDouble(model.stage1_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent2 = Math.Round((Convert.ToDouble(model.stage2_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent3 = Math.Round((Convert.ToDouble(model.stage3_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent4 = Math.Round((Convert.ToDouble(model.stage4_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent5 = Math.Round((Convert.ToDouble(model.stage5_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent6 = Math.Round((Convert.ToDouble(model.stage6_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent7 = Math.Round((Convert.ToDouble(model.stage7_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         percent8 = Math.Round((Convert.ToDouble(model.stage8_count) / Convert.ToDouble(model.total_count)) * 100, 2),
         createtime = new DateTime(model.createtime).ToString("yyyy-MM-dd"),
     });
 }
예제 #2
0
        /// <summary>统计每日身份,等级信息</summary>
        private void SingleServerIdentityAndLevel(tgm_server model)
        {
            try
            {
                DisplayGlobal.log.Write("游戏服务器身份信息统计数据中...");
                report_identity_day.SetDbConnName(DBConnect.GetName(model));
                var identity = report_identity_day.GetFindByTime();

                if (identity == null)
                {
                    identity = new report_identity_day();
                }
                else
                {
                    identity.identity1_count = 0;
                    identity.identity2_count = 0;
                    identity.identity3_count = 0;
                    identity.identity4_count = 0;
                    identity.identity5_count = 0;
                    identity.identity6_count = 0;
                    identity.identity7_count = 0;
                }

                report_level_day.SetDbConnName(DBConnect.GetName(model));
                var levelRecord = report_level_day.GetFindByTime();
                if (levelRecord == null)
                {
                    levelRecord = new report_level_day();
                }
                else
                {
                    levelRecord.stage1_count = 0;
                    levelRecord.stage2_count = 0;
                    levelRecord.stage3_count = 0;
                    levelRecord.stage4_count = 0;
                    levelRecord.stage5_count = 0;
                    levelRecord.stage6_count = 0;
                    levelRecord.stage7_count = 0;
                    levelRecord.stage8_count = 0;
                }

                tg_role.SetDbConnName(DBConnect.GetName(model));
                var list = tg_role.GetAllMainRoles().ToList();
                if (!list.Any())
                {
                    return;
                }

                var count = list.Count;
                foreach (var item in list)
                {
                    var stage = FixedResources.BASE_IDENTITY.FirstOrDefault(m => m.id == item.role_identity);
                    if (stage == null)
                    {
                        continue;
                    }

                    switch (stage.value)
                    {
                    case 1: identity.identity1_count++; break;

                    case 2: identity.identity2_count++; break;

                    case 3: identity.identity3_count++; break;

                    case 4: identity.identity4_count++; break;

                    case 5: identity.identity5_count++; break;

                    case 6: identity.identity6_count++; break;

                    case 7: identity.identity7_count++; break;
                    }
                    var level = item.role_level;
                    if (level >= 1 && level <= 20)
                    {
                        levelRecord.stage1_count++;
                    }
                    if (level >= 21 && level <= 30)
                    {
                        levelRecord.stage2_count++;
                    }
                    if (level >= 31 && level <= 35)
                    {
                        levelRecord.stage3_count++;
                    }
                    if (level >= 36 && level <= 40)
                    {
                        levelRecord.stage4_count++;
                    }
                    if (level >= 41 && level <= 45)
                    {
                        levelRecord.stage5_count++;
                    }
                    if (level >= 46 && level <= 50)
                    {
                        levelRecord.stage6_count++;
                    }
                    if (level >= 51 && level <= 55)
                    {
                        levelRecord.stage7_count++;
                    }
                    if (level >= 56)
                    {
                        levelRecord.stage8_count++;
                    }
                }
                identity.createtime = DateTime.Now.Ticks;
                identity.Save();

                levelRecord.total_count = count;
                levelRecord.createtime  = DateTime.Now.Ticks;
                levelRecord.Save();
            }
            catch (Exception ex)
            {
                DisplayGlobal.log.Write("单服作业失败");
            }
        }