123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using SCC.Models;
- using SCC.Common;
- using SCC.Interface;
- using SCC.Services;
- namespace SCC.Crawler.DT
- {
- /// <summary>
- /// 地方彩生成走势图的帮助类
- /// </summary>
- public static class TrendChartHelper
- {
- /// <summary>
- /// 生成东方6+1走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateFCDF6J1TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var DF6J1 = ConfigHelper.GetConfigValue<int>("DF6J1");
- var configList = helper.GetTrendChartConfig(DF6J1);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = DF6J1;
- }
- var dbItemList = service.GetDF6J1ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCDF6J1Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCDF6J1Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.DF6J1TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成东方6+1走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成东方6+1走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成华东15选5走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateHD15X5TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var HD15X5 = ConfigHelper.GetConfigValue<int>("HD15X5");
- var configList = helper.GetTrendChartConfig(HD15X5);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = HD15X5;
- }
- var dbItemList = service.GetHD15X5ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCHD15X5Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCHD15X5Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.HD15X5TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成华东15选5走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成华东15选5走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成河南22选5走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateHN22X5TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var HeNan22X5 = ConfigHelper.GetConfigValue<int>("HeNan22X5");
- var configList = helper.GetTrendChartConfig(HeNan22X5);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = HeNan22X5;
- }
- var dbItemList = service.GetHN22X5ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCHN22X5Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCHN22X5Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.HeNan22X5TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成河南22选5走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成河南22选5走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成广东36选7走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateGD36X7TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var NY36X7 = ConfigHelper.GetConfigValue<int>("NY36X7");
- var configList = helper.GetTrendChartConfig(NY36X7);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = NY36X7;
- }
- var dbItemList = service.GetGD36X7ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCNY36X7Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCNY36X7Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.GD36X7TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成广东36选7走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成广东36选7走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成湖北30选5走势图
- /// </summary>
- public static void GenerateHuBei30X5TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var HUB30X5 = ConfigHelper.GetConfigValue<int>("HUB30X5");
- var configList = helper.GetTrendChartConfig(HUB30X5);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = HUB30X5;
- }
- var dbItemList = service.GetHuBei30X5ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCHB30X5Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCHB30X5Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.HuBei30X5TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成湖北30选5走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成湖北30选5走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成新疆35选7走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateXJ35X7TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var XJ35X7 = ConfigHelper.GetConfigValue<int>("XJ35X7");
- var configList = helper.GetTrendChartConfig(XJ35X7);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = XJ35X7;
- }
- var dbItemList = service.GetXJ35X7ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCXJ35X7Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCXJ35X7Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.XJ35X7TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成新疆35选7走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成新疆35选7走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成江苏体彩七位数走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateJSTC7WSTrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var JS7WS = ConfigHelper.GetConfigValue<int>("JS7WS");
- var configList = helper.GetTrendChartConfig(JS7WS);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = JS7WS;
- }
- var dbItemList = service.GetJS7WSListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<TCJS7WSInfo>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- TCJS7WSInfo info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.JSTC7WSTrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成江苏体彩七位数走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成江苏体彩七位数走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成浙江体彩6+1走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateZJTC6J1TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var ZJ6J1 = ConfigHelper.GetConfigValue<int>("ZJ6J1");
- var configList = helper.GetTrendChartConfig(ZJ6J1);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = ZJ6J1;
- }
- var dbItemList = service.GetZJ6J1ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<TCZJ6J1Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- TCZJ6J1Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.ZJTC6J1TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成浙江体彩6+1走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成浙江体彩6+1走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成福建36选7走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateFJ36X7TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var FJ36X7 = ConfigHelper.GetConfigValue<int>("FJ36X7");
- var configList = helper.GetTrendChartConfig(FJ36X7);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = FJ36X7;
- }
- var dbItemList = service.GetFJ36X7ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<TCFJ36X7Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- TCFJ36X7Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.FJ36X7TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成福建36选7走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成福建36选7走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成福建31选7走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateFJ31X7TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var FJ31X7 = ConfigHelper.GetConfigValue<int>("FJ31X7");
- var configList = helper.GetTrendChartConfig(FJ31X7);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = FJ31X7;
- }
- var dbItemList = service.GetFJ31X7ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<TCFJ31X7Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- TCFJ31X7Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.FJ31X7TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成福建31选7走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成福建31选7走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- /// <summary>
- /// 生成广东好彩1走势图
- /// </summary>
- /// <param name="Log">日志实例</param>
- public static void GenerateGDHC1TrendChart(LogHelper Log)
- {
- ITrendChart helper = new TrendChartServices();
- IDTOpenCode service = new DTOpenCodeServices();
- var GDHC1 = ConfigHelper.GetConfigValue<int>("GDHC1");
- var configList = helper.GetTrendChartConfig(GDHC1);
- if (configList.Count == 0)
- {
- Console.WriteLine("未找到有效走势图信息");
- return;
- }
- var trendChartItemList = helper.GetTrendChartItem(configList.Select(c => c.Id).ToList());
- foreach (var itemInfo in trendChartItemList)
- {
- itemInfo.Cid = GDHC1;
- }
- var dbItemList = service.GetGDHC1ListOpenCode();
- if (dbItemList.Count == 0)
- {
- Console.WriteLine("未找到有效开奖数据");
- return;
- }
- var chartCssConfigs = helper.GetChartCssConfigs();
- List<TrendChartData> trendChartDataList = new List<TrendChartData>();
- foreach (var config in configList)//基本走势图,和值走势图,手机版
- {
- var chartId = config.Id;
- var trendChartItems = trendChartItemList.Where(S => S.ChartId == chartId).OrderBy(S => S.OrderBy).ToList();
- if (trendChartItems.Count == 0)
- {
- Console.WriteLine("未找到该走势图的显示项信息");
- return;
- }
- Console.WriteLine(string.Format("------生成{0}------", config.Name));
- var chartItems = new TrendChartItemHelper<FCGDHC1Info>().InitTrendChartItem(chartCssConfigs, trendChartItems);
- var count = trendChartItems.Count;
- //var j = 0;
- TrendChartData entity = null;
- var ResultEntity = new TrendChartData
- {
- ChartId = chartId,
- Term = 0,
- ChartType = TrendChartType.PC,
- LocalMiss = new string[count],
- LastMiss = new string[count],
- AllMaxMiss = new string[count],
- AllAvgMiss = new string[count],
- AllTimes = new string[count]
- };
- foreach (var dbItem in dbItemList)
- {
- var twoInfoList = dbItemList.Where(R => R.Term <= dbItem.Term).OrderByDescending(O => O.Term).Take(2).ToList();
- FCGDHC1Info info = null;
- info = twoInfoList[0];
- if (twoInfoList.Count == 2)
- {
- entity = ResultEntity;//变量存储上一个走势图数据
- //if(j==0)
- // entity
- }
- bool yes = true;
- var sb = new StringBuilder(20000);
- sb.Append("<tr>");
- for (var i = 0; i < count; i++)
- {
- chartItems[i].InitMissData(entity, i);
- //计算项值及遗漏计算
- yes = yes && chartItems[i].SetItemValue(info);
- if (yes)
- {
- //结果集赋值
- ResultEntity.LocalMiss[i] = chartItems[i].GetMissData(MissDataType.LocalMiss);
- ResultEntity.LastMiss[i] = chartItems[i].GetMissData(MissDataType.LastMiss);
- ResultEntity.AllMaxMiss[i] = chartItems[i].GetMissData(MissDataType.AllMaxMiss);
- ResultEntity.AllAvgMiss[i] = chartItems[i].GetMissData(MissDataType.AllAvgMiss);
- ResultEntity.AllTimes[i] = chartItems[i].GetMissData(MissDataType.AllTimes);
- sb.Append(chartItems[i].GetFomartString("<td {0}>{1}</td>"));
- }
- }
- sb.Append("</tr>");
- if (null != entity)
- ResultEntity.RecordCount = entity.RecordCount + 1;
- else
- ResultEntity.RecordCount = 1;
- ResultEntity.Term = dbItem.Term;
- ResultEntity.HtmlData = sb.ToString();
- Console.WriteLine(string.Format("为{0}期开奖数据生成{1}成功", dbItem.Term, config.Name));
- trendChartDataList.Add(new TrendChartData()
- {
- Id = ResultEntity.Id,
- ChartId = ResultEntity.ChartId,
- Term = ResultEntity.Term,
- AllMaxMiss = ResultEntity.AllMaxMiss.Clone() as string[],
- AllTimes = ResultEntity.AllTimes.Clone() as string[],
- RecordCount = ResultEntity.RecordCount,
- AllAvgMiss = ResultEntity.AllAvgMiss.Clone() as string[],
- LastMiss = ResultEntity.LastMiss.Clone() as string[],
- LocalMiss = ResultEntity.LocalMiss.Clone() as string[],
- HtmlData = ResultEntity.HtmlData,
- ChartType = ResultEntity.ChartType,
- Addtime = ResultEntity.Addtime
- });
- }
- Console.WriteLine();
- }
- if (helper.SaveTrendChartList(SCCLottery.GDHC1TrendChart, trendChartDataList))
- Log.Info(typeof(TrendChartHelper), "------<<生成广东好彩1走势图数据成功!>>------");
- else
- {
- Console.ForegroundColor = ConsoleColor.Red;
- Console.WriteLine("------<<生成广东好彩1走势图数据失败!>>------");
- Console.ResetColor();
- }
- Console.WriteLine();
- Console.WriteLine();
- }
- }
- }
|