12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using CB.Entity;
- using CB.Common;
- using CB.Framework;
- using System.Text;
- using CB.Data;
- using CB.TrendChart.LotteryTrendChart;
- using System.Text.RegularExpressions;
- using CB.Entity.Frequency;
- using CB.TrendChart.FrequencyTrendChart;
- namespace CB.Wap.zs
- {
- public partial class list : WebPage
- {
- protected string hTitle = "", hDescription = "", hKeywords = "";
- protected string chartData = "", chartName = "";
- protected int hcid = 0;
- //彩种相关
- protected string lotName = "", lotLogoCsss = "";
- protected string ShowMenu = "", HideMenu = "", years = "";
- protected string navStr = "";
- protected string pcUrl = "http://www.55128.cn/zs/{0}_{1}.htm";
- protected string first = "0", endqi = "0";
- protected string searchYearHTML = "";
- //当前日期
- protected DateTime SearchTime = DateTime.Today;
- //选择期数
- protected int Record = 50;
- /// <summary>
- /// 设置弹出框内容
- /// </summary>
- protected string Setting = @"<div class=""bg-black"">
- <div class=""search-box"">
- <h1>走势图设置</h1>
- <dl class=""search-link"">
- <dt><span>期数</span></dt>
- <dd>
- <a href=""?record=50"" class=""select"">近50期</a><a href=""?record=80"">近80期</a>
- <a href=""?record=100"">近100期</a><a href=""?record=200"">近200期</a>
- </dd>
- </dl>
- <dl class=""ctl-box"">
- <dt><span class=""ctl-title"">功能</span></dt>
- <dd class=""ctl-list"">
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_foldLine"" id=""ctl_foldLine1"" checked=""checked"" autocomplete=""off"" /><label for=""ctl_foldLine1"">折线</label></span>
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_miss"" id=""ctl_miss1"" autocomplete=""off"" /><label for=""ctl_miss1"">不带遗漏</label></span>
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_sliceMiss"" id=""ctl_sliceMiss1"" autocomplete=""off"" /><label for=""ctl_sliceMiss1"">遗漏分层</label></span>
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_repeat"" id=""ctl_repeat1"" autocomplete=""off"" /><label for=""ctl_repeat1"">重号</label></span>
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_near"" id=""ctl_near1"" autocomplete=""off"" /><label for=""ctl_near1"">邻号</label></span>
- <span class=""ctl-item""><input type=""checkbox"" name=""ctl_jump"" id=""ctl_jump1"" autocomplete=""off"" /><label for=""ctl_jump1"">跳号</label></span>
- </dd>
- </dl>
- <dl class=""sear"">
- <dt><span>搜索</span></dt>
- <dd><select class=""mSelectBox"" onchange=""if(this.value.length==5){window.location=window.location.href.split('?')[0]+'?year='+this.value.substr(0,4);}"">
- <option class=""mSelect"" selected=""selected"">按年份</option>
- <option><a href=""?year=2016"">2016年</a></option><option><a href=""?year=2015"">2015年</a></option><option><a href=""?year=2014"">2014年</a></option><option><a href=""?year=2013"">2013年</a></option><option><a href=""?year=2012"">2012年</a></option><option><a href=""?year=2011"">2011年</a></option><option><a href=""?year=2010"">2010年</a></option><option><a href=""?year=2009"">2009年</a></option><option><a href=""?year=2008"">2008年</a></option><option><a href=""?year=2007"">2007年</a></option><option><a href=""?year=2006"">2006年</a></option><option><a href=""?year=2005"">2005年</a></option><option><a href=""?year=2004"">2004年</a></option><option><a href=""?year=2003"">2003年</a></option>
- </select>
- </dd>
- <dd>
- <input id=""startTerm"" name=""startTerm"" type=""text"" value=""2016015"" onfocus=""this.value='';"" onkeyup=""this.value=this.value.replace(/[^0-9]/g,'')"" /><span>至</span><input id=""endTerm"" name=""endTerm"" type=""text"" value=""2016044"" onfocus=""this.value='';"" onkeyup=""this.value=this.value.replace(/[^0-9]/g,'')"" /><span>期</span>
- </dd>
- </dl>
- </div>
- <div class=""sec-btn"">
- <input type=""button"" class=""cancel"" value=""取消""/>
- <input type=""submit"" class=""searchs"" value=""确定""/>
- </div>
- </div>";
- /// <summary>
- /// 高频彩种特殊处理
- /// </summary>
- protected bool HighFrequency = false;
- protected void Page_Load(object sender, EventArgs e)
- {
- try
- {
- InitData();
- }
- catch (Exception ex) {
- var url = Request.Url.ToString();
- CB.TrendTool.LogHelper.WriteLog(url + " => " + ex.ToString(), TrendTool.ExceptionType.ExceptionLog, true);
- }
- header1.ColumnName = lotName;
- }
- private void DealChartDataWithRazor(List<TrendChartData> list, int chartId, TrendChartInfo entity, LotteryInfo lottery, TrendChartSearchField chartSearch)
- {
- //if (null == list || 0 >= list.Count)
- // return;
- //modified by zizi,at 2016-5-18
- //create viewbag
- var viewbag = new Dictionary<string, object>();
- var isUseRazorTemplate = true;
- Setting = "";
- var rlist = CB.Data.Caches.GetTrendChartList(entity.Cid, entity.Tid, 0);
- var zr = new StringBuilder(rlist.Count * 100);
- if (null != rlist && 0 < rlist.Count)
- {
- var _index = 0;
- zr.Append("<ul>");
- foreach (var item in rlist)
- {
- if (entity.Name.Contains("手机版"))
- {
- if (item.Name == entity.Name.Substring(3))
- {
- //modified by zizi , at 2016-5-20(改成电脑版)
- zr.AppendFormat(
- "<li><a href=\"http://www.55128.cn/zs/{0}_{1}.htm\" target=\"_blank\" class=\"pc-zs\">{2}</a></li>",
- item.Cid, item.Id, "电脑版走势");
- _index++;
- }
- }
- else
- {
- if (item.Name == entity.Name)
- {
- //modified by zizi , at 2016-5-20(去掉前面的彩种名称)
- zr.AppendFormat(
- "<li><a href=\"http://www.55128.cn/zs/{0}_{1}.htm\" target=\"_blank\" class=\"pc-zs\">{2}</a></li>",
- item.Cid, item.Id, "电脑版走势");//Regex.Replace(item.Name, "^" + lottery.Name, "", RegexOptions.IgnoreCase));
- _index++;
- }
- }
- if (_index == 3)
- {
- zr.Append("</ul><ul>");
- _index = 0;
- }
- }
- if (zr.Length == 0)
- zr.Append("<ul>");
- foreach (var item in rlist)
- {
- var exceptionCids = new int[] { 15, 20 };
- var splitCid = 29;
- if ((lottery.Cid < splitCid && !exceptionCids.Contains(lottery.Cid) &&
- !item.Name.Contains("手机版")) ||
- ((lottery.Cid >= splitCid || exceptionCids.Contains(lottery.Cid)) &&
- item.Name.Contains("手机版")))
- //if (item.Name != entity.Name.Substring(3) && !item.Name.Contains("手机版"))
- {
- //modified by zizi , at 2016-5-20(去掉前面的彩种名称)
- var _name = LotteryNameReplace(item.Name, lottery.Name);
- //TODO: 2016-7-15 保持移动端和pc端的地址一致
- var _id = MobPcConvert.GetSyncIdFromM(item.Id);
- if (_id == 0) _id = item.Id;
- zr.AppendFormat("<li><a href=\"{0}_{1}.htm\" target=\"_blank\">{2}</a></li>", item.Cid, _id, _name);
- //zr.AppendFormat("<li><a href=\"{0}_{1}.htm\" target=\"_blank\">{2}</a></li>", item.Cid,
- // item.Id,
- // RemovePreffixLotName(Regex.Replace(item.Name, "^" + lottery.Name, "", RegexOptions.IgnoreCase)));//item.Name);
- _index++;
- }
- if (_index == 3)
- {
- zr.Append("</ul><ul>");
- _index = 0;
- }
- }
- if (_index < 3 && _index > 0)
- {
- for (var i = _index; i < 3; i++)
- {
- zr.Append("<li></li>");
- }
- zr.Append("</ul>");
- }
- //读取razor模板[_trendChartfooter.cshtml]
- var zrs = zr.ToString();
- if (zrs.EndsWith("<ul>"))
- zrs = zrs.Remove(zrs.Length - 4, 4);
-
- viewbag.Add("SearchTime", SearchTime);
- viewbag.Add("recommend1", CB.Data.RecommendsService.Get(31).Content);//"<p>看预测、技巧加微信:<span>ikancaila</span> -长按复制</p>"));
- viewbag.Add("recommend2", zrs);
- if (!isUseRazorTemplate)
- zr = TemplateEngine.Template.GetTemplateContent("_trendChartfooter", null, viewbag);
- }
- if (isUseRazorTemplate)
- {
- chartData = GetRazorTemplateContent(entity.TemplateId, list, viewbag);
- return;
- }
- }
- private List<TrendChartData> DealDifferentChart(int cId, int chartId, GpLotterySearchField lotterySearch)
- {
- switch (cId)
- {
- case 59://四川快乐12
- return KL12Trend<KL12Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL12_SiChuan", lotterySearch).Item3;
- case 90://辽宁快乐12
- return KL12Trend<KL12Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL12_LiaoNing", lotterySearch).Item3;
- case 98://浙江快乐12
- return KL12Trend<KL12Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL12_ZheJiang", lotterySearch).Item3;
- case 70: //11选5-安徽 70-85都是11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_AnHui", lotterySearch).Item3;
- case 71: //重庆11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_ChongQing", lotterySearch).Item3;
- case 72: //广东11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_GuangDong", lotterySearch).Item3;
- case 73: //贵州11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_GuiZhou", lotterySearch).Item3;
- case 74: //黑龙江11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_HeiLongJiang", lotterySearch).Item3;
- case 75: //湖北11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_HuBei", lotterySearch).Item3;
- case 76: //江苏11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_JiangSu", lotterySearch).Item3;
- case 77: //江西11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_JiangXi", lotterySearch).Item3;
- case 78: //吉林11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_JiLin", lotterySearch).Item3;
- case 79: //辽宁11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_LiaoNing", lotterySearch).Item3;
- case 80: //山东11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_ShanDong", lotterySearch).Item3;
- case 81: //上海11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_Shanghai", lotterySearch).Item3;
- case 82: //11选5-四川
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_SiChuan", lotterySearch).Item3;
- case 83: //天津11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_TianJin", lotterySearch).Item3;
- case 84: //云南11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_YunNan", lotterySearch).Item3;
- case 85: //浙江11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_ZheJiang", lotterySearch).Item3;
- case 100:
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_HeBei", lotterySearch).Item3;
- case 86://安徽快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_AnHui", lotterySearch).Item3;
- case 87://湖北快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_HuBei", lotterySearch).Item3;
- case 88://江苏快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_JiangSu", lotterySearch).Item3;
- case 89://吉林快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_JiLin", lotterySearch).Item3;
- case 96://河北快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_HeBei", lotterySearch).Item3;
- case 97://内蒙古快3
- return KL12Trend<K3Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_K3_NeiMengGu", lotterySearch).Item3;
- //TODO:未配置
- case 15://广东快乐十分
- return KL12Trend<KL10FInfo>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_GuangDong", lotterySearch).Item3;
- case 91://重庆快乐十分
- return KL12Trend<KL10FInfo>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_ChongQing", lotterySearch).Item3;
- case 92://广西快乐十分
- return KL12Trend<KL10FInfo_GuangXi>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_GuangXi", lotterySearch).Item3;
- case 93://湖南快乐十分
- return KL12Trend<KL10FInfo>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_HuNan", lotterySearch).Item3;
- case 94://天津快乐十分
- return KL12Trend<KL10FInfo>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_TianJin", lotterySearch).Item3;
- case 99://山西快乐十分
- return KL12Trend<KL10FInfo>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL10F_ShanXi", lotterySearch).Item3;
- case 95://群英会-山东
- return KL12Trend<QYHInfo_ShanDong>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_QYH_ShanDong", lotterySearch).Item3;
- //2016-12-28新增高频彩
- case 103:
- return KL12Trend<KLPK3Info_ShanDong>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KLPK3_ShanDong", lotterySearch).Item3;
- case 104://湖南幸运赛车
- return KL12Trend<XYSCInfo_HuNan>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_XYSC_HuNan", lotterySearch).Item3;
- case 105://河南快赢481(泳坛夺金)
- return KL12Trend<YTDJInfo_HeNan>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KY481_HeNan", lotterySearch).Item3;
- case 102://上海时时乐
- return KL12Trend<SSLInfo_ShangHai>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_SSL_ShangHai", lotterySearch).Item3;
- case 114:
- return KL12Trend<KL8Info_BeiJing>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_KL8_BeiJing", lotterySearch).Item3;
- case 115://北京pk10
- return KL12Trend<GPpk10Info_BeiJing>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_PK10_BeiJing", lotterySearch).Item3;
- case 106: //内蒙古11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_NeiMengGu", lotterySearch).Item3;
- case 107: //甘肃11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_GanSu", lotterySearch).Item3;
- case 108: //福建11选5(即乐彩)
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_FuJian", lotterySearch).Item3;
- case 109: //新疆11选5(新乐彩)
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_XinJiang", lotterySearch).Item3;
- case 110: //山西11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_ShanXiTaiYuan", lotterySearch).Item3;
- case 111: //陕西11选5
- return KL12Trend<GP11x5Info>.CreateGPTrendChart(cId, chartId, TrendChartType.PC, "GP_11x5_ShanXiXiAn", lotterySearch).Item3;
- default:
- return null;
- }
- }
- protected override void InitData()
- {
- //TODO:2016-7-15 保持移动端和pc端的地址一致
- var _pc_chartId = WRequest.GetQueryInt("chartid");
- int chartId = MobPcConvert.GetSyncIdFromPc(_pc_chartId);//WRequest.GetQueryInt("chartid");
- if (chartId == 0) chartId = _pc_chartId;
- if (0 >= chartId)
- { ShowError(); return; }
- var entity = CB.Data.Caches.GetTrendChartInfo(chartId);
- if (null == entity)
- { ShowError(); return; }
- chartName = entity.Name;
- hTitle = entity.hTitle;
- hDescription = entity.hDescription;
- hKeywords = entity.hKeywords;
- hcid = entity.Cid;
- pcUrl = string.Format(pcUrl, entity.Cid, entity.Id);
- searchYearHTML = ShowSearchYears(entity.Cid);
- var lottery = CB.Data.Caches.GetLotteryInfo(entity.Cid);
- if (null != lottery)
- {
- lotName = lottery.Name;
- lotLogoCsss = GetLotteryLogoCss(entity.Cid);
- navStr = string.Format("<a href=\"/zs/{0}_{1}.htm\">{2}</a> - {3}", lottery.Id, chartId, lotName, chartName);
- }
- var Tlist = CB.Data.Caches.GetTrendChartList(entity.Cid, 2001, 0);
- if (Tlist.Count > 0)
- {
- for (int i = 0; i < Tlist.Count; i++)
- {
- //if (i < 3)
- //{
- //Modified by zizi at 2016-6-1, 由于七星彩(19)之前的彩票未区分手机版本和电脑数据(个人比较认同不用区分的方式),后面的又建了电脑版和手机版两种
- var exceptionCids = new int[] {15, 20};
- var splitCid = 29;
- if ((lottery.Cid < splitCid && !exceptionCids.Contains(lottery.Cid) && !Tlist[i].Name.Contains("手机版")) || ((lottery.Cid >= splitCid || exceptionCids.Contains(lottery.Cid)) && Tlist[i].Name.Contains("手机版")))
- {
- var _name = LotteryNameReplace(Tlist[i].Name, lottery.Name);
- //TODO: 2016-7-15 保持移动端和pc端的地址一致
- var _id = MobPcConvert.GetSyncIdFromM(Tlist[i].Id);
- if (_id == 0) _id = Tlist[i].Id;
- ShowMenu += "<li><a href=\"/zs/" + Tlist[i].Cid + "_" + _id + ".htm\">" +
- _name +
- "</a></li>";
- //modified by zizi , at 2016-5-20(去掉页头前面的彩种名称)
- //modified by zizi , at 2016-5-30(恢复页头前面的彩种名称)
- if (Tlist[i].Id == chartId)
- lotName = lottery.Name.Trim() + _name;
- }
- //}
- //else
- //{
- // HideMenu += "<li><a href=\"/zs/" + Tlist[i].Cid + "_" + Tlist[i].Id + ".htm\">" + Regex.Replace(Tlist[i].Name, "^" + lottery.Name, "", RegexOptions.IgnoreCase) + "</a></li>";
- //}
- }
- }
- else
- {
- ShowMenu = "";
- }
- years = ShowSearchYears(entity.Cid);
- UpdateTrendSmart(entity.Id);
- #region=====调用其它站点走势图特殊处理========
- if (!string.IsNullOrEmpty(entity.Url) && entity.Url.StartsWith("http://", StringComparison.CurrentCultureIgnoreCase))
- {
- HighFrequency = true;
- chartData = "<iframe src=\"" + entity.Url + "\" frameborder=\"0\" width=\"1000\" id=\"myframe\" name=\"myframe\" scrolling=\"no\"></iframe>";
- base.InitData();
- return;
- }
- #endregion
- var chartSearch = new TrendChartSearchField()
- {
- ChartId = chartId,
- Record = WRequest.GetQueryInt("record"),
- StartTerm = WRequest.GetQueryInt("startTerm"),
- EndTerm = WRequest.GetQueryInt("endTerm"),
- ChartType = TrendChartType.PC,
- Year = WRequest.GetQueryInt("year"),
- };
- if (chartSearch.Year > 0)
- { chartSearch.Record = 1500; }
- else if (chartSearch.StartTerm == chartSearch.EndTerm && chartSearch.EndTerm != 0)
- { chartSearch.Record = 100; chartSearch.StartTerm = 0; chartSearch.EndTerm = 0; }
- else if ((0 >= chartSearch.StartTerm || 0 >= chartSearch.EndTerm) && 0 == chartSearch.Record)
- { chartSearch.Record = 30; }
- switch (entity.Type)
- {
- case TrendChartIdType.Dynamic://动态生成
- var lotterySearch = new GpLotterySearchField()
- {
- TopSize = WRequest.GetQueryInt("topSize"),
- StartTerm = WRequest.GetQueryInt("startTerm"),
- EndTerm = WRequest.GetQueryInt("endTerm"),
- Year = WRequest.GetQueryInt("year"),
- SearchDate = WRequest.GetQueryDateTime("searchTime"),
- SearchDay = WRequest.GetQueryExist("searchTime")
- };
- if (lotterySearch.SearchDate.HasValue)
- {
- SearchTime = lotterySearch.SearchDate.Value;
- }
- var tlist = DealDifferentChart(entity.Cid, chartId, lotterySearch);
-
- //if (tlist != null)
- // tlist.Reverse();
- DealChartDataWithRazor(tlist, chartId, entity, lottery, chartSearch);
- break;
- case TrendChartIdType.Normal:
- Record = chartSearch.Record;
- #region 直接读取结果集生成遗漏
- var list = GetTrendChartList(entity.Cid, chartSearch);
- if (null == list || 0 >= list.Count)
- return;
- //modified by zizi,at 2016-5-18
- //create viewbag
- var viewbag = new Dictionary<string, object>();
- var isUseRazorTemplate = IsUseRazorEngine(chartId);
- var rlist = CB.Data.Caches.GetTrendChartList(entity.Cid, entity.Tid, 0);
- var zr = new StringBuilder(rlist.Count * 100);
- if (null != rlist && 0 < rlist.Count)
- {
- var _index = 0;
- zr.Append("<ul>");
- foreach (var item in rlist)
- {
- if (entity.Name.Contains("手机版"))
- {
- if (item.Name == entity.Name.Substring(3))
- {
- //modified by zizi , at 2016-5-20(改成电脑版)
- zr.AppendFormat(
- "<li><a href=\"http://www.55128.cn/zs/{0}_{1}.htm\" target=\"_blank\" class=\"pc-zs\">{2}</a></li>",
- item.Cid, item.Id, "电脑版走势");
- _index++;
- }
- }
- else
- {
- if (item.Name == entity.Name)
- {
- //modified by zizi , at 2016-5-20(去掉前面的彩种名称)
- zr.AppendFormat(
- "<li><a href=\"http://www.55128.cn/zs/{0}_{1}.htm\" target=\"_blank\" class=\"pc-zs\">{2}</a></li>",
- item.Cid, item.Id, "电脑版走势");//Regex.Replace(item.Name, "^" + lottery.Name, "", RegexOptions.IgnoreCase));
- _index++;
- }
- }
- if (_index == 3)
- {
- zr.Append("</ul><ul>");
- _index = 0;
- }
- }
- if (zr.Length == 0)
- zr.Append("<ul>");
- foreach (var item in rlist)
- {
- //if (item.Name != entity.Name.Substring(3) && !item.Name.Contains("手机版"))
- //{
- // //modified by zizi , at 2016-5-20(去掉前面的彩种名称)
- // zr.AppendFormat("<li><a href=\"{0}_{1}.htm\" target=\"_blank\">{2}</a></li>", item.Cid,
- // item.Id,
- // RemovePreffixLotName(Regex.Replace(item.Name, "^" + lottery.Name, "", RegexOptions.IgnoreCase)));//item.Name);
- // _index++;
- //}
- //modified by zizi, at 2016-6-17,对地方彩和高频彩只读取带"手机版”的连接
- var exceptionCids = new int[] { 15, 20 };
- var splitCid = 29;
- if ((lottery.Cid < splitCid && !exceptionCids.Contains(lottery.Cid) &&
- !item.Name.Contains("手机版")) ||
- ((lottery.Cid >= splitCid || exceptionCids.Contains(lottery.Cid)) &&
- item.Name.Contains("手机版")))
- {
- var _name = LotteryNameReplace(item.Name, lottery.Name);
- //TODO: 2016-7-15 保持移动端和pc端的地址一致
- var _id = MobPcConvert.GetSyncIdFromM(item.Id);
- if (_id == 0) _id = item.Id;
- zr.AppendFormat("<li><a href=\"{0}_{1}.htm\" target=\"_blank\">{2}</a></li>", item.Cid, _id, _name);
- _index++;
- }
- if (_index == 3)
- {
- zr.Append("</ul><ul>");
- _index = 0;
- }
- }
- if (_index < 3 && _index > 0)
- {
- for (var i = _index; i < 3; i++)
- {
- zr.Append("<li></li>");
- }
- zr.Append("</ul>");
- }
- //读取razor模板[_trendChartfooter.cshtml]
- var zrs = zr.ToString();
- if (zrs.EndsWith("<ul>"))
- zrs = zrs.Remove(zrs.Length - 4, 4);
- viewbag.Add("recommend1", CB.Data.RecommendsService.Get(31).Content);//"<p>看预测、技巧加微信:<span>ikancaila</span> -长按复制</p>"));
- viewbag.Add("recommend2", zrs);
- if (!isUseRazorTemplate)
- {
- zr = TemplateEngine.Template.GetTemplateContent("_trendChartfooter", null, viewbag);
- //新增设置
- //viewbag.Add("chartSearch", chartSearch);
- Setting = TemplateEngine.Template.GetTemplateContent("_trendChartSetting", chartSearch, null).ToString();
- }
- }
- if (isUseRazorTemplate)
- {
- chartData = GetRazorTemplateContent(entity.TemplateId, list, viewbag);
- return;
- }
- //modified by zizi,at 2016-5-20
- var sp = new StringBuilder(list.Count * 5000);
- var qis = new StringBuilder(list.Count * 50);
- for (int i = list.Count - 1; i >= 0; i--)
- {
- int begin = list[i].HtmlData.IndexOf("<td");
- int end = list[i].HtmlData.IndexOf("</td>");
- string qi = list[i].HtmlData.Substring(begin, end + 1);
- string qistr = Regex.Match(qi, "[0-9]{7}").ToString().Substring(2);
- if (i == list.Count - 1)
- {
- first = Regex.Match(qi, "[0-9]{7}").ToString();
- }
- if (i == 0)
- {
- endqi = Regex.Match(qi, "[0-9]{7}").ToString();
- }
- qi = Regex.Replace(qi, "[0-9]{7}", qistr);
- qis.Append(qi);
- sp.Append(list[i].HtmlData.Remove(begin, end - begin));
- }
- //获取数据分析样式
- List<Tuple<string, string>> DataAnalysisCssList = GetDataAnalysisCssList(chartSearch.ChartId, chartSearch.ChartType);
- Dictionary<string, string> DicchartData = new Dictionary<string, string>();
- DicchartData.Add("<!--@@chartQi-->", qis.ToString());
- DicchartData.Add("<!--@@chartData-->", sp.ToString());
- DicchartData.Add("<!--@@localMissData-->", LocalMissData(list, DataAnalysisCssList));
- DicchartData.Add("<!--@@missData-->", GetmissData(list[list.Count - 1], DataAnalysisCssList));
- DicchartData.Add("<!--@@rz-->", zr.ToString());
- #endregion
- chartData = BuildTemplateData(entity.TemplateId, DicchartData);
- return;
- case TrendChartIdType.Abnormal:
- chartData = GetSpecialTrendChartList(entity, chartSearch, null);
- if (entity.Id == 94 || entity.Id == 95)
- {
- string[] qistring = Regex.Split(chartData, "期");
- endqi = Regex.Match(qistring[0], "[0-9]{7}").ToString();
- first = Regex.Match(qistring[qistring.Length - 2], "[0-9]{7}").ToString();
- }
- return;
- case TrendChartIdType.Static: //静态类型(图表)
- chartData = FileUtil.ReadTextFile(entity.Url);
- return;
- }
- base.InitData();
- }
- private bool IsUseRazorEngine(int chartId)
- {
- switch (chartId)
- {
- case 6:
- case 10:
- case 15:
- case 18:
- case 22:
- case 29:
- case 34:
- case 35:
- case 65:
- case 66:
- case 68:
- case 69:
- case 98:
- case 157:
- case 112:
- case 194:
- case 3:
- case 48:
- case 771://手机版东方6+1
- case 772:
- case 773://手机版浙江6+1
- case 774:
- case 775://手机版东方15选5
- case 776:
- case 777://手机版南粤36选7
- case 778:
- case 786://手机版四川快乐12
- case 787:
- case 788://手机版河南22选5
- case 789:
- case 791://手机版湖北22选5
- case 792:
- case 793://手机版新疆35选7
- case 794:
- case 795://手机版江苏7位数
- case 796:
- case 797://手机版福建31选7
- case 798:
- case 799://手机版福建36选7
- case 800:
- case 982://手机版湖北30选5
- case 983:
- Setting = "";
- return true;
- }
- return false;
- }
- private string GetRazorTemplateContent(int tid, IList<TrendChartData> list, Dictionary<string, object> viewbag)
- {
- Nancy.StaticConfiguration.DisableErrorTraces = false;
- #if DEBUG
- Nancy.StaticConfiguration.DisableCaches = true;
-
- #endif
- var template = CB.Data.Caches.GetTemplateInfo(tid);
- if (null == template)
- return "";
- // var lastItem = list.LastOrDefault();
- var fileName = System.IO.Path.GetFileName(template.FilePath);
- var _list = list == null ? new List<TrendChartData>() : list;
-
- var tdEntity = new TrendDataEntity<TrendChartData, TrendChartData>
- {
- DataItems = _list,
- TrendDataItems = _list,
- };
- var sb = TemplateEngine.Template.GetTemplateContent(fileName, tdEntity, viewbag);
- return sb.ToString();
- }
- /// <summary>
- /// 历史遗漏
- /// </summary>
- /// <param name="Entity"></param>
- /// <returns></returns>
- private string GetmissData(TrendChartData Entity, List<Tuple<string, string>> dataAnalysisCssList)
- {
- StringBuilder missData = new StringBuilder();
- if (Entity != null)
- {
- missData.Append("<tbody id=\"historyData\" style=\"display:none;\">");
- int count = 0;
- #region 历史最大遗漏
- missData.Append("<tr>");
- for (int i = 0; i < Entity.AllMaxMiss.Count(); i++)
- {
- if (Entity.AllMaxMiss[i] == "-1")
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[count].Item1, ""));
- count++;
- }
- continue;
- }
- for (int j = 0; j < Entity.AllMaxMiss[i].Split(',').Count(); j++)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[count].Item1, Entity.AllMaxMiss[i].Split(',')[j]));
- count++;
- }
- }
- missData.Append("</tr>");
- #endregion
- #region 历史平均遗漏
- count = 0;
- missData.Append("<tr>");
- for (int i = 0; i < Entity.AllAvgMiss.Count(); i++)
- {
- if (Entity.AllAvgMiss[i] == "-1")
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[count].Item1, ""));
- count++;
- }
- continue;
- }
- foreach (var missvalue in Entity.AllAvgMiss[i].Split(','))
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[count].Item1, missvalue));
- count++;
- }
- }
- missData.Append("</tr>");
- #endregion
- #region 历史出现次数
- count = 0;
- missData.Append("<tr>");
- for (int i = 0; i < Entity.AllTimes.Count(); i++)
- {
- if (Entity.AllTimes[i] == "-1")
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[count].Item1, ""));
- count++;
- }
- continue;
- }
- foreach (var missvalue in Entity.AllTimes[i].Split(','))
- {
- missData.Append(string.Format("<td class=\"appears {0}\">{1} <br /><img width=\"8\" height=\"{2}\" src=\"/static/images/{3}\" alt=\"\" /> </td>", dataAnalysisCssList[count].Item1, missvalue, 60 * missvalue.ToInt() / Entity.RecordCount, dataAnalysisCssList[count].Item2));
- count++;
- }
- }
- missData.Append("</tr>");
- #endregion
- missData.Append("</tbody>");
- return missData.ToString();
- }
- return "";
- }
- /// <summary>
- /// 当前页遗漏
- /// </summary>
- /// <param name="list"></param>
- /// <returns></returns>
- private string LocalMissData(IList<TrendChartData> list, List<Tuple<string, string>> dataAnalysisCssList)
- {
- if (list == null && list.Count <= 0)
- return "";
- //将list按期号升序排列
- list = list.OrderBy(info => info.Term).ToList();
- //本期遗漏列表(当前页数据根据本期遗漏计算)
- List<List<int>> LocalMissArray = new List<List<int>>();
- #region 将list里面提取本期遗漏数据
- foreach (var item in list)
- {
- var row = new List<int>();
- for (int i = 0; i < item.LocalMiss.Count(); i++)
- {
- if (item.LocalMiss[i] == "-1")
- {
- row.Add(-1);
- continue;
- }
- foreach (var missvalue in item.LocalMiss[i].Split(','))
- {
- row.Add(missvalue.ToInt());
- }
- }
- LocalMissArray.Add(row);
- }
- #endregion
- if (LocalMissArray.Count <= 0)
- return "";
- //当前页最大遗漏
- int[] maxMissArray = new int[LocalMissArray[0].Count];
- //当前页出现次数
- int[] TimesArray = new int[LocalMissArray[0].Count];
- //当前页遗漏总和
- int[] allMissArray = new int[LocalMissArray[0].Count];
- #region 根据当前页本期遗漏计算当前页(最大遗漏、出现次数、遗漏总和)
- for (int k = 0; k < LocalMissArray.Count; k++)
- {
- for (int i = 0; i < LocalMissArray[k].Count; i++)
- {
- //如果为-1说明没有遗漏数据
- if (LocalMissArray[k][i] == -1)
- {
- maxMissArray[i] = -1;
- TimesArray[i] = -1;
- allMissArray[i] = -1;
- continue;
- }
- //遍历当前页遗漏找当前页最大遗漏
- if (maxMissArray[i] < LocalMissArray[k][i])
- {
- maxMissArray[i] = LocalMissArray[k][i];
- }
- //遍历当前页遗漏累加当前页出现次数
- if (LocalMissArray[k][i] == 0)
- {
- TimesArray[i]++;
- }
- //遍历当前页遗漏累加遗漏总数
- if (k == 0)
- {
- allMissArray[i] = LocalMissArray[k][i];
- }
- else
- {
- if (LocalMissArray[k][i] != 0)
- {
- allMissArray[i]++;
- }
- }
- }
- }
- #endregion
- StringBuilder missData = new StringBuilder();
- missData.Append("<tbody id=\"currentData\" style=\"\">");
- #region 当前最大遗漏
- missData.Append("<tr>");
- for (int i = 0; i < maxMissArray.Count(); i++)
- {
- if (maxMissArray[i] == -1)
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[i].Item1, ""));
- }
- continue;
- }
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[i].Item1, maxMissArray[i]));
- }
- missData.Append("</tr>");
- #endregion
- #region 当前平均遗漏
- missData.Append("<tr>");
- for (int i = 0; i < allMissArray.Count(); i++)
- {
- if (allMissArray[i] == -1)
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[i].Item1, ""));
- }
- continue;
- }
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[i].Item1, TimesArray[i] >= 0 ? allMissArray[i] / (TimesArray[i] + 1) : 0));
- }
- missData.Append("</tr>");
- #endregion
- #region 当前出现次数
- missData.Append("<tr>");
- Func<int, int> getchartHeight = h =>
- {
- var maxHeight = 60;
- if (h <= 0)
- return 0;
- var ht = (h - 1) * 5 + 10;
- if (ht > maxHeight)
- return maxHeight;
- return ht;
- };
- for (int i = 0; i < TimesArray.Count(); i++)
- {
- if (TimesArray[i] == -1)
- {
- if (i != 0)
- {
- missData.Append(string.Format("<td class=\"{0}\">{1}</td>", dataAnalysisCssList[i].Item1, ""));
- }
- continue;
- }
- //TODO: modified by zizi at 2016-5-17
- missData.Append(string.Format("<td class=\"appears {0}\">{1}<br /><img width=\"16\" height=\"{2}\" src=\"/static/images/{3}\" alt=\"\" /> </td>", dataAnalysisCssList[i].Item1, TimesArray[i],
- getchartHeight(TimesArray[i]),//60 * TimesArray[i] / list.Count,
- dataAnalysisCssList[i].Item2));
- }
- missData.Append("</tr>");
- #endregion
- missData.Append("</tbody>");
- return missData.ToString();
- }
- private int GetTrendChartColspan(string[] array)
- {
- if (null == array || 0 >= array.Length)
- return 0;
- int colspan = 0;
- for (int i = array.Length - 1; i >= 0; i--)
- {
- colspan = colspan + array[i].Split(',').Length;
- }
- return colspan;
- }
- /// <summary>
- /// 获取走势图列表
- /// </summary>
- /// <param name="cid"></param>
- /// <param name="chartSearch"></param>
- /// <returns></returns>
- public IList<TrendChartData> GetTrendChartList(int cid, TrendChartSearchField chartSearch)
- {
- switch (cid)
- {
- case 1:
- return FC3DTrendChartDataService.ToList(chartSearch);
- case 2:
- case 3:
- return TCP3TrendChartDataService.ToList(chartSearch);
- case 4:
- return FCSSQTrendChartDataService.ToList(chartSearch);
- case 5:
- return FCQLCTrendChartDataService.ToList(chartSearch);
- case 12:
- return TCDLTTrendChartDataService.ToList(chartSearch);
- case 19:
- return TCQXCTrendChartDataService.ToList(chartSearch);
- case 28:
- return HC1TrendChartDataService.ToList(chartSearch);
- case 59:
- return SCKL12TrendChartDataService.ToList(chartSearch);
- case 60:
- return TCFJ31X7TrendChartDataService.ToList(chartSearch);
- case 61:
- return TCFJ36X7TrendChartDataService.ToList(chartSearch);
- case 62:
- return TCJS7WSTrendChartDataService.ToList(chartSearch);
- case 63:
- return TCZJ6J1TrendChartDataService.ToList(chartSearch);
- case 64:
- return FCDF6J1TrendChartDataService.ToList(chartSearch);
- case 65:
- return FCHD11X5TrendChartDataService.ToList(chartSearch);
- //case 66:return FCHB22X5TrendChartDataService.ToList(chartSearch);
- case 67:
- return FCHN22X5TrendChartDataService.ToList(chartSearch);
- case 68:
- return FCXJ35X7TrendChartDataService.ToList(chartSearch);
- case 69:
- return FCNY36X7TrendChartDataService.ToList(chartSearch);
- case 70:
- return AH11X5TrendChartDataService.ToList(chartSearch);
- case 71:
- return CQ11X5TrendChartDataService.ToList(chartSearch);
- case 72:
- return GD11X5TrendChartDataService.ToList(chartSearch);
- case 73:
- return GZ11X5TrendChartDataService.ToList(chartSearch);
- case 74:
- return HLJ11X5TrendChartDataService.ToList(chartSearch);
- case 75:
- return HB11X5TrendChartDataService.ToList(chartSearch);
- case 76:
- return JS11X5TrendChartDataService.ToList(chartSearch);
- case 77:
- return JX11X5TrendChartDataService.ToList(chartSearch);
- case 78:
- return JL11X5TrendChartDataService.ToList(chartSearch);
- case 79:
- return LN11X5TrendChartDataService.ToList(chartSearch);
- case 80:
- return SD11X5TrendChartDataService.ToList(chartSearch);
- case 81:
- return SH11X5TrendChartDataService.ToList(chartSearch);
- case 82:
- return SC11X5TrendChartDataService.ToList(chartSearch);
- case 83:
- return TJ11X5TrendChartDataService.ToList(chartSearch);
- case 84:
- return YN11X5TrendChartDataService.ToList(chartSearch);
- case 85:
- return ZJ11X5TrendChartDataService.ToList(chartSearch);
- case 86:
- return AHK3TrendChartDataService.ToList(chartSearch);
- case 87:
- return HBK3TrendChartDataService.ToList(chartSearch);
- case 88:
- return JSK3TrendChartDataService.ToList(chartSearch);
- case 89:
- return JLK3TrendChartDataService.ToList(chartSearch);
- case 90:
- return LNKL12TrendChartDataService.ToList(chartSearch);
- case 15:
- return GDKL10TrendChartDataService.ToList(chartSearch);
- case 91:
- return CQKL10TrendChartDataService.ToList(chartSearch);
- case 92:
- return GXKL10TrendChartDataService.ToList(chartSearch);
- case 93:
- return HNKL10TrendChartDataService.ToList(chartSearch);
- case 94:
- return TJKL10TrendChartDataService.ToList(chartSearch);
- case 95:
- return SDQYHTrendChartDataService.ToList(chartSearch);
- case 101://湖北30选5
- return FCHB30X5TrendChartDataService.ToList(chartSearch);
- }
- return null;
- }
- // 特殊配置项
- public string GetSpecialTrendChartList(TrendChartInfo entity, TrendChartSearchField chartSearch, LotterySearchField lotterySearch)
- {
- switch (entity.Cid)
- {
- case 1:
- if (entity.Id == 94)
- {
- return FC3DTrend.PreViewFC3D_012_4_TrendChart(entity.Id, chartSearch.ChartType, chartSearch);
- }
- break;
- case 2:
- case 3:
- if (entity.Id == 95)
- {
- return TCP3Trend.PreViewTCP3_012_4_TrendChart(entity.Id, chartSearch.ChartType, chartSearch);
- }
- break;
- case 4:
- if (entity.Id == 102)
- {
- return FCSSQTrend.PreView_FCSSQChuHaoPL_TrendChart(entity.Id, chartSearch.ChartType, chartSearch);
- }
- break;
- case 5:
- break;
- case 12:
- if (entity.Id == 114)
- {
- return TCDLTTrend.PreView_TCDLTChuHaoPL_TrendChart(entity.Id, chartSearch.ChartType, chartSearch);
- }
- break;
- case 19:
- break;
- }
- return "";
- }
- /// <summary>
- /// 获取数据分析样式
- /// </summary>
- /// <param name="chartId"></param>
- /// <param name="chartType"></param>
- /// <returns></returns>
- public List<Tuple<string, string>> GetDataAnalysisCssList(int chartId, TrendChartType chartType)
- {
- //Tuple<string, string> 第一个存放:数据分析样式,第二个存放:数据分析(出现次数)图片
- List<Tuple<string, string>> cssList = new List<Tuple<string, string>>();
- IList<TrendChartItemInfo> TrendChartItemList = Caches.GetTrendChartItemList(chartId, chartType);
- if (TrendChartItemList == null || TrendChartItemList.Count <= 0)
- return null;
- ChartCssConfigInfo css = new ChartCssConfigInfo();
- foreach (var chartItem in TrendChartItemList)
- {
- css = Caches.GetTrendChartItemCssConfig(chartItem.ChartCssId);
- if (css.ChildList == null) //没有子样式
- {
- for (int i = 0; i < chartItem.ItemCount; i++)
- {
- cssList.Add(new Tuple<string, string>(css.DataAnalysisCssName, css.DataAnalysisImgName));
- }
- }
- else //有子样式
- {
- foreach (var item in css.ChildList)
- {
- for (int i = item.startNum; i <= item.endNum; i++)
- {
- cssList.Add(new Tuple<string, string>(item.DataAnalysisCssName, item.DataAnalysisImgName));
- }
- }
- }
- }
- if (cssList.Count <= 0)
- return null;
- return cssList;
- }
- /// <summary>
- /// 数据查询年份显示
- /// </summary>
- /// <param name="lotteryId">彩种ID</param>
- /// <returns></returns>
- private string ShowSearchYears(int lotteryId)
- {
- int maxYear = DateTime.Now.Year;
- int minYear = 9999;
- switch (lotteryId)
- {
- case 1:
- minYear = 2002;
- break;
- case 2:
- minYear = 2004;
- break;
- case 3:
- minYear = 2004;
- break;
- case 4:
- minYear = 2003;
- break;
- case 5:
- minYear = 2002;
- break;
- case 12:
- minYear = 2007;
- break;
- case 19:
- minYear = 2006;
- break;
- case 28:
- minYear = 2009;
- break;
- }
- var sp = new StringBuilder();
- for (int i = maxYear; i >= minYear; i--)
- {
- sp.AppendFormat("<option><a href=\"?year={0}\">{0}年</a></option>", i.ToString());
- }
- return sp.ToString();
- }
- }
- }
|