private void btnSync_Click(object sender, EventArgs e) { try { this.btnSync.Enabled = false; this.btnCheck.Enabled = false; this.btnSaveOneIssue.Enabled = false; this.btnAnalyse.Enabled = false; UpdateInfo("从500.com同步开奖数据中....请勿计算"); ThreadFactory.AddTask(new ThreadProxy(SyncData)); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void btnCheck_Click(object sender, EventArgs e) { if (_currentCalculateIssues == null || _currentCalculateIssues.Count == 0) { MessageBox.Show("请先同步数据在检查遗漏的数据!"); return; } this.btnSync.Enabled = false; this.btnCheck.Enabled = false; this.btnSaveOneIssue.Enabled = false; this.btnAnalyse.Enabled = false; this.tabControlCalculate.SelectedTab = tabCommon; this.richTextBoxCommon.Text = ""; UpdateInfo("检查历史数据是否缺失....请勿计算"); ThreadFactory.AddTask(new ThreadProxy(CheckMissData)); }
private void btnCreateSln_Click(object sender, EventArgs e) { if (this.lbJiang.Items.Count == 0 || this.lbQcw.Items.Count == 0) { MessageBox.Show("左侧账号不足够同时在2个网站投注,请导入账号重试!", "提示", MessageBoxButtons.OK); return; } else if (this.cboxSln.SelectedIndex == 1 && this.lbQcw.Items.Count < 3) { MessageBox.Show("方案2必须保证左侧趣彩网至少有3个账号才行,\r\n请选择方案一或者导入账号重试!", "提示", MessageBoxButtons.OK); return; } //this.btnCreateSln.BeginInvoke( // new MethodInvoker(CreateSln) // ); currentBetModels = new List <BettingSolutinModel>(); this.btnCreateSln.Enabled = false; this.btnBet.Enabled = false; this.lblInfo.Text = "方案生成中,请稍候...."; ThreadFactory.AddTask(new ThreadProxy(CreateSln, this.cboxSln.SelectedIndex)); }
private void btnSaveOneIssue_Click(object sender, EventArgs e) { try { if (this.txtIssue.Text.Trim().Length != 11 || this.txtNumber.Text.Trim().Length != 5) { MessageBox.Show("手动录入的数据错误,请检测无误后再保存!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } this.btnSync.Enabled = false; this.btnCheck.Enabled = false; this.btnSaveOneIssue.Enabled = false; this.btnAnalyse.Enabled = false; UpdateInfo("保存手动录入的数据中...."); ThreadFactory.AddTask(new ThreadProxy(SaveOneData)); } catch (Exception ex) { MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnBet_Click(object sender, EventArgs e) { if (currentBetModels == null || currentBetModels.Count == 0) { MessageBox.Show("没有投注方案,不要瞎按,按下去都是钱啊!", "提示", MessageBoxButtons.OK); return; } if (currentBetModels == null || currentBetModels.Count == 1) { MessageBox.Show("必须同时又2个网站的方案才可投注,请重新生成方案!", "提示", MessageBoxButtons.OK); return; } bool isOK = true; string mssage = "当前方案不可投注:\r\n"; foreach (BettingSolutinModel m in currentBetModels) { if (m.AccountMoney < m.TotalReallyPayMoney) { mssage += String.Format("{0}账号【{1}】没有足够的余额!", m.BelongsStr, m.LoginName); isOK = false; break; } if (m.MaxRedTheory > m.MaxRedUse) { mssage += "红包余额不足,此单理论可以使用" + m.MaxRedTheory + ",实际账户只有" + m.MaxRedUse + "!"; isOK = false; break; } } if (!isOK) { MessageBox.Show(mssage, "提示", MessageBoxButtons.OK); return; } if (!ValidConfig()) { return; } string currentIssue = this.txtIssue.Text.Trim(); if (string.IsNullOrEmpty(currentIssue) || currentIssue.Length != 12) { MessageBox.Show("警告:期号错误或者在更行期次中,不要投注!\r\n等下期!等下期!等下期!", "警告", MessageBoxButtons.OK); return; } int sndLeft = 0; int.TryParse(this.lblCounter.Text.Trim().Replace('-', '0'), out sndLeft); if (sndLeft < 60) { if ( MessageBox.Show("警告:投注剩余时间不足1分钟,\r\n如果出现错误没有时间及时手动补单,建议不要投注!\r\n等下期!等下期!等下期!\r\n\r\n 是否继续投注?", "警告", MessageBoxButtons.YesNo) == DialogResult.Yes) { this.btnCreateSln.Enabled = false; this.btnBet.Enabled = false; this.lblInfo.Text = "方案投注中,请稍候...."; ThreadFactory.AddTask(new ThreadProxy(BettingSln, currentIssue)); } } else { this.btnCreateSln.Enabled = false; this.btnBet.Enabled = false; this.lblInfo.Text = "方案投注中,请稍候...."; ThreadFactory.AddTask(new ThreadProxy(BettingSln, currentIssue)); } }
private void SyncData() { try { _currentCalculateIssues = DataController.ReaderDaysIssue(GlobalConstants.ReadDataDays); List <string> dayIssueList = GlobalConstants.DayIssueList(); for (int i = 0; i <= GlobalConstants.ReadDataDays; i++) { DateTime day = DateTime.Now.AddDays(0 - i); UpdateInfo("同步[" + day.ToString("yyyy-MM-dd") + "]开奖数据中...."); bool allSync = true; List <string> lostIssues = new List <string>(); List <string> notSyncIssues = new List <string>(); foreach (string issue in dayIssueList) { string issueTmp = day.ToString("yyyyMMdd") + issue; var m = _currentCalculateIssues.Find(a => a.StrIssue == issueTmp); if (m == null) { lostIssues.Add(issueTmp); allSync = false; } else if (m.IsSync == false) { notSyncIssues.Add(issueTmp); allSync = false; } }//end find and compare if (allSync == false) { string msg = ""; List <IssueModel> models500 = new DataReader().ReaderDataFrom500(day.ToString("yyyyMMdd"), out msg); if (!string.IsNullOrEmpty(msg)) { UpdateInfo(msg); continue; } foreach (var m500 in models500) { if (lostIssues.Contains(m500.StrIssue)) { //do insert both in DB and _currentCalculateIssues m500.sync = 1; DataController.InsertIssueModel2Db(m500); _currentCalculateIssues.Add(m500); } else if (notSyncIssues.Contains(m500.StrIssue)) { //do update both in DB and _currentCalculateIssues m500.sync = 1; DataController.UpdateIssueModel2Db(m500); int exchangeIndex = _currentCalculateIssues.FindIndex(a => a.StrIssue == m500.StrIssue); _currentCalculateIssues[exchangeIndex] = m500; } } } UpdateInfo("同步[" + day.ToString("yyyy-MM-dd") + "]开奖数据完成...."); } UpdateInfo("同步全部开奖数据完成!"); ThreadFactory.AddTask(new ThreadProxy(BindGridData)); this.btnSync.BeginInvoke(new MethodInvoker(delegate() { this.btnSync.Enabled = true; })); this.btnCheck.BeginInvoke(new MethodInvoker(delegate() { this.btnCheck.Enabled = true; })); this.btnSaveOneIssue.BeginInvoke(new MethodInvoker(delegate() { this.btnSaveOneIssue.Enabled = true; })); this.btnAnalyse.BeginInvoke(new MethodInvoker(delegate() { this.btnAnalyse.Enabled = true; })); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void SaveOneData() { try { IssueModel m = new IssueModel(); m.StrIssue = this.txtIssue.Text.Trim(); string code = this.txtNumber.Text.Trim(); m.Wan = int.Parse(code.Substring(0, 1)); m.Qian = int.Parse(code.Substring(1, 1)); m.Bai = int.Parse(code.Substring(2, 1)); m.Shi = int.Parse(code.Substring(3, 1)); m.Ge = int.Parse(code.Substring(4, 1)); m.OpenCode = m.Wan + "," + m.Qian + "," + m.Bai + "," + m.Shi + "," + m.Ge; m.OpenTime = DateTime.Now.ToString("yyyy-MM-dd HH:MM:ss"); m.sync = 0; if (DataController.InsertOrUpdateIssueModel2Db(m)) { string msg = "保存第" + m.StrIssue + "期数据成功"; UpdateInfo(msg); if (!_currentCalculateIssues.Exists(a => a.StrIssue == m.StrIssue)) { _currentCalculateIssues.Add(m); } else { var index = _currentCalculateIssues.FindIndex(a => a.StrIssue == m.StrIssue); _currentCalculateIssues[index] = m; } ThreadFactory.AddTask(new ThreadProxy(BindGridData)); MessageBox.Show(msg); } else { string msg = "保存第" + m.StrIssue + "期数失败,请重试!"; UpdateInfo(msg); MessageBox.Show(msg); } } catch (Exception ex) { UpdateInfo("保存失败"); MessageBox.Show("保存失败:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { this.btnSync.BeginInvoke(new MethodInvoker(delegate() { this.btnSync.Enabled = true; })); this.btnCheck.BeginInvoke(new MethodInvoker(delegate() { this.btnCheck.Enabled = true; })); this.btnSaveOneIssue.BeginInvoke(new MethodInvoker(delegate() { this.btnSaveOneIssue.Enabled = true; })); this.btnAnalyse.BeginInvoke(new MethodInvoker(delegate() { this.btnAnalyse.Enabled = true; })); } }