PageRenderTime 57ms CodeModel.GetById 27ms RepoModel.GetById 0ms app.codeStats 0ms

/SqlCompact/Soccer Score Forecast/Soccer Score Forecast/Soccer Score Forecast.cs

http://htmlconvertsql.googlecode.com/
C# | 813 lines | 736 code | 14 blank | 63 comment | 49 complexity | d540829b4481e513b07c93021969378e MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Drawing;
  5. using System.IO;
  6. using System.Text;
  7. using System.Threading;
  8. using System.Windows.Forms;
  9. using MathWorks.MATLAB.NET.Arrays;
  10. using System.Runtime.InteropServices;
  11. using System.Text.RegularExpressions;
  12. using mshtml;
  13. using System.Net;
  14. using System.Data.Linq;
  15. using System.Data.Linq.Mapping;
  16. using System.Reflection;
  17. using System.Linq.Expressions;
  18. using System.ComponentModel;
  19. using HtmlAgilityPack;
  20. using SoccerScore.Compact.Linq;
  21. using System.Linq;
  22. using System.Collections;
  23. using System.Windows.Forms.DataVisualization.Charting;
  24. namespace Soccer_Score_Forecast
  25. {
  26. public partial class Form1 : Form
  27. {
  28. public Form1()
  29. {
  30. InitializeComponent();
  31. ProgressBarDelegate.sendPEvent += new ProgressBarDelegate.SendPMessage(this.fileConvertListProgress);
  32. }
  33. string appPath = Application.StartupPath.ToString();
  34. string textboxDate;
  35. bool liveLib;
  36. bool insertComplete;
  37. static int ViewmatchOverDays = -1;
  38. LoadDataToTree loaddatatree = new LoadDataToTree(ViewmatchOverDays);
  39. private void initTreeToolStripMenuItem_Click(object sender, EventArgs e)
  40. {
  41. MessageBox.Show(ViewmatchOverDays.ToString());
  42. loaddatatree.initTreeNode(ViewmatchOverDays);
  43. }
  44. private void Form1_Load(object sender, EventArgs ee)
  45. {
  46. dataGridView5.Visible = false;
  47. toolStripStatusLabel2.Text = dateTimePicker2.Value.ToString("yyyy-MM-dd");//??????????????
  48. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  49. //{
  50. toolStripStatusLabel3.Text = Conn.match.Result_tb_lib.Max(p => p.Match_time).Value.ToString();
  51. var maxtime = Conn.match.Live_Table_lib.Max(p => p.Match_time);
  52. toolStripStatusLabel4.Text = maxtime.HasValue ? maxtime.Value.ToString() : null;
  53. //}
  54. treeView5.Nodes.Clear();
  55. loaddatatree.TreeViewmatch(treeView5, "type");
  56. dateTimePicker1.Value = DateTime.Parse(toolStripStatusLabel3.Text);
  57. }
  58. private void button1_Click(object sender, EventArgs e)
  59. {
  60. toolStripStatusLabel1.Text = "download table......";
  61. liveLib = true;
  62. textBox1.Text = "http://live2.7m.cn/cpk_ft.aspx?view=all&match=&line=no&ordType=";
  63. }
  64. private void dateTimePicker2_ValueChanged(object sender, EventArgs e)
  65. {
  66. //toolStripStatusLabel1.Text = "download table......";
  67. //liveLib = false;
  68. //string strdp = dateTimePicker2.Value.ToString("yyyy-MM-dd");
  69. //textBox1.Text = "http://data2.7m.cn/Result_data/default_big.shtml?date=" + strdp;
  70. }
  71. private void button2_Click(object sender, EventArgs e)
  72. {
  73. liveLib = false;
  74. while (dateTimePicker1.Value.Date <= DateTime.Now.AddDays(-1).Date)
  75. {
  76. string strdp = dateTimePicker1.Value.ToString("yyyy-MM-dd");
  77. string dp = "http://data2.7m.cn/Result_data/default_big.shtml?date=" + strdp;
  78. listBox1.Items.Add(dp);
  79. dateTimePicker1.Value = dateTimePicker1.Value.AddDays(1);
  80. }
  81. toolStripProgressBar1.Maximum = listBox1.Items.Count;
  82. for (int i = 0; i < listBox1.Items.Count; i++)
  83. {
  84. toolStripStatusLabel1.Text = "download table......";
  85. toolStripProgressBar1.Value = i;
  86. textBox1.Text = listBox1.Items[i].ToString();
  87. while (!insertComplete) Application.DoEvents();
  88. }
  89. }
  90. private void textBox1_TextChanged(object sender, EventArgs e)
  91. {
  92. insertComplete = false;
  93. this.webBrowser1.Navigate(textBox1.Text);
  94. if (liveLib == true)
  95. {
  96. textboxDate = DateTime.Now.ToString("yyyy-MM-dd");
  97. }
  98. else
  99. {
  100. int p = textBox1.Text.IndexOf("=");
  101. textboxDate = textBox1.Text.Substring(p + 1, 10);
  102. }
  103. }
  104. private void button3_Click(object sender, EventArgs c)
  105. {
  106. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  107. //{
  108. var mar = from a in Conn.match.Match_analysis_result
  109. join b in Conn.match.Live_Table_lib on a.Live_table_lib_id equals b.Live_table_lib_id
  110. select new
  111. {
  112. a.Result_wdl,
  113. a.Result_fit,
  114. a.Result_goals,
  115. b.Match_type
  116. };
  117. var winrate = from p in mar
  118. group p by p.Match_type into q
  119. select new
  120. {
  121. q.Key,
  122. fitW = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_fit == "W").Count(),
  123. fitL = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_fit == "L").Count(),
  124. goalsW = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_goals == "W").Count(),
  125. goalsL = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_goals == "L").Count(),
  126. wdlW = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_wdl == "W").Count(),
  127. wdlL = q.Where(e => e.Match_type == q.Key).Where(e => e.Result_wdl == "L").Count(),
  128. };
  129. dataGridView1.DataSource = winrate;
  130. //}
  131. }
  132. //????????????????????treeView?????txt??sql??
  133. private void treeView2_AfterSelect(object sender, TreeViewEventArgs e)
  134. {
  135. try
  136. {
  137. string selectFile = appPath + "\\" + e.Node.Parent.Text.ToString() + "\\" + e.Node.Text.ToString();
  138. StreamReader reader = new StreamReader(selectFile);
  139. richTextBox2.Text = reader.ReadToEnd();
  140. reader.Close();
  141. }
  142. catch { }
  143. }
  144. private void treeView1_AfterSelect(object sender, TreeViewEventArgs c)
  145. {
  146. }
  147. private void toolStripTextBox1_TextChanged(object sender, EventArgs e)
  148. {
  149. }
  150. //??????????
  151. private void button6_Click(object sender, EventArgs e)
  152. {
  153. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  154. //{
  155. dataGridView1.DataSource = Conn.match.Match_table_xpath;
  156. //}
  157. }
  158. private void filtermatchToolStripMenuItem_Click(object sender, EventArgs e)
  159. {
  160. treeView5.Nodes.Clear();
  161. loaddatatree.TreeViewmatch(treeView5, "type");
  162. }
  163. //treeView???????
  164. private void todaymatchToolStripMenuItem_Click(object sender, EventArgs e)
  165. {
  166. }
  167. private void toolStripButton_iniLast_Click(object sender, EventArgs e)
  168. {
  169. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  170. //{
  171. int pb = Conn.match.Result_tb.Count();
  172. toolStripProgressBar1.Maximum = pb;
  173. MessageBox.Show(pb.ToString());
  174. //}
  175. SevenmResultToSql sevenm = new SevenmResultToSql();
  176. sevenm.UpdateLastmatch();
  177. }
  178. private void fileConvertListProgress(int i)
  179. {
  180. toolStripProgressBar1.Value = i;
  181. toolStripLabel2.Text = i.ToString();
  182. }
  183. private void toolStripButton_iniToday_Click(object sender, EventArgs e)
  184. {
  185. SevenmLiveToSql sevenm = new SevenmLiveToSql();
  186. sevenm.UpdateTodaymatch();
  187. }
  188. private void toolStripButton_exitSystem_Click(object sender, EventArgs e)
  189. {
  190. this.Close();
  191. this.Dispose();
  192. }
  193. private void button4_Click(object sender, EventArgs e)
  194. {
  195. this.listView2.View = View.Details;
  196. listView2.Items.Clear();
  197. listView2.Items.Add("http://data.7m.cn/lottery/WSfc_fixture.shtml");
  198. listView2.Items.Add("http://buy.okooo.com/Lottery06/BJBetIndex.php?LotteryType=WDL");
  199. listView2.Items.Add("http://www.totochina.com/happypool/sp/sp.jsp");
  200. listView2.Items.Add("http://data1.7m.cn/fixture_data/default_big.shtml?date=1");
  201. listView2.Items.Add("http://web.macauslot.com/soccer/html/predictions.html");
  202. //listView2.Items.Add("http://ms.7m.cn/default_big.shtml");
  203. listView2.Items.Add("http://live2.7m.cn/cpk_ft.aspx?view=all&amp;match=&amp;line=no&amp;ordType=");
  204. listView2.Items.Add("http://live.aibo123.com/bifen/indexBeiDan.shtml?lang=&isc=");
  205. listView2.Items.Add("http://1x2.bet007.com/");
  206. string strdp = DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd");
  207. string dp = "http://data2.7m.cn/Result_data/default_big.shtml?date=" + strdp;
  208. listView2.Items.Add(dp);
  209. listView2.Columns[0].Width = 500;
  210. }
  211. private void button5_Click(object sender, EventArgs e)
  212. {
  213. richTextBox4.Text = webBrowser2.Document.Body.InnerHtml;
  214. }
  215. //??????LOG??
  216. private void button7_Click(object sender, EventArgs e)
  217. {
  218. }
  219. private void textBox3_TextChanged(object sender, EventArgs e)
  220. {
  221. toolStripStatusLabel1.Text = "download table......";
  222. webBrowser2.Navigate(textBox3.Text);
  223. }
  224. //?listView?????????
  225. private void listView2_SelectedIndexChanged(object sender, EventArgs e)
  226. {
  227. try
  228. {
  229. textBox3.Text = listView2.SelectedItems[0].Text;
  230. Application.DoEvents();
  231. }
  232. catch { }
  233. }
  234. //??DateTable???????????????
  235. private void toolStripButton_resultEvaluate_Click(object sender, EventArgs c)
  236. {
  237. ForecastAlgorithm f = new ForecastAlgorithm();
  238. int pb = f.idExc.Count();
  239. MessageBox.Show(pb.ToString());
  240. if (pb != 0)
  241. {
  242. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  243. //{
  244. dmatch.dHome = Conn.match.Result_tb_lib.ToLookup(e => e.Home_team_big);
  245. dmatch.dAway = Conn.match.Result_tb_lib.ToLookup(e => e.Away_team_big);
  246. //}
  247. toolStripProgressBar1.Maximum = pb;
  248. f.top20Algorithm();
  249. }
  250. }
  251. private void toolStripButton_todayEvaluate_Click(object sender, EventArgs e)
  252. {
  253. UpdateAnalysisResult u = new UpdateAnalysisResult();
  254. int pb = u.ExecUpateCount;
  255. MessageBox.Show(pb.ToString());
  256. toolStripProgressBar1.Maximum = pb;
  257. u.ExecUpdate();
  258. }
  259. private void selectmatchToolStripMenuItem_Click(object sender, EventArgs e)
  260. {
  261. listBox2.Items.Add(toolStripStatusLabel3.Text);
  262. }
  263. private void toolStripLabel2_Click(object sender, EventArgs e)
  264. {
  265. }
  266. private void todaymatchTimeToolStripMenuItem_Click(object sender, EventArgs c)
  267. {
  268. treeView5.Nodes.Clear();
  269. loaddatatree.TreeViewmatch(treeView5, "time");
  270. }
  271. //?html??tree???
  272. private void button8_Click(object sender, EventArgs e)
  273. {
  274. treeView3.Nodes.Clear();
  275. LoadHtmlToTree lhtt = new LoadHtmlToTree(webBrowser2.Document.Body.InnerHtml);
  276. lhtt.ConvertHtmlToTree(treeView3);
  277. }
  278. private void button9_Click(object sender, EventArgs e)
  279. {
  280. }
  281. private void button10_Click(object sender, EventArgs e)
  282. {
  283. }
  284. private void button11_Click(object sender, EventArgs e)
  285. {
  286. }
  287. //C# ??Http?? - WebClient? WebClient??System.Net??????????????????Http??????????
  288. //????1 - DownloadData
  289. private void button12_Click(object sender, EventArgs e)
  290. {
  291. string uri = "http://data1.7m.cn/Result_data/default_big.shtml?date=2003-01-01";
  292. System.Net.WebClient wc = new WebClient();
  293. byte[] bResponse = wc.DownloadData(uri);
  294. string strResponse = Encoding.ASCII.GetString(bResponse);
  295. richTextBox5.Text = strResponse;
  296. }
  297. //????2 - OpenRead
  298. private void button13_Click(object sender, EventArgs e)
  299. {
  300. string uri = "http://data1.7m.cn/Result_data/default_big.shtml?date=2003-01-01";
  301. WebClient wc = new WebClient();
  302. wc.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
  303. Stream st = wc.OpenRead(uri);
  304. StreamReader sr = new StreamReader(st);
  305. string res = sr.ReadToEnd();
  306. sr.Close();
  307. st.Close();
  308. richTextBox5.Text = res;
  309. }
  310. private void button14_Click(object sender, EventArgs e)
  311. {
  312. }
  313. private void button15_Click(object sender, EventArgs e)
  314. {
  315. }
  316. private void button16_Click(object sender, EventArgs e)
  317. {
  318. }
  319. private void checkBox1_CheckedChanged(object sender, EventArgs e)
  320. {
  321. textBox3.Text = "http://1x2.bet007.com/";
  322. Thread.Sleep(500);//???????????axWebBrowser1????????
  323. button16.PerformClick();
  324. }
  325. private void checkBox2_CheckedChanged(object sender, EventArgs e)
  326. {
  327. textBox3.Text = "http://1x2.bet007.com/bet007history.aspx";
  328. Thread.Sleep(500);//???????????axWebBrowser1????????
  329. button16.PerformClick();
  330. }
  331. private void checkBox7_CheckedChanged(object sender, EventArgs e)
  332. {
  333. DateTime dt = DateTime.Now.AddDays(-1);
  334. string strDT = dt.ToString("yyyy-MM-dd");//??????????????
  335. checkBox7.Text = "http://1x2.bet007.com/bet007history.aspx?id=&company=&matchdate=" + strDT;
  336. textBox3.Text = checkBox7.Text;
  337. Thread.Sleep(500);//???????????axWebBrowser1????????
  338. button16.PerformClick();
  339. }
  340. private void checkBox3_CheckedChanged(object sender, EventArgs e)
  341. {
  342. textBox3.Text = "http://live.aibo123.com/bifen/indexBeiDan.shtml?lang=&isc=";
  343. Thread.Sleep(500);//???????????axWebBrowser1????????
  344. }
  345. private void checkBox4_CheckedChanged(object sender, EventArgs e)
  346. {
  347. }
  348. private void checkBox5_CheckedChanged(object sender, EventArgs e)
  349. {
  350. textBox3.Text = "http://ms.7m.cn/default_big.shtml";
  351. Thread.Sleep(500);//???????????axWebBrowser1????????
  352. button17.PerformClick();
  353. }
  354. private void checkBox6_CheckedChanged(object sender, EventArgs e)
  355. {
  356. textBox3.Text = "http://ms.7m.cn/played_big.shtml";
  357. Thread.Sleep(500);//???????????axWebBrowser1????????
  358. button17.PerformClick();
  359. }
  360. private void checkBox8_CheckedChanged(object sender, EventArgs e)
  361. {
  362. DateTime dt = DateTime.Now.AddDays(-1);
  363. string strDT = dt.ToString("yyyy-MM-dd");//??????????????
  364. checkBox8.Text = "http://ms.7m.cn/result_big.shtml?dt=" + strDT;
  365. textBox3.Text = checkBox8.Text;
  366. Thread.Sleep(500);//???????????axWebBrowser1????????
  367. button17.PerformClick();
  368. }
  369. private void button17_Click(object sender, EventArgs e)
  370. {
  371. }
  372. private void button18_Click(object sender, EventArgs e)
  373. {
  374. }
  375. private void treeExpandToolStripMenuItem_Click(object sender, EventArgs e)
  376. {
  377. treeView5.ExpandAll();
  378. }
  379. private void treeColaToolStripMenuItem_Click(object sender, EventArgs e)
  380. {
  381. treeView5.CollapseAll();
  382. }
  383. private void tToolStripMenuItem_Click(object sender, EventArgs e)
  384. {
  385. }
  386. private void button19_Click(object sender, EventArgs e)
  387. {
  388. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  389. //{
  390. dataGridView1.DataSource = Conn.match.Live_Aibo;
  391. //}
  392. }
  393. private void toolStripButton1_Click(object sender, EventArgs e)
  394. {
  395. string sql = @"
  396. if exists (select 1
  397. from sysobjects
  398. where id = object_id('Match_analysis_result')
  399. and type = 'U')
  400. drop table Match_analysis_result
  401. ;
  402. CREATE TABLE [dbo].[Match_analysis_result](
  403. [Analysis_result_id] [numeric](18, 0) IDENTITY(1,1) NOT NULL,
  404. [Live_table_lib_id] [decimal] NOT NULL,
  405. [Result_tb_lib_id] [decimal] NULL,
  406. [Pre_algorithm] [nvarchar](20) NULL,
  407. [pre_match_count] [int] NULL,
  408. [Home_w] [int] NULL,
  409. [Home_d] [int] NULL,
  410. [Home_l] [int] NULL,
  411. [Home_goals] [float] NULL,
  412. [Away_goals] [float] NULL,
  413. [Fit_win_loss] [float] NULL,
  414. [Fit_goals] [float] NULL,
  415. [Fit_odd_even] [float] NULL,
  416. [Result_fit] [nvarchar](20) NULL,
  417. [Result_goals] [nvarchar](20) NULL,
  418. [Result_wdl] [nvarchar](20) NULL,
  419. CONSTRAINT [PK_Match_analysis_result] PRIMARY KEY NONCLUSTERED
  420. (
  421. [Analysis_result_id] ASC
  422. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
  423. IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  424. ) ON [PRIMARY]";
  425. //SoccerScoreCompact match = new SoccerScoreCompact(cnn);
  426. DialogResult result; //Messagebox?????
  427. result = MessageBox.Show(this, "YesOrNo", "??????????", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
  428. if (result == DialogResult.Yes)//Messagebox????
  429. {
  430. Conn.match.ExecuteCommand(sql);
  431. MessageBox.Show("OK");
  432. }
  433. }
  434. private void deleteFile(DirectoryInfo directory)
  435. {
  436. FileInfo[] files = directory.GetFiles();
  437. foreach (FileInfo file in files)
  438. {
  439. file.Delete();
  440. }
  441. }
  442. private void toolStripTextBox1_Click(object sender, EventArgs e)
  443. {
  444. }
  445. private void button20_Click(object sender, EventArgs e)
  446. {
  447. WebRequest req = WebRequest.Create("http://buy.okooo.com/Lottery06/BJBetIndex.php?LotteryType=WDL");
  448. req.Proxy = null;
  449. OkooHtmlToSql okoo = null;
  450. using (WebResponse res = req.GetResponse())
  451. using (Stream s = res.GetResponseStream())
  452. using (StreamReader sr = new StreamReader(s, System.Text.Encoding.Default))
  453. okoo = new OkooHtmlToSql(sr.ReadToEnd());
  454. toolStripLabel2.Text = okoo.updateLiveOkoo().ToString();
  455. MessageBox.Show("OK");
  456. }
  457. private void button21_Click(object sender, EventArgs e)
  458. {
  459. AiboLiveToSql aibo = new AiboLiveToSql(webBrowser2.Document .Body .InnerHtml );
  460. toolStripLabel2.Text = aibo.updateLiveAibo().ToString();
  461. MessageBox.Show("OK");
  462. }
  463. private void button22_Click(object sender, EventArgs e)
  464. {
  465. webBrowser2.Navigate("http://live.aibo123.com/bifen/indexBeiDan.shtml?lang=&isc=");
  466. }
  467. private void splitContainer4_Panel2_Paint(object sender, PaintEventArgs e)
  468. {
  469. }
  470. private void checkBox10_CheckedChanged(object sender, EventArgs e)
  471. {
  472. System.Timers.Timer t = new System.Timers.Timer(100);//???Timer?????????10000???
  473. t.Elapsed += new System.Timers.ElapsedEventHandler(CrossThreadFlush);//????????????
  474. t.AutoReset = false;//????????false???????(true)?
  475. t.Enabled = true;//????System.Timers.Timer.Elapsed???
  476. }
  477. private delegate void FlushClient();//??
  478. private void CrossThreadFlush(object source, System.Timers.ElapsedEventArgs e)
  479. {
  480. while (true)
  481. {
  482. Thread.Sleep(1000);
  483. ThreadFunction();//?sleep??????????????
  484. }
  485. }
  486. private void ThreadFunction()
  487. {
  488. if (this.textBox2.InvokeRequired)//????
  489. {
  490. FlushClient fc = new FlushClient(ThreadFunction);
  491. this.Invoke(fc);//??????????
  492. }
  493. else
  494. {
  495. this.textBox2.Text = DateTime.Now.ToString();
  496. }
  497. }
  498. private void toolStripButton2_Click(object sender, EventArgs ee)
  499. {
  500. MessageBox.Show(ViewmatchOverDays.ToString());
  501. AuditForecastAlgorithm f = new AuditForecastAlgorithm(ViewmatchOverDays);
  502. int pb = f.idExc.Count();
  503. MessageBox.Show(pb.ToString());
  504. if (pb != 0)
  505. {
  506. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  507. //{
  508. dmatch.dHome = Conn.match.Result_tb_lib.ToLookup(e => e.Home_team_big);
  509. dmatch.dAway = Conn.match.Result_tb_lib.ToLookup(e => e.Away_team_big);
  510. //}
  511. toolStripProgressBar1.Maximum = pb;
  512. f.top20Algorithm();
  513. }
  514. }
  515. private void exitSystemSToolStripMenuItem_Click(object sender, EventArgs e)
  516. {
  517. this.Close();
  518. this.Dispose();
  519. }
  520. private void dataCollectionToolStripMenuItem_Click(object sender, EventArgs e)
  521. {
  522. this.tabControl1.SelectedTab = this.tabPage1;
  523. }
  524. private void OddsCollectionOToolStripMenuItem_Click(object sender, EventArgs e)
  525. {
  526. this.tabControl1.SelectedTab = this.tabPage10;
  527. }
  528. private void dataEvaluateToolStripMenuItem_Click(object sender, EventArgs e)
  529. {
  530. this.tabControl1.SelectedTab = this.tabPage2;
  531. button19.PerformClick();
  532. }
  533. private void scoreForecastToolStripMenuItem_Click(object sender, EventArgs e)
  534. {
  535. this.tabControl1.SelectedTab = this.tabPage3;
  536. }
  537. private void winRateToolStripMenuItem_Click(object sender, EventArgs e)
  538. {
  539. this.tabControl1.SelectedTab = this.tabPage11;
  540. button18.PerformClick();
  541. }
  542. private void splitContainer9_Panel1_Paint(object sender, PaintEventArgs e)
  543. {
  544. }
  545. private void caiPiaoToolStripMenuItem_Click(object sender, EventArgs e)
  546. {
  547. }
  548. private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
  549. {
  550. }
  551. private void button24_Click(object sender, EventArgs e)
  552. {
  553. }
  554. private void button25_Click(object sender, EventArgs e)
  555. {
  556. }
  557. private void button26_Click(object sender, EventArgs e)
  558. {
  559. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  560. //{
  561. dataGridView1.DataSource = Conn.match.Live_okoo;
  562. //}
  563. }
  564. private void button29_Click(object sender, EventArgs e)
  565. {
  566. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  567. //{
  568. dataGridView1.DataSource = Conn.match.Live_Table_lib;
  569. //}
  570. }
  571. private void button30_Click(object sender, EventArgs e)
  572. {
  573. //SoccerScoreCompact match = new SoccerScoreCompact(cnn);
  574. dataGridView1.DataSource = Conn.match.Result_tb_lib;
  575. }
  576. private void button31_Click(object sender, EventArgs e)
  577. {
  578. string PageUrl = "http://data1.7m.cn/Result_data/default_big.shtml?date=2003-07-01"; //??????????
  579. WebRequest request = WebRequest.Create(PageUrl); //WebRequest.Create?????WebRequest???HttpWebRequest
  580. WebResponse response = request.GetResponse(); //WebRequest.GetResponse?????? Internet ?????
  581. Stream resStream = response.GetResponseStream(); //WebResponse.GetResponseStream ???? Internet ????????
  582. Encoding enc = Encoding.GetEncoding("GB2312"); // ???????? utf-8 / GB2312
  583. StreamReader sr = new StreamReader(resStream, enc); //????:System.IO? StreamReader ????? TextReader (TextReader?????????????????)?????????????????????
  584. string res = sr.ReadToEnd();
  585. sr.Close();
  586. richTextBox5.Text = res;
  587. }
  588. private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
  589. {
  590. //DAL???????????????
  591. while (webBrowser1.ReadyState != WebBrowserReadyState.Complete) return;
  592. richTextBox1.Text = webBrowser1.Document.Body.InnerHtml;
  593. while (richTextBox1.Text == null) return;
  594. toolStripStatusLabel1.Text = "download table complete!";
  595. //???????
  596. if (liveLib == true)
  597. {
  598. toolStripLabel2.Text = Update_Live_Table(richTextBox1.Text).ToString();
  599. }
  600. else
  601. {
  602. toolStripLabel2.Text = Update_result_tb(richTextBox1.Text).ToString();
  603. }
  604. insertComplete = true;
  605. toolStripStatusLabel1.Text = "update table complete!";
  606. }
  607. private decimal Update_Live_Table(string html)
  608. {
  609. SevenmLiveToSql sevenlive = new SevenmLiveToSql(html);
  610. return sevenlive.InsertLiveHtmlTableToDB();
  611. }
  612. private decimal Update_result_tb(string html)
  613. {
  614. SevenmResultToSql sevenresult = new SevenmResultToSql(html);
  615. return sevenresult.InsertLastHtmlTableToDB();
  616. }
  617. private void treeView5_AfterSelect(object sender, TreeViewEventArgs c)
  618. {
  619. if (c.Node.Level == 1)
  620. {
  621. dataGridView5.Visible = true;
  622. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  623. //{
  624. var mar = from a in Conn.match.Match_analysis_result
  625. join b in Conn.match.Live_Table_lib on a.Live_table_lib_id equals b.Live_table_lib_id
  626. select new
  627. {
  628. a.Result_wdl,
  629. a.Result_fit,
  630. a.Result_goals,
  631. b.Match_type
  632. };
  633. var winrate = from p in mar
  634. where p.Match_type == c.Node.Text
  635. group p by p.Match_type into q
  636. select new
  637. {
  638. q.Key,
  639. fitW = q.Where(e => e.Result_fit == "W").Count(),
  640. fitL = q.Where(e => e.Result_fit == "L").Count(),
  641. goalsW = q.Where(e => e.Result_goals == "W").Count(),
  642. goalsL = q.Where(e => e.Result_goals == "L").Count(),
  643. wdlW = q.Where(e => e.Result_wdl == "W").Count(),
  644. wdlL = q.Where(e => e.Result_wdl == "L").Count(),
  645. };
  646. dataGridView5.DataSource = winrate;
  647. var maxwin = winrate.FirstOrDefault();
  648. int[] maxw = { maxwin.fitW, maxwin.fitL, maxwin.goalsW, maxwin.goalsL, maxwin.wdlW, maxwin.wdlL };
  649. label3.Text = maxw.Max().ToString();
  650. //}
  651. }
  652. if (c.Node.Level != 2) { return; }
  653. dataGridView5.Visible = false;
  654. string selectmatch = c.Node.Text.ToString();
  655. string[] ar = selectmatch.Split(Convert.ToChar(','));
  656. int id = Int32.Parse(ar[0].ToString());
  657. label3.Text = LoadDataToChart.ForeCast(chart1, id, selectmatch);
  658. LoadDataToChart.LabelmatchDetail(chart1, PointLabelsList.GetItemText(PointLabelsList.SelectedItem));
  659. }
  660. private void treeView5_MouseDown(object sender, MouseEventArgs e)
  661. {
  662. label3.Location = new Point(e.Location.X + 100, e.Location.Y+50);
  663. dataGridView5.Location = new Point(e.Location.X + 30, e.Location.Y -20);
  664. }
  665. private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
  666. {
  667. if (listBox1.SelectedItem == null) return;
  668. listBox1.Text = listBox1.SelectedItem.ToString();
  669. }
  670. private void numericUpDown1_ValueChanged(object sender, EventArgs e)
  671. {
  672. ViewmatchOverDays = -(int)numericUpDown1.Value;
  673. }
  674. private void checkedListBox2_SelectedIndexChanged(object sender, EventArgs e)
  675. {
  676. textBox4.Text = checkedListBox2.GetItemText(checkedListBox2.SelectedItem);
  677. textBox5.Text = checkedListBox2.GetItemText(checkedListBox2.SelectedIndex.ToString());
  678. }
  679. private void button35_Click(object sender, EventArgs e)
  680. {
  681. ExportToExcel.ExportForDataGridview(dataGridView4, "htmlTable", true);
  682. }
  683. private void button32_Click(object sender, EventArgs e)
  684. {
  685. HtmlAgilityPackGeneric t = new HtmlAgilityPackGeneric(webBrowser2.Document.Body.InnerHtml, textBox4.Text, Int32.Parse(textBox5.Text));
  686. dataGridView4.DataSource = t.GetTableInnerHtml();
  687. }
  688. private void button33_Click(object sender, EventArgs e)
  689. {
  690. HtmlAgilityPackGeneric t = new HtmlAgilityPackGeneric(webBrowser2.Document.Body.InnerHtml, textBox4.Text, Int32.Parse(textBox5.Text));
  691. dataGridView4.DataSource = t.GetTableOutHtml();
  692. }
  693. private void button34_Click(object sender, EventArgs e)
  694. {
  695. HtmlAgilityPackGeneric t = new HtmlAgilityPackGeneric(webBrowser2.Document.Body.InnerHtml, textBox4.Text, Int32.Parse(textBox5.Text));
  696. dataGridView4.DataSource = t.GetTableInnerText();
  697. }
  698. private void PointLabelsList_SelectedIndexChanged(object sender, EventArgs e)
  699. {
  700. LoadDataToChart.LabelmatchDetail(chart1, PointLabelsList.GetItemText(PointLabelsList.SelectedItem));
  701. }
  702. private void button36_Click(object sender, EventArgs e)
  703. {
  704. OkooHtmlToSql okoo = new OkooHtmlToSql(webBrowser2.Document.Body.InnerHtml);
  705. toolStripLabel2.Text = okoo.updateLiveOkoo().ToString();
  706. MessageBox.Show("OK");
  707. }
  708. private void treeView3_AfterSelect(object sender, TreeViewEventArgs e)
  709. {
  710. richTextBox6.Text = e.Node.Text;
  711. }
  712. private void button9_Click_1(object sender, EventArgs c)
  713. {
  714. Uri uri = new Uri(textBox3.Text);
  715. string host = uri.Host;
  716. //using (SoccerScoreCompact match = new SoccerScoreCompact(cnn))
  717. //{
  718. var eUri = Conn.match.Match_table_xpath.Where(e => e.Uri_host == host).FirstOrDefault();
  719. if (eUri == null)
  720. {
  721. Match_table_xpath nUri = new Match_table_xpath();
  722. nUri.Uri_host = host.ToString();
  723. nUri.Max_table_xpath = textBox4.Text;
  724. nUri.Second_table_xpath = textBox6.Text;
  725. nUri.Max_table_id_value = textBox7.Text;
  726. nUri.Second_table_id_value = textBox8.Text;
  727. Conn.match.Match_table_xpath.InsertOnSubmit(nUri);
  728. }
  729. else
  730. {
  731. eUri.Uri_host = host.ToString();
  732. eUri.Max_table_xpath = textBox4.Text;
  733. eUri.Second_table_xpath = textBox6.Text;
  734. eUri.Max_table_id_value = textBox7.Text;
  735. eUri.Second_table_id_value = textBox8.Text;
  736. //match.Match_table_xpath.InsertOnSubmit(eUri);
  737. }
  738. Conn.match.SubmitChanges();
  739. //}
  740. MessageBox.Show("OK");
  741. }
  742. //bool web2docComplete = false;
  743. //private void webBrowser2_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
  744. //{
  745. // while (webBrowser1.ReadyState != WebBrowserReadyState.Complete) return;
  746. // web2docComplete = true;
  747. //}
  748. private void listBox3_SelectedIndexChanged(object sender, EventArgs e)
  749. {
  750. TreeNodeCollection tc = treeView3.Nodes;
  751. string lbTxt = listBox3.GetItemText(listBox3.SelectedItem);
  752. selectNode(tc, lbTxt);
  753. }
  754. //????????treeView??????
  755. public void selectNode(TreeNodeCollection tc, string lbTxt)
  756. {
  757. foreach (TreeNode node in tc)
  758. {
  759. string[] tvNode = node.Text.Split(':');
  760. if (lbTxt == tvNode[0].Trim())
  761. {
  762. richTextBox6.Text = node.Text;
  763. }
  764. selectNode(node.Nodes, lbTxt);
  765. }
  766. }
  767. private void numericUpDown2_ValueChanged(object sender, EventArgs e)
  768. {
  769. #region ???? ,?????????????? ,??table or sqlserver
  770. try
  771. {
  772. checkedListBox2.Items.Clear();
  773. listBox3.Items.Clear();
  774. HtmlAgilityPackTableXpath tableXpath = new HtmlAgilityPackTableXpath(webBrowser2.Document.Body.InnerHtml,
  775. (int)numericUpDown2.Value);
  776. foreach (var d in tableXpath.htmlTableAttDic.OrderByDescending(v => v.Value))
  777. {
  778. listBox3.Items.Add(d.Key);
  779. listBox3.Items.Add(d.Value.ToString());
  780. //if (d.Key == tableXpath.maxKey || d.Key == tableXpath.secondKey) listBox3.Items.Add("--->" + d.Key + "--->" + d.Value.ToString());
  781. //else listBox3.Items.Add(d.Key + "--->" + d.Value.ToString());
  782. }
  783. textBox4.Text = tableXpath.maxKey;
  784. textBox6.Text = tableXpath.secondKey;
  785. textBox7.Text = tableXpath.maxValue;
  786. textBox8.Text = tableXpath.secondValue;
  787. checkedListBox2.Items.Add(tableXpath.maxKey);
  788. checkedListBox2.Items.Add(tableXpath.secondKey);
  789. }
  790. catch { }
  791. #endregion
  792. }
  793. private void dataGridView5_CellContentClick(object sender, DataGridViewCellEventArgs e)
  794. {
  795. //dataGridView5.Visible = false;
  796. }
  797. }
  798. }