/// <summary> /// 处理票_001 /// </summary> /// <param name="suanJiangClass"></param> private void ChuLiValue9005(SuanJiangClass suanJiangClass) { //2016/6/25 17:44:55 //RSP|160625103=3,160625110=1|2*1 //HH|SPF>160625113=3,SPF>160625119=3,RSP>160625101=0,RSP>160625104=3,RSP>160625112=0,SPF>160625116=3,SPF>160625122=3|7*1 //SPF>160625102=1(4.10),RSP>160625103=1(4.05)/0(1.42),RSP>160625104=1(3.96),RSP>160625106=1(3.45)/0(2.40),RSP>160625108=1(3.50) //SPF>160625102=3(1.55),SPF>160625107=1(3.20),RSP>160625101=0(1.63),RSP>160625104=3(1.64),RSP>160625112=0(1.63),SPF>160625116=3(1.94),SPF>160625122=3(1.50) List <Dictionary <string, string> > lis = new List <Dictionary <string, string> >(); string chuanGuanShu = string.Empty; try { chuanGuanShu = Regex.Match(suanJiangClass.TouZhu, @".+?\|(\d+\*\d+)").Groups[1].Value; if (string.IsNullOrWhiteSpace(chuanGuanShu)) { Log.WriteLog(suanJiangClass.BuyTitckID + "的串关未截取到", "Error"); } List <string> listValue = suanJiangClass.TouZhuValue.Split(',').ToList(); for (int i = 0; i < listValue.Count; i++) { MatchCollection matchTitck = Regex.Matches(listValue[i], @"([A-Z]+)>(\d{6})(\d+)=(.+)"); foreach (Match item in matchTitck) { string redy = string.Empty; if (item.Success) { Titck_GeShi titck_GeShi = new Titck_GeShi(); titck_GeShi.Titck_PlayEnglish = item.Groups[1].Value; titck_GeShi.Titck_DateTime = item.Groups[2].Value; titck_GeShi.Titck_SaiShi = item.Groups[3].Value; titck_GeShi.Titck_ContentString = item.Groups[4].Value; //string dataTxt = ParesDate(item.Groups[2].Value); //suanJiangClass.CreateTime.AddDays(1).ToString("yyyy-MM-dd"); using (StreamReader streamRead = new StreamReader(theTxtPath + "/" + item.Groups[2].Value + ".txt", Encoding.GetEncoding("utf-8"))) { redy = streamRead.ReadToEnd();//缓存内容 } lis.Add(SplitTitckValue(titck_GeShi, redy)); } } } } catch (Exception error) { Log.WriteLog(suanJiangClass.BuyTitckID + "投注赔率匹配失败:" + error, "Error"); } //SPF>160625102=1(4.10),RSP>160625103=1(4.05)/0(1.42),RSP>160625104=1(3.96),RSP>160625106=1(3.45)/0(2.40),RSP>160625108=1(3.50) GetZhongJianTitck(lis, chuanGuanShu, suanJiangClass); lis.Clear(); }
/// <summary> /// 读取数据 /// </summary> /// <param name="DateTimeTitck_S"></param> /// <param name="DateTimeTitck_E"></param> /// <returns></returns> public void SelectDate(DateTime DateTimeTitck_S, DateTime DateTimeTitck_E) { DataTable dataTable = new DataTable(); try { OleDbParameter[] ps = new OleDbParameter[] { new OleDbParameter("@DateTimeTitck_S", DateTimeTitck_S.ToShortDateString()), new OleDbParameter("@DateTimeTitck_E", DateTimeTitck_E.ToShortDateString()) }; dataTable = OLEDBHelp.GetTable("select [BuyTitckID] as 订单号,[PlayType] as 玩法,[Multiple] as 倍数,[TouZhu] as 投注内容,[TouZhuValue] as 投注赔率,[CreateTime] as 创建时间 from TouZhuTitck where [CreateTime]>=@DateTimeTitck_S and [CreateTime]<=@DateTimeTitck_E order by [CreateTime] desc", ps); if (dataTable.Rows.Count > 0) { for (int i = 0; i < dataTable.Rows.Count; i++) { SuanJiangClass suanJiangClass = new SuanJiangClass(); suanJiangClass.BuyTitckID = dataTable.Rows[i]["订单号"].ToString(); suanJiangClass.PlayType = dataTable.Rows[i]["玩法"].ToString(); suanJiangClass.Multiple = dataTable.Rows[i]["倍数"].ToString(); suanJiangClass.TouZhu = dataTable.Rows[i]["投注内容"].ToString(); suanJiangClass.TouZhuValue = dataTable.Rows[i]["投注赔率"].ToString(); suanJiangClass.CreateTime = DateTime.Parse(dataTable.Rows[i]["创建时间"].ToString()); switch (suanJiangClass.PlayType) { case "9001": ChuLiValue9001(suanJiangClass); break; case "9002": ChuLiValue9002(suanJiangClass); break; case "9003": ChuLiValue9003(suanJiangClass); break; case "9004": ChuLiValue9004(suanJiangClass); break; case "9005": ChuLiValue9005(suanJiangClass); break; case "9006": ChuLiValue9006(suanJiangClass); break; } } } } catch (Exception error) { Log.WriteLog(error, "Error"); } }
private void GetZhongJianTitck(List <Dictionary <string, string> > lis, string chuanGuanShu, SuanJiangClass suanJiangClass) { double titckMoney = 1; int zj = 0; int mzj = 0; for (int i = 0; i < lis.Count; i++) { foreach (var item in lis[i].Keys) { string ssc = string.Empty; lis[i].TryGetValue(item.ToString(), out ssc); if (ssc != "No") { double xxv = double.Parse(ssc); titckMoney = titckMoney * xxv; zj++; } else { mzj++; } } } int rccs = -1; rccs = int.Parse(new selectData().SelectStrZJ(chuanGuanShu));//得到容错次数 if (mzj <= rccs) { if (!(OLEDBHelp.GetReader("select TOP 1 * from ZhongJiangTable where [ZhongJiangID]='" + suanJiangClass.BuyTitckID + "'").HasRows)) { double bs = titckMoney * int.Parse(suanJiangClass.Multiple) * 2.00; OleDbParameter[] ps = new OleDbParameter[] { new OleDbParameter("@ZhongJiangID", suanJiangClass.BuyTitckID), new OleDbParameter("@ZhongJiangTitck", suanJiangClass.TouZhuValue), new OleDbParameter("@ChuangGuan", chuanGuanShu), new OleDbParameter("@ZhongJiangMoney", bs.ToString()), new OleDbParameter("@ZhongJianTime", suanJiangClass.CreateTime.ToString()), new OleDbParameter("@BeiShu", suanJiangClass.Multiple), new OleDbParameter("@PlayGame", suanJiangClass.PlayType), new OleDbParameter("@RongCuo", mzj.ToString()) }; int sb = OLEDBHelp.GetExecute("insert into ZhongJiangTable([ZhongJiangID],[ZhongJiangTitck],[ChuangGuan],[ZhongJiangMoney],[ZhongJianTime],[BeiShu],[PlayGame],[RongCuo]) values(@ZhongJiangID,@ZhongJiangTitck,@ChuangGuan,@ZhongJiangMoney,@ZhongJianTime,@BeiShu,@PlayGame,@RongCuo)", ps); } } //string ssx = zj + "|" + mzj; }