FrmSteerDBForgeDataCJ.cs 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using CoreFS.CA06;
  10. using Core.Mes.Client.Comm.Control;
  11. using Core.Mes.Client.Comm.Format;
  12. using Core.Mes.Client.Comm.Server;
  13. using Infragistics.Win.UltraWinGrid;
  14. using System.Collections;
  15. using Core.Mes.Client.Comm.Tool;
  16. using Infragistics.Win;
  17. //接炼钢计划锻造数据 锻造低倍
  18. //ultraGrid1显示需要录入数据的信息,点击ultraGrid1-ultraGrid2显示需要录入的项目
  19. //点击查询ultraGrid3显示查询到的已录入信息
  20. //提供离线录入和打印功能
  21. //项目都有默认值(参考老系统)
  22. //一炉也许对应多个试样 快锻
  23. //炼钢计划为快锻的则为锻造低倍 检验项目与连铸低倍不同
  24. namespace Core.StlMes.Client.Lims.Data.Steer
  25. {
  26. public partial class FrmSteerDBForgeDataCJ : FrmBase
  27. {
  28. private DataTable m_dtPhyMinItems_DB;
  29. public FrmSteerDBForgeDataCJ()
  30. {
  31. InitializeComponent();
  32. }
  33. protected override void OnLoad(EventArgs e)
  34. {
  35. base.OnLoad(e);
  36. ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  37. ultraGrid2.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  38. ultraGrid3.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
  39. ultraGrid4.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
  40. }
  41. private void FrmSteerDBForgeDataCJ_Load(object sender, EventArgs e)
  42. {
  43. steerQueryBase1.ChangeLabel("计划时间");
  44. steerQueryBase1.HiddenSampleNo();
  45. InitColumns();
  46. PublicSteer.ColumnsWidth(ultraGrid2, 0, 60);
  47. }
  48. private void InitColumns()
  49. {
  50. //string[] arrColumnsBase = new string[] { "ID", "HEAT_NO", "CHANGE_HEAT_NO", "STEEL_NO", "PRODUCT_STD", "SAMPLE_SOURCE", "CHECK_NAME", "CHECK_TIME", "CHECK_TEMP", "CHECK_SHIFT", "CHECK_CLASS", "DEVICE_NO", "DEVICE_NAME", "REMARK" };//, "STEEL_NO"
  51. //string[] arrCaptionBase = new string[] { "ID", "炉号", "转换炉号", "钢号", "技术标准", "来源", "录入人", "录入时间", "环境温度", "班次", "班组", "设备编码", "设备名称", "备注" };//, "钢号"
  52. //PublicSteer.InitColumns(arrColumnsBase, arrCaptionBase, dataTable1);
  53. //PublicSteer.InitColumns(arrColumnsBase, arrCaptionBase, dataTable3);
  54. //PublicSteer.setColumnShowOrHidden(ultraGrid1, new string[] { "HEAT_NO" }, true);
  55. //PublicSteer.setColumnShowOrHidden(ultraGrid3, new string[] { "HEAT_NO", "CHANGE_HEAT_NO" }, true);
  56. string[] arrColumnsBase = new string[] { "ID", "HEAT_NO", "CHANGE_HEAT_NO", "HEAT_NUM", "STEEL_NO", "PRODUCT_STD", "SAMPLE_SIZE", "ORDER_NO_SEQ", "PRODUCNAME", "CUSTOMER_NM", "SAMPLE_SOURCE", "DB_SOURCE", "PLAN_TIME", "CHECK_NAME", "CHECK_TIME", "CHECK_TEMP", "CHECK_SHIFT", "CHECK_CLASS", "DEVICE_NO", "DEVICE_NAME", "REMARK" };//, "STEEL_NO"
  57. string[] arrCaptionBase = new string[] { "ID", "电炉炉号", "判定炉号", "分切", "钢种", "判定标准", "规格", "合同号", "品种", "客户", "来源", "连铸来源", "计划时间", "录入人", "录入时间", "环境温度", "班次", "班组", "设备编码", "设备名称", "备注" };//, "钢号"
  58. PublicSteer.InitColumns(arrColumnsBase, arrCaptionBase, dataTable1);
  59. PublicSteer.InitColumns(arrColumnsBase, arrCaptionBase, dataTable3);
  60. PublicSteer.setColumnShowOrHidden(ultraGrid1, new string[] { "HEAT_NO", "CHANGE_HEAT_NO", "HEAT_NUM", "STEEL_NO", "PRODUCT_STD", "SAMPLE_SIZE", "ORDER_NO_SEQ", "PRODUCNAME", "CUSTOMER_NM", "SAMPLE_SOURCE", "DB_SOURCE", "PLAN_TIME" }, true);
  61. PublicSteer.setColumnShowOrHidden(ultraGrid3, new string[] { "HEAT_NO", "CHANGE_HEAT_NO", "HEAT_NUM", "STEEL_NO", "PRODUCT_STD", "SAMPLE_SIZE", "ORDER_NO_SEQ", "PRODUCNAME", "CUSTOMER_NM", "SAMPLE_SOURCE", "DB_SOURCE", "PLAN_TIME" }, true);
  62. PublicSteer.setOtherColumnReadOnly(ultraGrid1, null);//可编辑列
  63. PublicSteer.setOtherColumnReadOnly(ultraGrid3, null);//可编辑列
  64. QueryPhyMinItems_DB();
  65. }
  66. private void QueryPhyMinItems_DB()
  67. {
  68. try
  69. {
  70. //获取快锻低倍检验的项目
  71. ArrayList al = new ArrayList();
  72. al.Add("R0026");//C0025
  73. DataTable dt = PublicServer.GetData("com.steering.lims.data.base.FrmBaseSelectItems.QueryPhyMinItems_DB",
  74. new Object[] { al }, ob);
  75. if (dt == null || dt.Rows.Count == 0)
  76. {
  77. return;
  78. }
  79. m_dtPhyMinItems_DB = dt.Copy();//为此赋值
  80. ArrayList alColumns = new ArrayList();
  81. ArrayList alCaption = new ArrayList();
  82. alColumns.Add("CHK");
  83. alCaption.Add("选择");
  84. alColumns.Add("SAMPLE_NO");
  85. alCaption.Add("试样号");
  86. foreach (DataRow dr in dt.Rows)
  87. {
  88. alColumns.Add(dr["PHY_CODE"].ToString());
  89. alCaption.Add(dr["PHY_NAME"].ToString());
  90. }
  91. PublicSteer.InitColumns(alColumns.ToArray(), alCaption.ToArray(), dataTable2);
  92. }
  93. catch (Exception e)
  94. {
  95. MessageUtil.ShowWarning(e.Message);
  96. return;
  97. }
  98. }
  99. /// <summary>
  100. /// 重写基类方法
  101. /// </summary>
  102. /// <param name="sender"></param>
  103. /// <param name="ToolbarKey"></param>
  104. public override void ToolBar_Click(object sender, string ToolbarKey)
  105. {
  106. switch (ToolbarKey)
  107. {
  108. case "Query":
  109. if (ultraTabControl1.SelectedTab.Index == 0)
  110. {
  111. QueryPhyDBAuditResultCheck();//低倍要录入数据
  112. }
  113. else if (ultraTabControl1.SelectedTab.Index == 1)
  114. {
  115. QueryPhyDBBaseInfo();
  116. }
  117. break;
  118. case "Add":
  119. AddPhyDBAuditResult();//新增
  120. break;
  121. case "Update":
  122. UpdatePhyDBAuditResult();//修改
  123. break;
  124. case "Delete":
  125. DeletePhyDBAuditResult();//删除
  126. break;
  127. case "Audit":
  128. AuditPhyDBAuditResult();//审核
  129. break;
  130. case "Print":
  131. RepLimsSteerPhyDBResult();//打印
  132. break;
  133. case "Close":
  134. if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes)
  135. {
  136. this.Close();
  137. }
  138. break;
  139. }
  140. }
  141. private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
  142. {
  143. if (toolMenu == null) return;
  144. if (ultraTabControl1.SelectedTab.Index == 0)
  145. {
  146. steerQueryBase1.ChangeLabel("计划时间");
  147. if (toolMenu.Toolbars[0].Tools.Exists("Add"))
  148. {
  149. this.toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.True;
  150. }
  151. if (toolMenu.Toolbars[0].Tools.Exists("Update"))
  152. {
  153. this.toolMenu.Toolbars[0].Tools["Update"].InstanceProps.Visible = DefaultableBoolean.False;
  154. }
  155. if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
  156. {
  157. this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.False;
  158. }
  159. }
  160. else if (ultraTabControl1.SelectedTab.Index == 1)
  161. {
  162. steerQueryBase1.ChangeLabel("试验时间");
  163. if (toolMenu.Toolbars[0].Tools.Exists("Add"))
  164. {
  165. this.toolMenu.Toolbars[0].Tools["Add"].InstanceProps.Visible = DefaultableBoolean.False;
  166. }
  167. if (toolMenu.Toolbars[0].Tools.Exists("Update"))
  168. {
  169. this.toolMenu.Toolbars[0].Tools["Update"].InstanceProps.Visible = DefaultableBoolean.True;
  170. }
  171. if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
  172. {
  173. this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = DefaultableBoolean.True;
  174. }
  175. }
  176. }
  177. //查询需要录入的信息
  178. private void QueryPhyDBAuditResultCheck()
  179. {
  180. try
  181. {
  182. ArrayList arrayList = steerQueryBase1.GetQueryDbInfo();
  183. DataTable dt = PublicServer.GetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.QueryPhyDBAuditResultCheck",
  184. new Object[] { arrayList }, ob);
  185. if (dt == null || dt.Rows.Count == 0)
  186. {
  187. //ClearData();
  188. dataTable1.Rows.Clear();
  189. dataTable2.Rows.Clear();
  190. return;
  191. }
  192. GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable
  193. GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
  194. }
  195. catch (Exception e)
  196. {
  197. MessageUtil.ShowWarning(e.Message);
  198. return;
  199. }
  200. }
  201. //查询已录入的信息
  202. private void QueryPhyDBBaseInfo()
  203. {
  204. try
  205. {
  206. ArrayList arrayList = steerQueryBase1.GetQueryInfoNoSample();
  207. arrayList.Insert(0, "1");
  208. DataTable dt = PublicServer.GetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.QueryPhyDBBaseInfo",
  209. new Object[] { arrayList }, ob);
  210. if (dt == null || dt.Rows.Count == 0)
  211. {
  212. //ClearData();
  213. dataTable3.Rows.Clear();
  214. dataTable4.Rows.Clear();
  215. return;
  216. }
  217. GridHelper.CopyDataToDatatable(dt, dataTable3, true);//把dt复制给dataTable
  218. GridHelper.RefreshAndAutoSize(ultraGrid3);//刷新Grid
  219. }
  220. catch (Exception e)
  221. {
  222. MessageUtil.ShowWarning(e.Message);
  223. return;
  224. }
  225. }
  226. //新增锻造低倍检验结果
  227. private void AddPhyDBAuditResult()
  228. {
  229. try
  230. {
  231. if (ultraTabControl1.SelectedTab.Index != 0)
  232. {
  233. MessageUtil.ShowWarning("只有在未录入数据页才能进行新增操作!");
  234. return;
  235. }
  236. if (txtHEAT_NO.Text == "")
  237. {
  238. MessageUtil.ShowWarning("请选择需要新增的炉号信息!");
  239. return;
  240. }
  241. if (ultraGrid1.ActiveRow == null || dataTable1.Rows.Count == 0 || txtHEAT_NO.Text == "")
  242. {
  243. MessageUtil.ShowWarning("请选择需要新增的炉号信息!");
  244. return;
  245. }
  246. if (MessageUtil.ShowYesNoAndQuestion("是否确认新增?") == DialogResult.Yes)
  247. {
  248. //string strHeat_No = txtHEAT_NO.Text.Trim();//炉号
  249. //string strCHANGE_HEAT_NO = txtCHANGE_HEAT_NO.Text.Trim();//转换炉号
  250. string strHeat_No = ultraGrid1.ActiveRow.Cells["HEAT_NO"].Text.Trim();//炉号
  251. //string strCHANGE_HEAT_NO = ultraGrid1.ActiveRow.Cells["CHANGE_HEAT_NO"].Text.Trim();//转换炉号
  252. string strCHANGE_HEAT_NO = this.txtCHANGE_HEAT_NO.Text.Trim();
  253. ArrayList alAll = new ArrayList();//整体list,插入几个表增加几个List
  254. //ArrayList alMain = new ArrayList();//炼钢成分表
  255. ArrayList alBase = new ArrayList();//基础表list
  256. ArrayList alDetail = new ArrayList();//检验信息详细表list
  257. //ArrayList alMainParams = new ArrayList();
  258. ArrayList alBaseParams = new ArrayList();//基础表参数list
  259. ArrayList alDetailParams = new ArrayList();//检验信息详细表参数list
  260. //alMainParams.Add("1");
  261. //alMainParams.Add(strHeat_No);
  262. //alMain.Add(alMainParams);
  263. alBaseParams.Add(strHeat_No);
  264. alBaseParams.Add(strCHANGE_HEAT_NO);
  265. alBaseParams.Add(txtSTEEL_NO.Text.Trim());
  266. alBaseParams.Add(txtPRODUCT_STD.Text.Trim());
  267. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["SAMPLE_SOURCE"].Text.Trim());//来源
  268. alBaseParams.Add("1");
  269. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["HEAT_NUM"].Text.Trim());//分切数 HEAT_NUM
  270. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["DB_SOURCE"].Text.Trim());//DB_SOURCE
  271. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["ORDER_NO_SEQ"].Text.Trim());//合同号
  272. alBaseParams.Add("");//PRODUCCODE 品种代码
  273. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["PRODUCNAME"].Text.Trim());//PRODUCNAME
  274. alBaseParams.Add("");//CUSTOMER_NO 客户代码
  275. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["CUSTOMER_NM"].Text.Trim());//CUSTOMER_NM 客户名称
  276. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["SAMPLE_SIZE"].Text.Trim());//SAMPLE_SIZE 规格
  277. alBaseParams.Add(ultraGrid1.ActiveRow.Cells["PLAN_TIME"].Text.Trim());//PLAN_TIME
  278. alBaseParams.Add(ultraCHECK_NAME.Text.Trim() == "" ? UserInfo.GetUserName() : ultraCHECK_NAME.Text.Trim());//试验人
  279. alBaseParams.Add(UserInfo.GetUserOrderText());//班次
  280. alBaseParams.Add(ultraCHECK_CLASS.Text.Trim() == "" ? UserInfo.GetUserGroupText() : ultraCHECK_CLASS.Text.Trim());//班组
  281. alBaseParams.Add(txtCHECK_TEMP.Text.Trim());//温度
  282. alBaseParams.Add(ultraDEVICE_NO.Text.Trim());//设备编码
  283. alBaseParams.Add(ultraDEVICE_NAME.Text.Trim());//设备名称
  284. alBaseParams.Add(txtREMARK.Text.Trim());//备注
  285. alBase.Add(alBaseParams);
  286. ultraGrid2.UpdateData();//没委托的情况下使用
  287. bool isAdd = false;
  288. foreach (DataRow dr in dataTable2.Rows)
  289. {
  290. if (dr["CHK"].ToString().Trim() == "False" || dr["SAMPLE_NO"].ToString().Trim() == "")
  291. {
  292. continue;
  293. }
  294. isAdd = true;
  295. foreach (DataColumn dc in dataTable2.Columns)
  296. {
  297. if (dc.ColumnName != "CHK" && dc.ColumnName != "SAMPLE_NO")
  298. {
  299. alDetailParams = new ArrayList();
  300. alDetailParams.Add(strHeat_No);
  301. alDetailParams.Add(strCHANGE_HEAT_NO);
  302. alDetailParams.Add(dr["SAMPLE_NO"].ToString().Trim());
  303. alDetailParams.Add(dc.ColumnName);
  304. alDetailParams.Add(dc.Caption);
  305. alDetailParams.Add(dr[dc.ColumnName].ToString().Trim());//值
  306. alDetail.Add(alDetailParams);
  307. }
  308. }
  309. }
  310. if (isAdd == false)
  311. {
  312. MessageUtil.ShowWarning("请录入有效的结果信息!");
  313. return;
  314. }
  315. //alAll.Add(alMain);
  316. alAll.Add(alBase);
  317. alAll.Add(alDetail);
  318. PublicServer.SetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.AddPhyDBAuditResult",
  319. new Object[] { strHeat_No, strCHANGE_HEAT_NO, alAll }, ob);
  320. txtREMARK.Text = "";
  321. dataTable2.Rows.Clear();
  322. //QueryPhyDBAuditResultCheck();
  323. //QueryPhyDBBaseInfo();
  324. //PublicSteer.ActiveOperateRow(ultraGrid3, "HEAT_NO", strHeat_No);
  325. MessageUtil.ShowTips("新增成功!");
  326. }
  327. }
  328. catch (Exception e)
  329. {
  330. MessageUtil.ShowWarning(e.Message);
  331. return;
  332. }
  333. }
  334. //删除低倍检验结果
  335. private void DeletePhyDBAuditResult()
  336. {
  337. try
  338. {
  339. if (ultraTabControl1.SelectedTab.Index != 1)
  340. {
  341. MessageUtil.ShowWarning("只有在已录入数据页才能进行删除操作!");
  342. return;
  343. }
  344. if (ultraGrid3.ActiveRow == null || dataTable3.Rows.Count == 0)
  345. {
  346. MessageUtil.ShowWarning("请选择需要删除的炉号信息!");
  347. return;
  348. }
  349. if (MessageUtil.ShowYesNoAndQuestion("是否确认删除?") == DialogResult.Yes)
  350. {
  351. string strHeat_No = txtHEAT_NO_LOG.Text.Trim();//检验委托编号
  352. string strCHANGE_HEAT_NO = ultraGrid3.ActiveRow.Cells["CHANGE_HEAT_NO"].Text.Trim();//转换炉号
  353. ArrayList alAll = new ArrayList();//整体list,插入几个表增加几个List
  354. //ArrayList alMain = new ArrayList();//炼钢成分表
  355. ArrayList alBase = new ArrayList();//基础表list
  356. ArrayList alDetail = new ArrayList();//检验信息详细表list
  357. //ArrayList alMainParams = new ArrayList();
  358. ArrayList alBaseParams = new ArrayList();//基础表参数list
  359. ArrayList alDetailParams = new ArrayList();//检验信息详细表参数list
  360. //alMainParams.Add("0");
  361. //alMainParams.Add(strHeat_No);
  362. //alMain.Add(alMainParams);
  363. alBaseParams.Add(strHeat_No);
  364. alBaseParams.Add(strCHANGE_HEAT_NO);
  365. alBase.Add(alBaseParams);
  366. alDetailParams.Add(strHeat_No);
  367. alDetailParams.Add(strCHANGE_HEAT_NO);
  368. alDetail.Add(alDetailParams);
  369. //alAll.Add(alMain);
  370. alAll.Add(alBase);
  371. alAll.Add(alDetail);
  372. PublicServer.SetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.DeletePhyDBAuditResult",
  373. new Object[] { strHeat_No, strCHANGE_HEAT_NO, alAll }, ob);
  374. QueryPhyDBBaseInfo();
  375. //QueryPhyDBAuditResultCheck();
  376. //PublicSteer.ActiveOperateRow(ultraGrid1, "HEAT_NO", strHeat_No);
  377. //PublicSteer.ActiveOperateRow(ultraGrid1, "CHANGE_HEAT_NO", strCHANGE_HEAT_NO);
  378. MessageUtil.ShowTips("删除成功!");
  379. }
  380. }
  381. catch (Exception e)
  382. {
  383. MessageUtil.ShowWarning(e.Message);
  384. return;
  385. }
  386. }
  387. //修改低倍检验结果
  388. private void UpdatePhyDBAuditResult()
  389. {
  390. try
  391. {
  392. if (ultraTabControl1.SelectedTab.Index != 1)
  393. {
  394. MessageUtil.ShowWarning("只有在已录入数据页才能进行修改操作!");
  395. return;
  396. }
  397. if (ultraGrid3.ActiveRow == null || dataTable3.Rows.Count == 0 || txtHEAT_NO_LOG.Text == "")
  398. {
  399. MessageUtil.ShowWarning("请选择需要修改的炉号信息!");
  400. return;
  401. }
  402. if (MessageUtil.ShowYesNoAndQuestion("是否确认修改?") == DialogResult.Yes)
  403. {
  404. string strHeat_No = txtHEAT_NO_LOG.Text.Trim();//炉号
  405. string strCHANGE_HEAT_NO = txtCHANGE_HEAT_NO_LOG.Text.Trim();//转换炉号
  406. ArrayList alAll = new ArrayList();//整体list,插入几个表增加几个List
  407. ArrayList alMain = new ArrayList();//炼钢成分表
  408. ArrayList alBase = new ArrayList();//基础表list
  409. ArrayList alDetail = new ArrayList();//检验信息详细表list
  410. ArrayList alMainParams = new ArrayList();
  411. ArrayList alBaseParams = new ArrayList();//基础表参数list
  412. ArrayList alDetailParams = new ArrayList();//检验信息详细表参数list
  413. alBaseParams.Add(ultraCHECK_NAME_LOG.Text.Trim() == "" ? UserInfo.GetUserName() : ultraCHECK_NAME_LOG.Text.Trim());//试验人
  414. //arrayList.Add(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));//时间
  415. alBaseParams.Add(UserInfo.GetUserOrderText());//班次
  416. alBaseParams.Add(ultraCHECK_CLASS_LOG.Text.Trim() == "" ? UserInfo.GetUserGroupText() : ultraCHECK_CLASS_LOG.Text.Trim());//班组
  417. alBaseParams.Add(txtCHECK_TEMP_LOG.Text.Trim());//温度
  418. alBaseParams.Add(ultraDEVICE_NO_LOG.Text.Trim());//设备编码
  419. alBaseParams.Add(ultraDEVICE_NAME_LOG.Text.Trim());//设备名称
  420. alBaseParams.Add(txtREMARK_LOG.Text.Trim());//备注
  421. alBaseParams.Add(strHeat_No);
  422. alBaseParams.Add(strCHANGE_HEAT_NO);
  423. alBase.Add(alBaseParams);
  424. alMainParams.Add(strHeat_No);
  425. alMainParams.Add(strCHANGE_HEAT_NO);
  426. alMain.Add(alMainParams);
  427. ultraGrid4.UpdateData();//没委托的情况下使用
  428. foreach (DataRow dr in dataTable4.Rows)
  429. {
  430. if (dr["CHK"].ToString().Trim() == "False" || dr["SAMPLE_NO"].ToString().Trim() == "")
  431. {
  432. continue;
  433. }
  434. foreach (DataColumn dc in dataTable4.Columns)
  435. {
  436. if (dc.ColumnName != "CHK" && dc.ColumnName != "SAMPLE_NO")
  437. {
  438. alDetailParams = new ArrayList();
  439. alDetailParams.Add(strHeat_No);
  440. alDetailParams.Add(strCHANGE_HEAT_NO);
  441. alDetailParams.Add(dr["SAMPLE_NO"].ToString());
  442. alDetailParams.Add(dc.ColumnName);
  443. alDetailParams.Add(dc.Caption);
  444. alDetailParams.Add(dr[dc.ColumnName].ToString());//值
  445. alDetail.Add(alDetailParams);
  446. }
  447. }
  448. }
  449. alAll.Add(alBase);
  450. alAll.Add(alMain);
  451. alAll.Add(alDetail);
  452. PublicServer.SetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.UpdatePhyDBAuditResult",
  453. new Object[] { strHeat_No, strCHANGE_HEAT_NO, alAll }, ob);
  454. //QueryPhyDBAuditResultCheck();
  455. QueryPhyDBBaseInfo();
  456. //PublicSteer.ActiveOperateRow(ultraGrid3, "HEAT_NO", strHeat_No);
  457. PublicSteer.ActiveOperateRow(ultraGrid3, "CHANGE_HEAT_NO", strCHANGE_HEAT_NO);
  458. MessageUtil.ShowTips("修改成功!");
  459. }
  460. }
  461. catch (Exception e)
  462. {
  463. MessageUtil.ShowWarning(e.Message);
  464. return;
  465. }
  466. }
  467. //审核低倍检验结果
  468. private void AuditPhyDBAuditResult()
  469. {
  470. if (ultraTabControl1.SelectedTab.Index != 1)
  471. {
  472. MessageUtil.ShowWarning("只有在已录入数据页才能进行审核操作!");
  473. return;
  474. }
  475. if (ultraGrid4.ActiveRow == null || dataTable3.Rows.Count == 0)
  476. {
  477. MessageUtil.ShowWarning("请选择需要审核的炉号信息!");
  478. return;
  479. }
  480. if (MessageUtil.ShowYesNoAndQuestion("是否确认审核?") == DialogResult.Yes)
  481. {
  482. QueryPhyDBAuditResult();
  483. //QueryPhyDBAuditResultCheck();
  484. //PublicUltraGrid.ActiveOperateRow(ultraGrid3, "HEAT_NO", );
  485. MessageUtil.ShowTips("审核成功!");
  486. }
  487. }
  488. //打印低倍检验结果
  489. private void RepLimsSteerPhyDBResult()
  490. {
  491. try
  492. {
  493. if (ultraTabControl1.SelectedTab.Index != 1)
  494. {
  495. MessageUtil.ShowWarning("只有在已录入数据页才能进行打印操作!");
  496. return;
  497. }
  498. if (ultraGrid3.ActiveRow == null || dataTable4.Rows.Count == 0)
  499. {
  500. MessageUtil.ShowWarning("请选择需要打印的炉号信息!");
  501. return;
  502. }
  503. this.Cursor = Cursors.WaitCursor;
  504. string strHEAT_NO = ultraGrid3.ActiveRow.Cells["HEAT_NO"].Text.Trim();
  505. string strCHANGE_HEAT_NO = ultraGrid3.ActiveRow.Cells["CHANGE_HEAT_NO"].Text.Trim();
  506. string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLimsSteerPhyDBResult.cpt&bypagesize=false" + "&HEAT_NO=" + strHEAT_NO + "&CHANGE_HEAT_NO=" + strCHANGE_HEAT_NO;
  507. FrmRepExcel fBug = new FrmRepExcel(ob, strurl);
  508. fBug.AutoSize = true;
  509. fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
  510. fBug.WindowState = FormWindowState.Maximized;
  511. fBug.Text = "坯子低倍报告";
  512. fBug.Show();
  513. }
  514. finally
  515. {
  516. this.Cursor = Cursors.Default;
  517. }
  518. }
  519. private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
  520. {
  521. PublicSteer.ShowBaseInfo(ultraGrid1.ActiveRow, panel5);
  522. }
  523. private void ultraGrid3_AfterRowActivate(object sender, EventArgs e)
  524. {
  525. PublicSteer.ShowBaseInfo(ultraGrid3.ActiveRow, panel8, "_LOG");
  526. QueryPhyDBAuditResult();
  527. }
  528. private void QueryPhyDBAuditResult()
  529. {
  530. try
  531. {
  532. //为行赋值
  533. dataTable4.Rows.Clear();//清除行
  534. ArrayList al = new ArrayList();
  535. al.Add(ultraGrid3.ActiveRow.Cells["HEAT_NO"].Text.Trim());
  536. al.Add(ultraGrid3.ActiveRow.Cells["CHANGE_HEAT_NO"].Text.Trim());
  537. DataTable dt = PublicServer.GetData("com.steering.lims.data.steer.FrmSteerDBDataCJ.QueryPhyDBAuditResult",
  538. new Object[] { al }, ob);
  539. if (dt == null || dt.Rows.Count == 0)
  540. {
  541. //dataTable4.Rows.Clear();
  542. return;
  543. }
  544. ArrayList alColumns = new ArrayList();
  545. ArrayList alCaption = new ArrayList();
  546. alColumns.Add("CHK");
  547. alCaption.Add("选择");
  548. alColumns.Add("SAMPLE_NO");
  549. alCaption.Add("试样号");
  550. foreach (DataRow dr in dt.Rows)
  551. {
  552. if (!alColumns.Contains(dr["PHY_CODE"].ToString()))
  553. {
  554. alColumns.Add(dr["PHY_CODE"].ToString());
  555. alCaption.Add(dr["PHY_NAME"].ToString());
  556. }
  557. }
  558. PublicSteer.InitColumns(alColumns.ToArray(), alCaption.ToArray(), dataTable4, 1);
  559. string row = "";//存放所有试样号判断是否有重复试样号
  560. DataRow newDr = dataTable4.NewRow();
  561. foreach (DataRow dr in dt.Rows)
  562. {
  563. if (row.IndexOf(dr["SAMPLE_NO"].ToString()) < 0)//判断是否有重复试样号,有则不增加行只增加对应的列
  564. {
  565. row += dr["SAMPLE_NO"].ToString() + " ";
  566. newDr = dataTable4.NewRow();
  567. newDr["CHK"] = "True";
  568. newDr["SAMPLE_NO"] = dr["SAMPLE_NO"].ToString();
  569. newDr[dr["PHY_CODE"].ToString()] = dr["VALUE1"].ToString();
  570. dataTable4.Rows.Add(newDr);
  571. }
  572. else
  573. {
  574. newDr[dr["PHY_CODE"].ToString()] = dr["VALUE1"].ToString();
  575. }
  576. }
  577. PublicSteer.ColumnsWidth(ultraGrid4, 0, 60);
  578. }
  579. catch (Exception e)
  580. {
  581. MessageUtil.ShowWarning(e.Message);
  582. return;
  583. }
  584. }
  585. private void ultraGrid2_CellChange(object sender, CellEventArgs e)
  586. {
  587. if (e.Cell.Column.Key == "CHK")
  588. {
  589. if (e.Cell.Text == "False")
  590. {
  591. ultraGrid2.UpdateData();
  592. dataTable2.Rows.RemoveAt(e.Cell.Row.Index);
  593. }
  594. else
  595. {
  596. foreach (DataRow dr in m_dtPhyMinItems_DB.Rows)
  597. {
  598. if (ultraGrid2.DisplayLayout.Bands[0].Columns.Exists(dr["PHY_CODE"].ToString()))
  599. {
  600. if (dr["PHY_UNIT"].ToString() == "级")
  601. {
  602. if (dr["PHY_NAME"].ToString() == "中心疏松")
  603. {
  604. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "1";//中心疏松默认1
  605. }
  606. else
  607. {
  608. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "0";
  609. }
  610. }
  611. else
  612. {
  613. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "无";
  614. }
  615. }
  616. }
  617. }
  618. ultraGrid2.DataBind();
  619. }
  620. }
  621. private void ultraGrid4_CellChange(object sender, CellEventArgs e)
  622. {
  623. if (e.Cell.Column.Key == "CHK")
  624. {
  625. if (e.Cell.Text == "False")
  626. {
  627. ultraGrid4.UpdateData();
  628. dataTable4.Rows.RemoveAt(e.Cell.Row.Index);
  629. }
  630. else
  631. {
  632. foreach (DataRow dr in m_dtPhyMinItems_DB.Rows)
  633. {
  634. if (ultraGrid4.DisplayLayout.Bands[0].Columns.Exists(dr["PHY_CODE"].ToString()))
  635. {
  636. if (dr["PHY_UNIT"].ToString() == "级")
  637. {
  638. if (dr["PHY_NAME"].ToString() == "中心疏松")
  639. {
  640. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "1";
  641. }
  642. else
  643. {
  644. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "0";
  645. }
  646. }
  647. else
  648. {
  649. e.Cell.Row.Cells[dr["PHY_CODE"].ToString()].Value = "无";
  650. }
  651. }
  652. }
  653. }
  654. ultraGrid4.DataBind();//把Grid变化通知给DataTable
  655. }
  656. }
  657. private void ultraGrid2_DoubleClickCell(object sender, DoubleClickCellEventArgs e)
  658. {
  659. if (e.Cell.Text == "无")
  660. {
  661. e.Cell.Value = "有";
  662. }
  663. else if (e.Cell.Text == "有")
  664. {
  665. e.Cell.Value = "无";
  666. }
  667. }
  668. private void ultraGrid4_DoubleClickCell(object sender, DoubleClickCellEventArgs e)
  669. {
  670. if (e.Cell.Text == "无")
  671. {
  672. e.Cell.Value = "有";
  673. }
  674. else if (e.Cell.Text == "有")
  675. {
  676. e.Cell.Value = "无";
  677. }
  678. }
  679. }
  680. }