private static void InintFc(object param) { var mLotteryIssuesData = new LotteryIssuesData(); DateTime dt = Convert.ToDateTime(param); string dtStr = dt.ToString("yyyy/MM/dd"); //十一选五 var source11x5 = new Generategd11x5LotteryIssue().Generate(dt); foreach (var item in source11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化广东十一选五{0}成功,总期数={1}!", dtStr, source11x5.Count)); //上海时时乐 var sourceShssl = new GenerateShangHaiSslLotteryIssue().Generate(dt); foreach (var item in sourceShssl) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化上海时时乐{0}成功,总期数={1}!", dtStr, sourceShssl.Count)); ////北京快乐8 //var sourceBjkl8 = new GenerateBjkl8LotteryIssue().Generate(dt); //foreach (var item in sourceBjkl8) //{ // mLotteryIssuesData.AddLotteryIssueCode(item); // string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); // Console.WriteLine(r); //} }
//public void GetLotteryResult(object param) //{ // PoolParam par = param as PoolParam; // int lotteryid = par.lottertId; // string lotteryType=""; // ConfigHelper.GetLotteryDictionary().TryGetValue(lotteryid, out lotteryType); // List<LotteryIssue> issues = par.LotteryIssues; // //api 请求url // string url = ConfigHelper.BuilderApiUrl(lotteryid); // LogManager.Info("开始调用开奖接口,请求Url=" + url); // //获取开奖结果,如未获取到数据,则轮询指定次数 // int whileCount = 0; // while (whileCount < ConfigHelper.GetApiLotteryRound) // { // var result = mHttpHelper.DoGet(url); // if (UpdateLotteryIssueResult(lotteryType, issues, result)) // break;//验证,处理成功,跳出循环 // whileCount++;//继续循环拉取数据 // System.Threading.Thread.Sleep(ConfigHelper.GetApiLotterySleep); // } //} private void AutoOpenResult(string lotteryCode, string issueCode) { string key = lotteryCode + "_" + issueCode; bool iscompled = AutoLotteryC.CreateInstan().Add(key); if (!iscompled) { LogManager.Info(key + "正在运算,跳出再次运算!"); return; } var mLotteryIssuesData = new LotteryIssuesData(); //计算开奖结果 Ytg.Scheduler.Comm.Bets.FenBetDetailsCalculate betDetailsCalculate = new Ytg.Scheduler.Comm.Bets.FenBetDetailsCalculate(); string openresult = betDetailsCalculate.Calculate(lotteryCode, issueCode, ""); bool compled = mLotteryIssuesData.UpdateResult(new OpenResultEntity() { expect = issueCode, opencode = openresult, opentime = DateTime.Now }, lotteryCode); if (compled) { //移除 AutoLotteryC.CreateInstan().Remove(key); LogManager.Info(key + "运算完成,移除!"); } }
private static void InintJx(object param) { DateTime dt = Convert.ToDateTime(param); string dtStr = dt.ToString("yyyy/MM/dd"); var mLotteryIssuesData = new LotteryIssuesData(); ///////江西十一选五 var sourcejx11x5 = new Ytg.Scheduler.Comm.IssueBuilder.Generatejx11x5LotteryIssue().Generate(dt); foreach (var item in sourcejx11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //LogManager.Info("=====江西十一选五生成期数=============" + r); } LogManager.Info(string.Format("初始江西十一选五{0}成功,总期数={1}!", dtStr, sourcejx11x5.Count)); /////山东十一选五 var sourcesd11x5 = new Ytg.Scheduler.Comm.IssueBuilder.Generatesd11x5LotteryIssue().Generate(dt); foreach (var item in sourcesd11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //LogManager.Info("=====山东十一选五生成期数=============" + r); } LogManager.Info(string.Format("初始山东十一选五{0}成功,总期数={1}!", dtStr, sourcesd11x5.Count)); }
public static void AddTogetherAction(object obj) { var item = obj as BuyTogether; int state = LotteryIssuesData.AddTogether("d" + Utils.BuilderNum(), (int)TradeType.投注扣款, item); Console.WriteLine(item.ToString() + " state=" + state); }
/// <summary> /// 创建task ITrigger /// </summary> /// <param name="issue"></param> private ITrigger CreateTriggerDay(LotteryIssue issue) { string taskNum = issue.IssueCode + "," + issue.StartTime.ToString("yyyy/MM/dd"); string groupName = LotteryIssuesData.GetAllLotterys().Where(l => l.Id == issue.LotteryId).FirstOrDefault().LotteryCode; ITrigger trigger = new CronTriggerImpl(taskNum, groupName, issue.EndTime.Value.ToString("ss mm HH dd") + " * ?"); return(trigger); }
private static void InintSsc(object param) { DateTime dt = Convert.ToDateTime(param); string dtStr = dt.ToString("yyyy/MM/dd"); var mLotteryIssuesData = new LotteryIssuesData(); var source = new Ytg.Scheduler.Comm.IssueBuilder.GenerateSscLotteryIssue().Generate(dt); foreach (var item in source) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始化重庆时时彩{0}成功,总期数={1}!", dtStr, source.Count)); //江西时时彩 // var sourcejxssc = new GenerateJxSscLotteryIssue().Generate(dt); // foreach (var item in sourcejxssc) // { // mLotteryIssuesData.AddLotteryIssueCode(item); //// string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); // // Console.WriteLine(r); // } // LogManager.Info(string.Format("初始化江西时时彩{0}成功,总期数={1}!", dtStr, sourcejxssc.Count)); //黑龙江是时时彩 暂不生成 var sourceHljssc = new GenerateHljSscLotteryIssue().Generate(dt); foreach (var item in sourceHljssc) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } //LogManager.Info(string.Format("初始化江西时时彩{0}成功!", dtStr)); //新疆时时彩 var sourceXjssc = new GenerateXjsscLotteryIssue().Generate(dt); foreach (var item in sourceXjssc) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化新疆时时彩{0}成功,总期数={1}!", dtStr, sourceXjssc.Count)); //天津是时时彩 var sourceTjssc = new GenerateTjsscLotteryIssue().Generate(dt); foreach (var item in sourceTjssc) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化天津是时时彩{0}成功,总期数={1}!", dtStr, sourceTjssc.Count)); }
private static void Logic() { DataTable table = LotteryIssuesData.GetNotGroupByState(); Console.WriteLine("start--Logic"); if (table == null || table.Rows.Count < 0) { return; } Console.WriteLine("rowCount=" + table.Rows.Count); int[] userArray = new int[testUseridLst.Count]; testUseridLst.CopyTo(userArray); var rdm = new Random(); foreach (DataRow row in table.Rows) { int bettid = Convert.ToInt32(row["Id"]); decimal totalMonery = Convert.ToDecimal(row["TotalAmt"]); double Bili = Convert.ToDouble(row["Bili"]); decimal SurplusMonery = Convert.ToDecimal(row["SurplusMonery"]); //剩余认购金额 //bet.Id,bet.IssueCode,bet.BetCode,bet.LotteryCode,TotalAmt,Bili,SurplusMonery decimal bySubscription = SurplusMonery; while (SurplusMonery > 0) { var itemTotal = totalMonery * 0.5m; if (SurplusMonery > itemTotal) { bySubscription = SurplusMonery * 0.5m; } else { bySubscription = SurplusMonery; } SurplusMonery -= bySubscription; int userIndex = rdm.Next(0, userArray.Length - 1); Console.WriteLine("random index=" + userIndex); int userid = userArray[userIndex]; var item = new BuyTogether(); item.BetDetailId = bettid; item.BuyTogetherCode = "h" + Utils.BuilderNum(); item.UserId = userid; item.Subscription = bySubscription; new Thread(new ParameterizedThreadStart(AddTogetherAction)).Start(item); } } }
public static void Initital() { ThreadPool.QueueUserWorkItem(InintSsc, DateTime.Now); ThreadPool.QueueUserWorkItem(InintSsc, DateTime.Now.AddDays(1)); ThreadPool.QueueUserWorkItem(InintSsc, DateTime.Now.AddDays(2)); ThreadPool.QueueUserWorkItem(InintFc, DateTime.Now); ThreadPool.QueueUserWorkItem(InintFc, DateTime.Now.AddDays(1)); ThreadPool.QueueUserWorkItem(InintFc, DateTime.Now.AddDays(2)); ThreadPool.QueueUserWorkItem(InintZiZhu, DateTime.Now); ThreadPool.QueueUserWorkItem(InintZiZhu, DateTime.Now.AddDays(1)); ThreadPool.QueueUserWorkItem(InintZiZhu, DateTime.Now.AddDays(2)); ThreadPool.QueueUserWorkItem(InintJx, DateTime.Now); ThreadPool.QueueUserWorkItem(InintJx, DateTime.Now.AddDays(1)); ThreadPool.QueueUserWorkItem(InintJx, DateTime.Now.AddDays(2)); ThreadPool.QueueUserWorkItem(InintZiZhu11x5, DateTime.Now); ThreadPool.QueueUserWorkItem(InintZiZhu11x5, DateTime.Now.AddDays(1)); ThreadPool.QueueUserWorkItem(InintZiZhu11x5, DateTime.Now.AddDays(2)); var mLotteryIssuesData = new LotteryIssuesData(); //福彩3d var sourceFc3d = new GrnerateFc3dLotteryIssue().Generate(); foreach (var item in sourceFc3d) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始化福彩3d成功,总期数={0}!", sourceFc3d.Count)); //排列3、5 var pl35Source = new GrneratePl35LotteryIssue().Generate(); foreach (var item in pl35Source) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始化福彩3d成功,总期数={0}!", pl35Source.Count)); }
private static void InintZiZhu(object param) { DateTime dt = Convert.ToDateTime(param); string dtStr = dt.ToString("yyyy/MM/dd"); var mLotteryIssuesData = new LotteryIssuesData(); //一分彩 var sourcefenfecai = new Ytg.Scheduler.Comm.IssueBuilder.GenerategdYiFenCaiLotteryIssue().Generate(dt); foreach (var item in sourcefenfecai) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("分分彩 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化一分彩{0}成功,总期数={1}!", dtStr, sourcefenfecai.Count)); //二分彩 var sourceerfencai = new Ytg.Scheduler.Comm.IssueBuilder.GenerategdErFenCaiLotteryIssue().Generate(dt); foreach (var item in sourceerfencai) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("二分彩 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化二分彩{0}成功,总期数={1}!", dtStr, sourceerfencai.Count)); //五分彩 var sourcewufencai = new Ytg.Scheduler.Comm.IssueBuilder.GenerategdWuFenCaiLotteryIssue().Generate(dt); foreach (var item in sourcewufencai) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("五分彩 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //Console.WriteLine(r); } LogManager.Info(string.Format("初始化五分彩{0}成功,总期数={1}!", dtStr, sourcewufencai.Count)); }
public static void Initital() { var mLotteryIssuesData = new LotteryIssuesData(); var source = new Ytg.Scheduler.Comm.IssueBuilder.GenerateSscLotteryIssue().Generate(DateTime.Now); foreach (var item in source) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //江西时时彩 var sourcejxssc = new GenerateJxSscLotteryIssue().Generate(DateTime.Now); foreach (var item in sourcejxssc) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //黑龙江是时时彩 var sourceHljssc = new GenerateHljSscLotteryIssue().Generate(DateTime.Now); foreach (var item in sourceHljssc) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //新疆时时彩 var sourceXjssc = new GenerateXjsscLotteryIssue().Generate(DateTime.Now); foreach (var item in sourceXjssc) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //天津是时时彩 var sourceTjssc = new GenerateTjsscLotteryIssue().Generate(DateTime.Now); foreach (var item in sourceTjssc) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //十一选五 var source11x5 = new Generategd11x5LotteryIssue().Generate(DateTime.Now); foreach (var item in source11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //上海时时乐 var sourceShssl = new GenerateShangHaiSslLotteryIssue().Generate(DateTime.Now); foreach (var item in sourceShssl) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } ////北京快乐8 //var sourceBjkl8 = new GenerateBjkl8LotteryIssue().Generate(DateTime.Now); //foreach (var item in sourceBjkl8) //{ // mLotteryIssuesData.AddLotteryIssueCode(item); // string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); // Console.WriteLine(r); //} //福彩3d var sourceFc3d = new GrnerateFc3dLotteryIssue().Generate(); foreach (var item in sourceFc3d) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } //排列3、5 var pl35Source = new GrneratePl35LotteryIssue().Generate(); foreach (var item in pl35Source) { mLotteryIssuesData.AddLotteryIssueCode(item); string r = string.Format("IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); Console.WriteLine(r); } }
private void btnOpen_Click(object sender, EventArgs e) { List <OpenResultEntity> entitys = new List <OpenResultEntity>(); entitys.Add(new OpenResultEntity() { expect = this.txtIssue.Text.Trim(), opencode = this.txtOpenResult.Text.Trim(), opentime = DateTime.Now }); if (this.comboBox1.Text == "福彩3d") { lotteryid = 7; } else if (this.comboBox1.Text == "上海时时乐") { lotteryid = 8; } else if (this.comboBox1.Text == "五分11选5") { lotteryid = 18; } else if (this.comboBox1.Text == "排列三、五") { lotteryid = 9; } else if (this.comboBox1.Text == "江苏快三") { lotteryid = 22; } else if (this.comboBox1.Text == "三分11选5") { lotteryid = 17; } else if (this.comboBox1.Text == "香港六合彩") { lotteryid = 21; } else if (this.comboBox1.Text == "广东11选5") { lotteryid = 6; } else if (this.comboBox1.Text == "埃及分分彩") { lotteryCode = "FFC1"; lotteryid = 13; } else if (this.comboBox1.Text == "埃及二分彩") { lotteryCode = "FFC2"; lotteryid = 24; } else if (this.comboBox1.Text == "埃及五分彩") { lotteryCode = "FFC5"; lotteryid = 25; } var lt = new LotteryIssuesData(); Ytg.Scheduler.Tasks.Jobs.OpenOfficialResultJob job = new Tasks.Jobs.OpenOfficialResultJob(); Ytg.Scheduler.Tasks.Jobs.PoolParam param = new Ytg.Scheduler.Tasks.Jobs.PoolParam() { lotteryid = lotteryid,//7, LotteryIssues = entitys, }; job.UpdateLotteryIssueResult(param); }
private void button2_Click(object sender, EventArgs e) { if (this.comboBox1.Text == "福彩3d") { lotteryCode = "fc3d"; lotteryid = 7; } else if (this.comboBox1.Text == "上海时时乐") { lotteryCode = "shssl"; lotteryid = 8; } else if (this.comboBox1.Text == "五分11选5") { lotteryCode = "wf11x5"; lotteryid = 18; } else if (this.comboBox1.Text == "排列三、五") { lotteryCode = "pl5"; lotteryid = 9; } else if (this.comboBox1.Text == "江苏快三") { lotteryCode = "jsk3"; lotteryid = 22; } else if (this.comboBox1.Text == "三分11选5") { lotteryCode = "sf11x5"; lotteryid = 17; } else if (this.comboBox1.Text == "香港六合彩") { lotteryCode = "hk6"; lotteryid = 21; } else if (this.comboBox1.Text == "广东11选5") { lotteryCode = "gd11x5"; lotteryid = 6; } else if (this.comboBox1.Text == "埃及分分彩") { lotteryCode = "FFC1"; lotteryid = 13; } else if (this.comboBox1.Text == "埃及二分彩") { lotteryCode = "FFC2"; lotteryid = 24; } else if (this.comboBox1.Text == "埃及五分彩") { lotteryCode = "FFC5"; lotteryid = 25; } else if (this.comboBox1.Text == "重庆时时彩") { lotteryCode = "cqssc"; lotteryid = 1; } else if (this.comboBox1.Text == "印尼时时彩") { lotteryCode = "INFFC5"; lotteryid = 23; } else if (this.comboBox1.Text == "河内时时彩") { lotteryCode = "VIFFC5"; lotteryid = 14; } else if (this.comboBox1.Text == "河内时时彩") { lotteryCode = "VIFFC5"; lotteryid = 14; } var mLotteryIssuesData = new LotteryIssuesData(); //计算开奖结果 Ytg.Scheduler.Comm.Bets.BetDetailsCalculate betDetailsCalculate = new Ytg.Scheduler.Comm.Bets.BetDetailsCalculate(); string openresult = betDetailsCalculate.Calculate(lotteryCode, this.txtIssue.Text.Trim(), this.txtOpenResult.Text.Trim()); txtOpenResult.Text = openresult; bool compled = mLotteryIssuesData.UpdateResult(new OpenResultEntity() { expect = this.txtIssue.Text.Trim(), opencode = openresult, opentime = DateTime.Now }, lotteryCode); }
public YtgJob() { mLotteryIssuesData = new LotteryIssuesData(); }
public DataRecoveryJob() { mLotteryIssuesData = new LotteryIssuesData(); }
public OpenOfficialResultJob() { mHttpHelper = new HttpHelper(); mLotteryIssuesData = new LotteryIssuesData(); }
private void button1_Click(object sender, EventArgs e) { if (this.comboBox1.Text == "福彩3d") { lotteryid = 7; } else if (this.comboBox1.Text == "上海时时乐") { lotteryid = 8; } else if (this.comboBox1.Text == "五分11选5") { lotteryid = 18; } else if (this.comboBox1.Text == "排列三、五") { lotteryid = 9; } else if (this.comboBox1.Text == "江苏快三") { lotteryid = 22; } else if (this.comboBox1.Text == "三分11选5") { lotteryid = 17; } else if (this.comboBox1.Text == "香港六合彩") { lotteryid = 21; } else if (this.comboBox1.Text == "埃及分分彩") { lotteryCode = "FFC1"; lotteryid = 13; } else if (this.comboBox1.Text == "埃及二分彩") { lotteryCode = "FFC2"; lotteryid = 24; } else if (this.comboBox1.Text == "埃及五分彩") { lotteryCode = "FFC5"; lotteryid = 25; } else if (this.comboBox1.Text == "河内时时彩") { lotteryid = 14; } else if (this.comboBox1.Text == "印尼时时彩") { lotteryid = 23; } var issues = new LotteryIssuesData().GetIssueResultDTO(lotteryid); if (null == issues) { MessageBox.Show("获取失败!"); return; } this.txtIssue.Text = issues.datesn; this.lbtimes.Text = issues.code.ToString("yyyy/MM/dd HH:mm:ss"); }
private void CalculatePage(object obj) { PoolParam param = obj as PoolParam; string key = param.lotteryCode + "_" + param.Issue; if (param == null) { LogManager.Info("PoolParam 为null,直接返回!"); return; } if (param.WhileIndex > 3) { string betCodes = ""; param.Details.ForEach(x => betCodes += x.BetCode); LogManager.Error("投注超过三次计算,结束计算:" + betCodes); return; } string issueCode = param.Issue; string openResult = param.openResult; LogManager.Info("开始计算结果:" + param.ToString()); //IDbContextFactory factory = new DbContextFactory(); //var betDetailService = new BetDetailService(new Repo<BetDetail>(factory)); //var messageService = new MessageService(new Repo<Message>(factory)); List <BetDetail> source = param.Details; List <BetDetail> errorSource = new List <BetDetail>(); //循环进行计算 foreach (var item in source) { int code = item.PalyRadioCode; try { ICalculate calculate = RadioContentFactory.CreateInstance(code); LogManager.Info(string.Format("创建ICalculate code={0}; 对象为{1}", code, calculate.GetType().ToString())); calculate.Calculate(issueCode, openResult, item); item.OpenResult = openResult; if (item.IsMatch) { item.Stauts = BasicModel.BetResultType.Winning; //插入中奖消息 // messageService.Create(CreateMsg(item.BetCode, item.WinMoney, item.UserId, 0)); //messageService.Save(); LotteryIssuesData.CreateMessage(CreateMsg(item.BetCode, item.WinMoney, item.UserId, 0)); } else { item.Stauts = BasicModel.BetResultType.NotWinning; if (item.IsBuyTogether == 1) { //修改子项为未中奖 LotteryIssuesData.UpdateBuyTogerher(item.Id, 2, 0m); } } OpenOfficialQueue.CreateInstance().Put(item);//添加至更新队列 计算返点以及余额 //保存状态 // betDetailService.UpdateOpenState(item); if (!LotteryIssuesData.UpdateOpenState(item)) { errorSource.Add(item); } } catch (Exception ex) { LogManager.Error(string.Format("第{0}期,投注明细项id为{1} 计算过程中发生异常", issueCode, item.Id), ex); errorSource.Add(item);//失败项目,添加至列表中,稍后更新 } } int errorCount = errorSource.Count; if (errorCount > 0) { param.Details = errorSource; param.WhileIndex += 1; //继续计算 CalculatePage(param); LogManager.Info("计算失败项总数为" + errorCount + " 系统将继续计算!"); } //betDetailService.Save(); LogManager.Info("计算结果结束:" + param.ToString()); //完成计算 IssueBettingNumsing.CreateInstance().CompledRunning(key, param.pageIndex); }
/// <summary> /// 调用服务 去更新数据库开奖结果表 /// </summary> /// <param name="lotteryCode"></param> /// <param name="issueCode"></param> /// <param name="openResult"></param> /// <param name="openTime"></param> /// <returns></returns> public void UpdateLotteryIssueResult(object obj) { PoolParam param = obj as PoolParam; int lotteryid = param.lotteryid; List <OpenResultEntity> result = param.LotteryIssues; string lotteryType = ""; ConfigHelper.GetLotteryDictionary().TryGetValue(lotteryid, out lotteryType); var lotteryIssuesData = new LotteryIssuesData(); var betDetailsCalculate = new BetDetailsCalculate(); foreach (var item in result) { AutoSubmit.AutoSubmitBetting.Run(lotteryType); try { if (lotteryType == "tenct") { // if (YtgJob.AijFenfenAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "FFC1") { if (YtgJob.AiJErFenAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "twbingo") { if (YtgJob.AiJWuFenAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "krkeno") { if (YtgJob.Hg15Auto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "VIFFC5") { if (YtgJob.HeNeWuFenAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "INFFC5") { if (YtgJob.YiNiWuFenAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } else if (lotteryType == "xjssc") { if (YtgJob.tjAuto == 1) { AutoOpenResult(lotteryType, item.expect); continue; } } if (lotteryType.ToLower() == "bjkl8" && item.opencode.IndexOf('+') != -1) { //北京快乐8,去掉飞盘 item.opencode = item.opencode.Split('+')[0]; } else if (lotteryType.ToLower() == "krkeno" || lotteryType.ToLower() == "twbingo") { //韩国1.5分彩 //01,04,05,08, //10,11,14,15, //20,22,23,26, //29,31,34,43, //57,61,73,79 //08,09,13,16, //17,19,23,27, //30,34,49,51, //54,56,59,60, //68,73,74,79 + 08 if (item.opencode.IndexOf('+') >= 0) { item.opencode = item.opencode.Split('+')[0]; } var codeArray = item.opencode.Split(',');//开奖结果 if (codeArray.Length != 20) { return; } //四位计算和值尾数 var newCode = GetSumLastNum(codeArray.Skip(0).Take(4).ToArray()) + "," + GetSumLastNum(codeArray.Skip(4).Take(4).ToArray()) + "," + GetSumLastNum(codeArray.Skip(8).Take(4).ToArray()) + "," + GetSumLastNum(codeArray.Skip(12).Take(4).ToArray()) + "," + GetSumLastNum(codeArray.Skip(16).Take(4).ToArray()); item.opencode = newCode; } LogManager.Error("******************获取开奖结果 lotteryid=" + lotteryid + "***opencode=" + item.opencode + "**************"); bool isCompled = lotteryIssuesData.UpdateResult(item, lotteryid);//保存开奖结果 if (isCompled) { //取消延迟开奖 //if (DelayOpenLotteryCodes.Contains(lotteryType)) //{ // System.Threading.Thread.Sleep(1000 * 30); //} betDetailsCalculate.Calculate(lotteryType, item.expect, item.opencode);//计算投注明细中奖金额 LogManager.Info(string.Format("计算开奖成功: type={0},lotteryCode={1}", lotteryType, item.expect)); } } catch (Exception ex) { LogManager.Error("OpenLotteryResultJob->UpdateLotteryIssueResult异常", ex); } } }
/// <summary> /// 更新用户id缓存 /// </summary> private static void UpdateCatchUserid() { testUseridLst = LotteryIssuesData.GetCatchUserLst(); }
/// <summary> /// 追号处理模块 /// </summary> /// <param name="obj"></param> protected void CalculateCatchPage(object obj) { PoolCatchParam param = obj as PoolCatchParam; if (param.WhileIndex > 3) { string betCodes = ""; param.Details.ForEach(x => betCodes += x.CatchNumCode); LogManager.Error("追号超过三次计算,结束计算:" + betCodes); return; } string issueCode = param.Issue; string openResult = param.openResult; string key = param.lotteryCode + "_" + param.Issue; List <BasicModel.LotteryBasic.DTO.NotCompledCatchNumListDTO> source = param.Details; List <BasicModel.LotteryBasic.DTO.NotCompledCatchNumListDTO> errorSource = new List <NotCompledCatchNumListDTO>(); IDbContextFactory factory = new DbContextFactory(); var sysCatchNumIssueService = new SysCatchNumIssueService(new Repo <CatchNumIssue>(factory)); var sysCatchNumService = new SysCatchNumService(new Repo <CatchNum>(factory)); foreach (var item in source) { int code = item.PalyRadioCode; try { ICalculate calculate = RadioContentFactory.CreateInstance(code); var betDetail = new BetDetail() { BackNum = item.BackNum, BetContent = item.BetContent, BetCount = item.BetCount, BonusLevel = item.BonusLevel, IsMatch = item.IsMatch, IssueCode = item.IssueCode, Model = item.Model, Multiple = item.Multiple, OpenResult = item.OpenResult, PalyRadioCode = item.PalyRadioCode, PrizeType = item.PrizeType, TotalAmt = item.TotalAmt, UserId = item.UserId, // WinMoney = item.WinMoney, }; calculate.Calculate(issueCode, openResult, betDetail); //获取追号信息 var catchItem = sysCatchNumService.Get(item.Id); //获取追号当期信息 var catchNumItem = sysCatchNumIssueService.Get(item.CuiId); if (betDetail.IsMatch) { catchNumItem.Stauts = BasicModel.BetResultType.Winning; catchNumItem.WinMoney = betDetail.WinMoney; catchItem.WinIssue += 1; string content = string.Format("\t编号为【{0}】的方案已中奖 <span style=\"color:red;\">{1}</span> 元,请注意查看您的帐变信息,如有任何疑问请联系在线客服。\t\n", item.CatchNumCode, string.Format("{0:N}", catchNumItem.WinMoney)); //messageService.Create(); //messageService.Save(); LotteryIssuesData.CreateMessage(CreateMsg(content, 0, item.UserId, 1)); } else { catchNumItem.Stauts = BasicModel.BetResultType.NotWinning; } // //catchNumItem.OccDate = DateTime.Now; catchNumItem.IsMatch = betDetail.IsMatch; catchNumItem.OpenResult = openResult; if (betDetail.IsMatch && item.IsAutoStop)//中奖,并且设置为中奖后自动结束 { catchItem.Stauts = BasicModel.CatchNumType.Compled; } catchItem.WinMoney = catchItem.WinMoney + betDetail.WinMoney; catchItem.CompledIssue = catchItem.CompledIssue + 1; catchItem.CompledMonery = catchItem.CompledMonery + catchNumItem.TotalAmt; //修改信息 sysCatchNumIssueService.Save(); // sysCatchNumService.Save(); //修改未开奖追号期数occdate时间 sysCatchNumIssueService.UpdateNoOpenOccDateTime(item.CatchNumCode); OpenOfficialCatchQueueParam queqeParam = new OpenOfficialCatchQueueParam(); //处理队列 queqeParam.CatchDetail = item; queqeParam.CatchNumIssue = catchNumItem; //当前追号期数 if (catchItem.Stauts == CatchNumType.Compled) { //结束本次追号,对未完成追号的撤单 var exitNums = sysCatchNumIssueService.GetLastCatchNum(item.CatchNumCode, catchNumItem.IssueCode); if (null == exitNums) { return; } int exitCount = exitNums.Count; catchItem.SysCannelIssue = exitCount;//保存中奖后结束期数 //修改结束期数状态 foreach (var exit in exitNums) { exit.Stauts = BetResultType.SysCancel; catchItem.UserCannelMonery += exit.TotalAmt; } sysCatchNumIssueService.Save(); //保存状态 queqeParam.ExitCatNumIssues = exitNums; //终止追号期数 } else if ((catchItem.CompledIssue + catchItem.SysCannelIssue + catchItem.UserCannelIssue) >= catchItem.CatchIssue) { //验证是否有剩余期数,若无剩余期数,本次追号完成 catchItem.Stauts = CatchNumType.Compled; } sysCatchNumService.Save(); //添加至队列 OpenOfficialCatchQueue.CreateInstance().Put(queqeParam); } catch (Exception ex) { LogManager.Error(string.Format("第{0}期,追号项id为{1} 计算过程中发生异常;", issueCode, item.Id), ex); errorSource.Add(item); } int errorCount = errorSource.Count; if (errorCount > 0) { param.Details = errorSource; //继续计算 param.WhileIndex += 1; CalculatePage(param); LogManager.Info("追号计算失败项总数为" + errorCount + " 系统将继续计算!"); } //完成计算 IssueCatchNumsing.CreateInstance().CompledRunning(key, param.pageIndex); } }
public OpenYifenLotteryResultJob() { mBetDetailsCalculate = new FenBetDetailsCalculate(); mLotteryIssuesData = new LotteryIssuesData(); }
static Pcqq() { mLotteryIssuesData = new LotteryIssuesData(); mBetDetailsCalculate = new BetDetailsCalculate(); }
public OpenLotteryResultJob() { mHttpHelper = new HttpHelper(); mLotteryIssuesData = new LotteryIssuesData(); mBetDetailsCalculate = new BetDetailsCalculate(); }
private static void InintZiZhu11x5(object param) { DateTime dt = Convert.ToDateTime(param); string dtStr = dt.ToString("yyyy/MM/dd"); var mLotteryIssuesData = new LotteryIssuesData(); //五分11选5 var sourcewf11x5 = new Ytg.Scheduler.Comm.IssueBuilder.Generatewf11x5LotteryIssue().Generate(dt); foreach (var item in sourcewf11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("五分11选5 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //LogManager.Info("=====五分11选5=============" + r); } LogManager.Info(string.Format("初始山五分11选5{0}成功,总期数={1}!", dtStr, sourcewf11x5.Count)); //二分11选5 var sourceef11x5 = new Ytg.Scheduler.Comm.IssueBuilder.GenerateErf11x5LotteryIssue().Generate(dt); foreach (var item in sourceef11x5) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("二分11选5 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //LogManager.Info("=====二分11选5=============" + r); } LogManager.Info(string.Format("初始山二分11选5{0}成功,总期数={1}!", dtStr, sourceef11x5.Count)); //江苏快三 var sourceefjsks = new Ytg.Scheduler.Comm.IssueBuilder.Generategdjsk3LotteryIssue().Generate(dt); foreach (var item in sourceefjsks) { mLotteryIssuesData.AddLotteryIssueCode(item); //string r = string.Format("江苏快三 IssueCode={0},StartTime={1},EndSaleTime={2},EndTime={3}", item.IssueCode, item.StartTime.ToString("dd HH:mm:ss"), item.EndSaleTime.Value.ToString("dd HH:mm:ss"), item.EndTime.Value.ToString("dd HH:mm:ss")); //LogManager.Info("=====江苏块3=============" + r); } LogManager.Info(string.Format("初始山江苏快三{0}成功,总期数={1}!", dtStr, sourceefjsks.Count)); //埃及分分彩 var aijifenfenSource = new Ytg.Scheduler.Comm.IssueBuilder.GenerateAijiYiFenCaiLotteryIssue().Generate(dt); foreach (var item in aijifenfenSource) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始山埃及分分彩{0}成功,总期数={1}!", dtStr, aijifenfenSource.Count)); //河内5分成 var hnfenfenSource = new Ytg.Scheduler.Comm.IssueBuilder.GenerateHNSscLotteryIssue().Generate(dt); foreach (var item in hnfenfenSource) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始河内时时彩{0}成功,总期数={1}!", dtStr, hnfenfenSource.Count)); //构建埃及二分彩 try { //埃及分分彩 var aijierFenCai = new Ytg.Scheduler.Comm.IssueBuilder.GenerateAijiLiangFenSscLotteryIssue().Generate(dt); foreach (var item in aijierFenCai) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始埃及二分彩{0}成功,总期数={1}!", dtStr, aijierFenCai.Count)); } catch (Exception ex) { LogManager.Error("埃及二分彩", ex); } //构建埃及五分彩 try { var aijiSource = new Ytg.Scheduler.Comm.IssueBuilder.GenerateAiJiSscLotteryIssue().Generate(dt); foreach (var item in aijiSource) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始埃及五分彩{0}成功,总期数={1}!", dtStr, aijiSource.Count)); } catch (Exception ex) { LogManager.Error("生成河埃及五分彩成异常:" + ex.Message); } //构建印尼时时彩 try { var yinniSource = new Ytg.Scheduler.Comm.IssueBuilder.GenerateYNSscLotteryIssue().Generate(dt); foreach (var item in yinniSource) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始印尼时时彩{0}成功,总期数={1}!", dtStr, yinniSource.Count)); } catch (Exception ex) { LogManager.Error("生成印尼彩成异常:" + ex.Message); } //pk10 try { var pk10Source = new Ytg.Scheduler.Comm.IssueBuilder.GeneratePk_10LotteryIssue().Generate(dt); foreach (var item in pk10Source) { mLotteryIssuesData.AddLotteryIssueCode(item); } LogManager.Info(string.Format("初始PK10{0}成功,总期数={1}!", dtStr, pk10Source.Count)); } catch (Exception ex) { LogManager.Error("生成PK10成异常:" + ex.Message); } }
public GenerateShangHaiSSlLotteryIssueJob() { mLotteryIssuesData = new LotteryIssuesData(); }
public GenerateJxsscLotteryIssueJob() { mLotteryIssuesData = new LotteryIssuesData(); }
private static void Submit(object type) { string lotterycode = type.ToString(); Console.WriteLine("lotterycode:" + lotterycode); try { if (Ytg.Scheduler.Tasks.AutoGroupBy.Run.testUseridLst == null || Ytg.Scheduler.Tasks.AutoGroupBy.Run.testUseridLst.Count < 1) { return; } SubmitConfig config = siteConfigs.Where(x => x.lotteryCode.ToLower() == lotterycode.ToLower()).FirstOrDefault(); if (config == null) { return; } string issuecode = LotteryIssuesData.GetNowIssue(config.LotteryId); int[] userArray = new int[Ytg.Scheduler.Tasks.AutoGroupBy.Run.testUseridLst.Count]; Ytg.Scheduler.Tasks.AutoGroupBy.Run.testUseridLst.CopyTo(userArray); int index = 0; while (index < subCount) { int userid = userArray[userRdm.Next(0, userArray.Length)]; LogManager.Info("自动发起订单:用户id=" + userid + " lotterycode:" + lotterycode + " issuecode:" + issuecode); if (string.IsNullOrEmpty(issuecode)) { return; } NameValueCollection pars = new NameValueCollection(); pars.Add("pmode", "0"); //模式 0为元 pars.Add("lt_issue_start", issuecode); //购买期数 pars.Add("lt_trace_if", "no"); //是否追号 pars.Add("lt_trace_stop", "no"); //是否中奖后自动停止 pars.Add("lt_trace_issues[]", ""); //追号期数 pars.Add("lotterycode", lotterycode); //彩种id pars.Add("loginUserId", userid.ToString()); //彩种id pars.Add("operate2", "1"); //合买 1 pars.Add("createrBuyPieces", "0"); //最低购买金额若未合买,最低购买金额,默认10% pars.Add("hidgame_tzallmon", "0"); //注单总金额 pars.Add("baomi_hidden", "0"); //保密状态为公开 pars.Add("action", "htdbetdetail"); //action pars.Add("f_N_robmt", "robmit"); pars.Add("lotteryid", config.LotteryId.ToString());//彩种id var parContent = RandomLotteryContent(config); pars.Add("lt_project[]", Newtonsoft.Json.JsonConvert.SerializeObject(parContent));//投注内容 string postResult = HttpPostRequest(Comm.ConfigHelper.RombmitUrl, pars); LogManager.Info("post result :" + postResult); index++; } } catch (Exception e) { LogManager.Error("AutoSubmitBetting.Submit", e); } }