FrmSteerChemResultLog.cs 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  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.Tool;
  11. using Core.Mes.Client.Comm.Control;
  12. using System.Collections;
  13. using Infragistics.Win.UltraWinGrid;
  14. namespace Core.StlMes.Client.Lims.Data.Steer
  15. {
  16. public partial class FrmSteerChemResultLog : FrmBase
  17. {
  18. public FrmSteerChemResultLog()
  19. {
  20. InitializeComponent();
  21. }
  22. protected override void OnLoad(EventArgs e)
  23. {
  24. base.OnLoad(e);
  25. ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  26. ultraGrid2.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  27. }
  28. private void FrmSteerChemResultLog_Load(object sender, EventArgs e)
  29. {
  30. steerQueryBase1.UpdateControl("操作时间");
  31. InitColumns();
  32. PublicSteer.ColumnsWidth(ultraGrid1, 0, 60);
  33. PublicSteer.ColumnsWidth(ultraGrid2, 0, 60);
  34. }
  35. private void InitColumns()
  36. {
  37. string[] chemMax = PublicSteer.chemMax.Split(' ');
  38. string[] chemMin = PublicSteer.chemMin.Split(' ');
  39. string[] arrColumnsBase = new string[] { "OPERATE_TYPE_DESC", "OPERATE_FLAG_DESC", "HEAT_NO", "SAMPLE_NO", "STEEL_NO", "OPERATE_NAME", "OPERATE_TIME" };
  40. string[] arrCaptionBase = new string[] { "操作类型", "操作标志", "炉号", "试样号", "钢号", "操作人", "操作时间" };
  41. PublicSteer.InitColumns(arrColumnsBase, chemMax, arrCaptionBase, chemMin, dataTable1);
  42. PublicSteer.setOtherColumnReadOnly(ultraGrid1, null);//可编辑列
  43. }
  44. public override void ToolBar_Click(object sender, string ToolbarKey)
  45. {
  46. //查询、确认、退出
  47. switch (ToolbarKey)
  48. {
  49. case "Query":
  50. QuerySteerChemResultLog();
  51. break;
  52. case "Close":
  53. if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes)
  54. {
  55. this.Close();
  56. }
  57. break;
  58. }
  59. }
  60. private void QuerySteerChemResultLog()
  61. {
  62. try
  63. {
  64. ArrayList al = steerQueryBase1.GetQueryInfo();
  65. string[] arr = this.ValidDataPurviewIds;//获取数据权限ID
  66. //查询最近十条信息
  67. DataTable dt = PublicServer.GetData("com.steering.lims.data.steer.FrmSteerChemResultLog.QuerySteerChemResultLog",
  68. new Object[] { al, arr }, ob);
  69. if (dt == null || dt.Rows.Count == 0)
  70. {
  71. dataTable1.Rows.Clear();
  72. return;
  73. }
  74. GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable
  75. UltraGridColumn[] cols = new UltraGridColumn[] { ultraGrid1.DisplayLayout.Bands[0].Columns["OPERATE_FLAG_DESC"], ultraGrid1.DisplayLayout.Bands[0].Columns["OPERATE_TIME"] };
  76. PublicSteer.RefreshAndAutoSizeColumns(ultraGrid1, cols);//刷新Grid
  77. //GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
  78. }
  79. catch (Exception e)
  80. {
  81. MessageUtil.ShowWarning(e.Message);
  82. return;
  83. }
  84. }
  85. private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
  86. {
  87. try
  88. {
  89. dataTable2.Rows.Clear();
  90. ArrayList al = new ArrayList();
  91. al.Add(ultraGrid1.ActiveRow.Cells["SAMPLE_NO"].Text.Trim());
  92. al.Add(ultraGrid1.ActiveRow.Cells["HEAT_NO"].Text.Trim());
  93. DataTable dt = PublicServer.GetData("com.steering.lims.data.steer.FrmSteerChemResultLog.QueryChemAuditResultHeatSampleNo",
  94. new Object[] { al }, ob);
  95. if (dt == null || dt.Rows.Count == 0)
  96. {
  97. return;
  98. }
  99. foreach (DataColumn dc in dataTable1.Columns)
  100. {
  101. if (dc.ColumnName.IndexOf("ANA_") == 0 && ultraGrid1.ActiveRow.Cells[dc.ColumnName].Text.Trim() != "")
  102. {
  103. DataRow dr = dataTable2.NewRow();
  104. dr["ELEMENTS"] = dc.ColumnName.Substring(4, 1) + dc.ColumnName.Substring(4).ToLower().Remove(0, 1);
  105. dr["START_VALUE"] = ultraGrid1.ActiveRow.Cells[dc.ColumnName].Text.Trim();
  106. dr["UPDATE_VALUE"] = dt.Rows[0][dc.ColumnName].ToString().Trim();
  107. dataTable2.Rows.Add(dr);
  108. }
  109. }
  110. foreach (UltraGridRow dr in ultraGrid2.Rows)
  111. {
  112. if (dr.Cells["START_VALUE"].Text.Trim() != dr.Cells["UPDATE_VALUE"].Text.Trim())
  113. {
  114. dr.Appearance.BackColor = Color.LightGray;
  115. }
  116. }
  117. UltraGridColumn[] cols = new UltraGridColumn[] { ultraGrid2.DisplayLayout.Bands[0].Columns["ELEMENTS"] };
  118. PublicSteer.RefreshAndAutoSizeColumns(ultraGrid2, cols);//刷新Grid
  119. }
  120. catch (Exception ex)
  121. {
  122. MessageUtil.ShowWarning(ex.Message);
  123. return;
  124. }
  125. }
  126. }
  127. }