using CCWin; using Newtonsoft.Json.Linq; using SufeiUtil; using SXLibrary; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SQLite; using System.Drawing; using System.IO; using System.Linq; using System.Management; using System.Text; using System.Windows.Forms; namespace MOKA_Factory_Tools { public partial class CreateDBManually : Skin_Color { string url; string order; MidList midList1 = new MidList(); MidAddress midAddress1 = new MidAddress(); SQLiteConnection errorDBNow; SQLiteConnection ReportDB; string dbPath; public CreateDBManually(string getMidInfoUrl_Test, System.Data.SQLite.SQLiteConnection errorDB) { InitializeComponent(); url = getMidInfoUrl_Test; errorDBNow = errorDB; } private void SubmitMIDInfo_Click(object sender, EventArgs e) { if (Order_Text.Text.Trim().Length > 0) { dbPath = AppDomain.CurrentDomain.BaseDirectory + "\\Keys\\" + Order_Text.Text.Trim() + ".db"; order = Order_Text.Text.Trim(); if (V2Method.GetMidInfo(order, TestMode.MAC, errorDBNow, out midList1)) { if (V2Method.GetOfflineData(midList1.host, order, errorDBNow, out List midAddress2)) { foreach(var midAddress1 in midAddress2) { SoftwareVersion_Text.Text = midAddress1.version; ClientType_Text.Text = midAddress1.ctype; OrderQuantity.Text = midAddress1.number; ProjectID_Text.Text = midAddress1.pid; Download DownloadPage = new Download(errorDBNow, midAddress1, comboBox1.SelectedIndex, midList1, null); DownloadPage.ShowDialog(); } if(File.Exists(dbPath)) { ReportDB = new SQLiteConnection("data source=" + dbPath); ReportDB.Open(); if (SQLiteHelper.WholeCheckDownloadStatus(ReportDB, order)) { if (V2Method.ReportDownloadStatus(midList1.host, order, errorDBNow)) MessageBox.Show(LResource.DownloadSuccess); else MessageBox.Show(LResource.DownloadReportFail); } ReportDB.Close(); } } else MessageBox.Show(LResource.GetMidAdresserror); } else MessageBox.Show(LResource.GetMidInfoerror); } else MessageBox.Show("请输入订单号!"); } private void skinButton1_Click(object sender, EventArgs e) { dbPath = AppDomain.CurrentDomain.BaseDirectory + "\\Keys\\" + Order_Text.Text.Trim() + ".db"; ReportDB = new SQLiteConnection("data source=" + dbPath); bool result = true; try { ReportDB.Open(); string count; if (SQLiteHelper.GetEppormDataCount(ReportDB, out count)) progressBar1.Maximum = Convert.ToInt32(count) + 1; else goto end; if(SQLiteHelper.GetEppormUploadedDataCount(ReportDB, out count)) progressBar1.Value= Convert.ToInt32(count); else goto end; do { List listSN; List listCopydate; if (!SQLiteHelper.GetEppormDataListV2(ReportDB, out listSN, out listCopydate)) goto end; if (listSN.Count == 0) break; if (V2Method.ReportOfflineData(midAddress1.host, string.Join(",", listCopydate.ToArray()), string.Join(",", listSN.ToArray()), ReportDB, errorDBNow, false, "")) { MessageBox.Show("上报异常!"); goto end; } else { SQLiteHelper.UpdateReportListStatus(ReportDB, listSN); } } while(true); MessageBox.Show("上报成功!"); result = false; end: if(result) MessageBox.Show("error!"); } catch(Exception ex) { MessageBox.Show(ex.Message); } } private void CreateDBManually_FormClosing(object sender, FormClosingEventArgs e) { errorDBNow.Close(); GC.Collect(); } private void CreateDBManually_Load(object sender, EventArgs e) { comboBox1.SelectedIndex = 0; } } }