FrmILHistory.cs 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using System.Collections;
  9. using System.IO;
  10. using System.Diagnostics;
  11. using CoreFS.CA06;
  12. using Core.Mes.Client.Common;
  13. using Infragistics.Win.UltraWinGrid;
  14. namespace Core.LgMes.Client.LgDeviceManager
  15. {
  16. public partial class FrmILHistory : Core.Mes.Client.Common.frmStyleBase//frmModelFormStyle
  17. {
  18. private ToolsName toolName; //工具名称
  19. private string strInitID = ""; //编号
  20. private RecordsName recordName; //使用记录、维修记录、烘烤记录
  21. public FrmILHistory(ToolsName toolName,string strInitID ,RecordsName recordName,OpeBase oba)
  22. {
  23. InitializeComponent();
  24. ob = oba;
  25. this.toolName = toolName;
  26. this.recordName = recordName;
  27. this.strInitID = strInitID;
  28. this.Text = this.toolName.ToString() + this.recordName.ToString();
  29. }
  30. private void FrmILHistory_Load(object sender, EventArgs e)
  31. {
  32. udteStartS.Value =
  33. udteStartE.Value =
  34. udteEndS.Value =
  35. udteEndE.Value = DateTime.Today;
  36. proc_GetID();
  37. chkStart.Checked = true;
  38. if (strInitID.Length > 0)
  39. {
  40. cbmID.Text = strInitID;
  41. chkID.Checked = true;
  42. }
  43. InitData();
  44. proc_GetHistory();
  45. }
  46. /// <summary>
  47. /// 加载铁包号
  48. /// </summary>
  49. private void proc_GetID()
  50. {
  51. try
  52. {
  53. if (this.toolName == ToolsName.铁包)
  54. {
  55. string strErr = "";
  56. ArrayList arry = new ArrayList();
  57. arry.Add("FrmILHistory_Query1");
  58. CommonClientToServer ccs = new CommonClientToServer();
  59. ccs.ob = this.ob;
  60. DataSet ds = ccs.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arry, out strErr);
  61. if (strErr == "" && ds != null && ds.Tables.Count > 0)
  62. {
  63. cbmID.Items.Clear();
  64. for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
  65. {
  66. cbmID.Items.Add(ds.Tables[0].Rows[i]["铁包编号"]);
  67. }
  68. }
  69. else
  70. {
  71. MessageBox.Show(this.toolName.ToString() + "编号查询出错!\r\n" + strErr, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  72. }
  73. }
  74. }
  75. catch (Exception ex)
  76. {
  77. MessageBox.Show(this.toolName.ToString() + "编号查询出错!" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  78. }
  79. }
  80. /// <summary>
  81. /// 查询
  82. /// </summary>
  83. private void proc_GetHistory()
  84. {
  85. try
  86. {
  87. if (this.toolName == ToolsName.铁包)
  88. {
  89. if (this.recordName == RecordsName.使用记录)
  90. {
  91. string strErr = "";
  92. string strWhere = "";
  93. string strFrom = "", strTo = "";
  94. if (chkStart.Checked)
  95. {
  96. strFrom =Convert.ToDateTime(udteStartS.Value).ToString("yyyy-MM-dd");
  97. strTo = Convert.ToDateTime(udteStartE.Value).ToString("yyyy-MM-dd");
  98. strWhere += " and case USETYPE "
  99. + "when '1' then to_char(MISTAPHOLESTARTTIME, 'yyyy-MM-dd') "
  100. + "when '2' then to_char(BOFTAPPINGSTARTTIME, 'yyyy-MM-dd') "
  101. + "end between '" + strFrom + "' and '" + strTo + "'";
  102. }
  103. if (chkEnd.Checked)
  104. {
  105. strFrom = Convert.ToDateTime(udteEndS.Value).ToString("yyyy-MM-dd");
  106. strTo = Convert.ToDateTime(udteEndE.Value).ToString("yyyy-MM-dd");
  107. strWhere += " and to_char(BOFCHANGEENDTIME, 'yyyy-MM-dd') between '" + strFrom + "' and '" + strTo + "'";
  108. }
  109. if (chkID.Checked && cbmID.SelectedIndex > -1)
  110. {
  111. strWhere += " and LADLEID = '" + cbmID.Text.Trim() + "'";
  112. }
  113. ArrayList arry = new ArrayList();
  114. ArrayList sqlList = new ArrayList();
  115. arry.Add("FrmILHistory_Query2");
  116. sqlList.Add(strWhere);
  117. CoreClientParam CCP_LgEts = new CoreClientParam();
  118. DataTable dt = new DataTable();
  119. CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBQuery";
  120. CCP_LgEts.MethodName = "doQuery";
  121. CCP_LgEts.ServerParams = new object[] { arry, sqlList };
  122. CCP_LgEts.SourceDataTable = dt;
  123. this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal);
  124. DataSet ds = new DataSet();
  125. ds.Tables.Add(dt);
  126. strErr = CCP_LgEts.ReturnInfo;
  127. //try
  128. //{
  129. // ((DataSet)ugrdUserinfo.DataSource).Tables[0].Rows.Clear();
  130. //}
  131. //catch (Exception)
  132. //{
  133. //}
  134. if (strErr == "" && ds != null && ds.Tables.Count > 0)
  135. {
  136. ugrdUserinfo.DataSource = ds.Tables[0];
  137. ugrdUserinfo.DataBind();
  138. }
  139. else
  140. {
  141. MessageBox.Show(this.toolName.ToString() + this.recordName.ToString() + "查询出错!\r\n" + strErr, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  142. }
  143. }
  144. else if (this.recordName == RecordsName.维修记录)
  145. {
  146. string strErr = "";
  147. string strWhere = " and TOOLTYPEID = '铁包'";
  148. string strFrom = "", strTo = "";
  149. if (chkStart.Checked)
  150. {
  151. strFrom = Convert.ToDateTime(udteStartS.Value).ToString("yyyy-MM-dd");
  152. strTo = Convert.ToDateTime(udteStartE.Value).ToString("yyyy-MM-dd");
  153. strWhere += " and to_char(REPAIRTIME, 'yyyy-MM-dd') between '" + strFrom + "' and '" + strTo + "'";
  154. }
  155. if (chkEnd.Checked)
  156. {
  157. strFrom = Convert.ToDateTime(udteEndS.Value).ToString("yyyy-MM-dd");
  158. strTo = Convert.ToDateTime(udteEndE.Value).ToString("yyyy-MM-dd");
  159. strWhere += " and to_char(REPAIREDTIME, 'yyyy-MM-dd') between '" + strFrom + "' and '" + strTo + "'";
  160. }
  161. if (chkID.Checked && cbmID.SelectedIndex > -1)
  162. {
  163. strWhere += " and REPAIRTOOLID = '" + cbmID.Text.Trim() + "'";
  164. }
  165. ArrayList arry = new ArrayList();
  166. ArrayList sqlList = new ArrayList();
  167. arry.Add("FrmILHistory_Query3");
  168. sqlList.Add(strWhere);
  169. CoreClientParam CCP_LgEts = new CoreClientParam();
  170. DataTable dt = new DataTable();
  171. CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBQuery";
  172. CCP_LgEts.MethodName = "doQuery";
  173. CCP_LgEts.ServerParams = new object[] { arry, sqlList };
  174. CCP_LgEts.SourceDataTable = dt;
  175. this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal);
  176. DataSet ds = new DataSet();
  177. ds.Tables.Add(dt);
  178. strErr = CCP_LgEts.ReturnInfo;
  179. try
  180. {
  181. ((DataTable)ugrdUserinfo.DataSource).Rows.Clear();
  182. ugrdUserinfo.DataBind();
  183. }
  184. catch (Exception)
  185. {
  186. }
  187. if (strErr == "" && ds != null && ds.Tables.Count > 0)
  188. {
  189. ugrdUserinfo.DataSource = ds.Tables[0];
  190. }
  191. else
  192. {
  193. MessageBox.Show(this.toolName.ToString() + this.recordName.ToString() + "查询出错!\r\n" + strErr, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  194. }
  195. }
  196. else if (this.recordName == RecordsName.烘烤记录)
  197. {
  198. string strErr = "";
  199. string strWhere = " and TOOLTYPE = '铁包'";
  200. string strFrom = "", strTo = "";
  201. if (chkStart.Checked)
  202. {
  203. strFrom = Convert.ToDateTime(udteStartS.Value).ToString("yyyy-MM-dd");
  204. strTo = Convert.ToDateTime(udteStartE.Value).ToString("yyyy-MM-dd");
  205. strWhere += " and to_char(BEGINTIME, 'yyyy-MM-dd') between '" + strFrom + "' and '" + strTo + "'";
  206. }
  207. if (chkEnd.Checked)
  208. {
  209. strFrom = Convert.ToDateTime(udteEndS.Value).ToString("yyyy-MM-dd");
  210. strTo = Convert.ToDateTime(udteEndE.Value).ToString("yyyy-MM-dd");
  211. strWhere += " and to_char(ENDTIME, 'yyyy-MM-dd') between '" + strFrom + "' and '" + strTo + "'";
  212. }
  213. if (chkID.Checked && cbmID.SelectedIndex > -1)
  214. {
  215. strWhere += " and FIRINGTOOLID = '" + cbmID.Text.Trim() + "'";
  216. }
  217. ArrayList arry = new ArrayList();
  218. ArrayList sqlList = new ArrayList();
  219. arry.Add("FrmILHistory_Query4");
  220. sqlList.Add(strWhere);
  221. CoreClientParam CCP_LgEts = new CoreClientParam();
  222. DataTable dt = new DataTable();
  223. CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBQuery";
  224. CCP_LgEts.MethodName = "doQuery";
  225. CCP_LgEts.ServerParams = new object[] { arry, sqlList };
  226. CCP_LgEts.SourceDataTable = dt;
  227. this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal);
  228. DataSet ds = new DataSet();
  229. ds.Tables.Add(dt);
  230. strErr = CCP_LgEts.ReturnInfo;
  231. try
  232. {
  233. ((DataTable)ugrdUserinfo.DataSource).Rows.Clear();
  234. }
  235. catch (Exception)
  236. {
  237. }
  238. if (strErr == "" && ds != null && ds.Tables.Count > 0)
  239. {
  240. ugrdUserinfo.DataSource = ds.Tables[0];
  241. ugrdUserinfo.DataBind();
  242. }
  243. else
  244. {
  245. MessageBox.Show(this.toolName.ToString() + this.recordName.ToString() + "查询出错!\r\n" + strErr, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  246. }
  247. }
  248. }
  249. }
  250. catch (Exception ex)
  251. {
  252. MessageBox.Show(this.toolName.ToString() + this.recordName.ToString() + "查询出错!" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  253. }
  254. }
  255. /// <summary>
  256. /// 铁包使用记录UltraGrid显示设置
  257. /// </summary>
  258. private void InitData()
  259. {
  260. try
  261. {
  262. UltraGridBand band = this.ugrdUserinfo.DisplayLayout.Bands[0];
  263. band.Columns[0].Header.Caption = "铁包编号";
  264. band.Columns[0].Width = 60;
  265. band.Columns[1].Header.Caption = "所处位置";
  266. band.Columns[1].Width = 60;
  267. band.Columns[1].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  268. //
  269. band.Columns[2].Header.Caption = "使用类别";
  270. band.Columns[2].Width = 60;
  271. band.Columns[2].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  272. band.Columns[3].Header.Caption = "铁水包龄";
  273. band.Columns[3].Width = 60;
  274. band.Columns[3].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  275. band.Columns[4].Header.Caption = "铁水站接铁开始时刻";
  276. band.Columns[4].Width = 150;
  277. band.Columns[4].CellAppearance.ForeColor = Color.Black;
  278. band.Columns[4].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  279. band.Columns[5].Header.Caption = "铁水站接铁结束时刻";
  280. band.Columns[5].Width = 150;
  281. band.Columns[5].CellAppearance.ForeColor = Color.Black;
  282. band.Columns[5].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  283. band.Columns[6].Header.Caption = "脱硫站进站时刻";
  284. band.Columns[6].Width = 150;
  285. band.Columns[6].CellAppearance.ForeColor = Color.Black;
  286. band.Columns[6].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  287. band.Columns[7].Header.Caption = "脱硫站出站时刻";
  288. band.Columns[7].Width = 150;
  289. band.Columns[7].CellAppearance.ForeColor = Color.Black;
  290. band.Columns[7].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  291. band.Columns[8].Header.Caption = "转炉兑铁开始时刻";
  292. band.Columns[8].Width = 150;
  293. band.Columns[8].CellAppearance.ForeColor = Color.Black;
  294. band.Columns[8].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  295. band.Columns[9].Header.Caption = "转炉兑铁结束时刻";
  296. band.Columns[9].Width = 150;
  297. band.Columns[9].CellAppearance.ForeColor = Color.Black;
  298. band.Columns[9].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  299. }
  300. catch
  301. { }
  302. }
  303. private void cbxDateTime1_CheckedChanged(object sender, EventArgs e)
  304. {
  305. udteStartS.Enabled = udteStartE.Enabled = chkStart.Checked;
  306. }
  307. private void cbxDateTime2_CheckedChanged(object sender, EventArgs e)
  308. {
  309. udteEndS.Enabled = udteEndE.Enabled = chkEnd.Checked;
  310. }
  311. private void cbxID_CheckedChanged(object sender, EventArgs e)
  312. {
  313. cbmID.Enabled = chkID.Checked;
  314. }
  315. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  316. {
  317. switch (e.Tool.Key)
  318. {
  319. case "Query":
  320. proc_GetHistory();
  321. break;
  322. case "Output":
  323. try
  324. {
  325. if (ugrdUserinfo.Rows.Count == 0) return;
  326. string strFileName = recordName.ToString() + "_" + DateTime.Today.ToString("yyyy-MM-dd");
  327. strFileName = string.Format(Application.StartupPath + "\\{0}.xls", strFileName);
  328. ultraGridExcelExporter1.Export(ugrdUserinfo, strFileName);
  329. ProcessStartInfo p = new ProcessStartInfo(strFileName);
  330. p.WorkingDirectory = Path.GetDirectoryName(strFileName);
  331. Process.Start(p);
  332. }
  333. catch (Exception ex)
  334. {
  335. MessageBox.Show(ex.Message);
  336. }
  337. break;
  338. case "Close":
  339. this.Close();
  340. break;
  341. default:
  342. break;
  343. }
  344. }
  345. }
  346. }