MscBase_Process.cs 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. using Core.Mes.Client.Comm.Control;
  2. using Core.Mes.Client.Comm.Server;
  3. using Infragistics.Win.UltraWinGrid;
  4. using System;
  5. using System.Collections;
  6. using System.Data;
  7. namespace Core.StlMes.Client.Qcm
  8. {
  9. class MscBase_Process
  10. {
  11. public static DataTable Query(FrmProPSCMSC2 frm)
  12. {
  13. DataTable dt = null;
  14. try
  15. {
  16. ArrayList list = new ArrayList();
  17. //string msc = "";
  18. //string mscPline = "";
  19. //if (frm.ultraGrid4.ActiveRow != null)
  20. //{
  21. // msc = frm.ultraGrid4.GetActiveRowValue("MSC");
  22. // mscPline = frm.ultraGrid4.GetActiveRowValue("MSC_PLINE");
  23. //}
  24. //list.AddRange(msc, mscPline);
  25. dt = ServerHelper.GetData("com.steering.pss.qcm.CoreFrmProPSCMSC2.queryBaseProcess",
  26. new object[] { }, frm.ob);
  27. }
  28. catch
  29. {
  30. return null;
  31. }
  32. //类型为接箍的工序只显示接箍, 类型为短节+附件和双工短节的只显示加工
  33. if (frm.ControlMsc.GridMsc.ActiveRow != null)
  34. {
  35. if (frm.ControlMsc.GridMsc.ActiveRow.ChildBands == null)
  36. {
  37. DataRow[] drs = dt.Select("PROCESS_CODE <> 'H'");
  38. foreach (DataRow dr in drs)
  39. {
  40. dr.Delete();
  41. }
  42. dt.AcceptChanges();
  43. }
  44. else
  45. {
  46. if (frm.ControlMsc.GridMsc.ActiveRow.Cells["MSC_STYLE"].Value.ToString() == "D")
  47. {
  48. DataRow[] drs = dt.Select("PROCESS_CODE <> 'H'");
  49. foreach (DataRow dr in drs)
  50. {
  51. dr.Delete();
  52. }
  53. dt.AcceptChanges();
  54. }
  55. else if (frm.ControlMsc.GridMsc.ActiveRow.Cells["MSC_STYLE"].Value.ToString() == "C"
  56. || frm.ControlMsc.GridMsc.ActiveRow.Cells["MSC_STYLE"].Value.ToString() == "E")
  57. {
  58. DataRow[] drs = dt.Select("PROCESS_CODE <> 'G'");
  59. foreach (DataRow dr in drs)
  60. {
  61. dr.Delete();
  62. }
  63. dt.AcceptChanges();
  64. }
  65. else
  66. {
  67. DataRow[] drs = dt.Select("PROCESS_CODE = 'H'");
  68. foreach (DataRow dr in drs)
  69. {
  70. dr.Delete();
  71. }
  72. dt.AcceptChanges();
  73. }
  74. }
  75. }
  76. return dt;
  77. }
  78. public static DataTable QueryMscProcess(FrmProPSCMSC2 frm)
  79. {
  80. if (frm.ControlMsc.GridMsc.ActiveRow == null) return null;
  81. string msc = "";//如果选择的是接箍,那么msc字段保存接箍码。否则保存msc。
  82. if (frm.ControlMsc.GridMsc.ActiveRow.ChildBands != null)
  83. {
  84. msc = frm.ControlMsc.GridMsc.ActiveRow.Cells["MSC"].Value.ToString();
  85. }
  86. else
  87. {
  88. msc = frm.ControlMsc.GridMsc.ActiveRow.Cells["KEY_JG"].Value.ToString();
  89. }
  90. DataTable dt = null;
  91. ArrayList list = new ArrayList();
  92. list.Add(msc);
  93. try
  94. {
  95. dt = ServerHelper.GetData("com.steering.pss.qcm.CoreFrmProPSCMSC2.queryMscProcess2",
  96. new object[] { list }, frm.ob);
  97. }
  98. catch
  99. {
  100. return null;
  101. }
  102. return dt;
  103. }
  104. public static void RefreshMscProcess(FrmProPSCMSC2 frm)
  105. {
  106. if (frm.UltraGrid4.ActiveRow == null) return;
  107. DataTable dt2 = null;
  108. string msc = "";
  109. msc = frm.UltraGrid4.ActiveRow.Cells["MSC"].Value.ToString();
  110. ArrayList list = new ArrayList();
  111. list.Add(msc);
  112. list.Add(frm.UltraGrid4.ActiveRow.Cells["MSC_PLINE"].Value.ToString());
  113. try
  114. {
  115. dt2 = ServerHelper.GetData("com.steering.pss.qcm.CoreFrmProPSCMSC2.queryMscProcess",
  116. new object[] { list }, frm.ob);
  117. AddMscProcessToGrid5(dt2, frm.UltraGrid5);
  118. }
  119. catch (Exception ex)
  120. {
  121. return;
  122. }
  123. return;
  124. }
  125. private static void AddMscProcessToGrid5(DataTable dt2, UltraGrid ultraGrid5)
  126. {
  127. ultraGrid5.UpdateData();
  128. DataTable dt = ((DataSet)ultraGrid5.DataSource).Tables["COM_BASE_PROCESS"];
  129. foreach (DataRow dr in dt2.Rows)
  130. {
  131. DataRow[] drs = dt.Select("PROCESS_CODE = '" + dr["PROCESS_CODE"].ToString() + "'");
  132. if (drs.Length == 0) continue;
  133. drs[0]["MSC"] = dr["MSC"].ToString();
  134. drs[0]["BACKLOG_SEQ"] = dr["BACKLOG_SEQ"].ToString();
  135. drs[0]["MINUTE_PRODUCT"] = dr["MINUTE_PRODUCT"].ToString();
  136. drs[0]["MINUTE_WAITE"] = dr["MINUTE_WAITE"].ToString();
  137. drs[0]["BATCH_WAITE"] = dr["BATCH_WAITE"].ToString();
  138. drs[0]["MINUTE_PRODUCT_OUT"] = dr["MINUTE_PRODUCT_OUT"].ToString();
  139. drs[0]["MINUTE_WAITE_OUT"] = dr["MINUTE_WAITE_OUT"].ToString();
  140. drs[0]["BATCH_WAITE_OUT"] = dr["BATCH_WAITE_OUT"].ToString();
  141. drs[0]["MEMO"] = dr["MEMO"].ToString();
  142. drs[0]["MINUTE_PRODUCT"] = dr["MINUTE_PRODUCT"].ToString();
  143. drs[0]["CIC"] = dr["CIC"].ToString();
  144. drs[0]["PIC"] = dr["PIC"].ToString();
  145. drs[0]["SIC"] = dr["SIC"].ToString();
  146. drs[0]["DIC"] = dr["DIC"].ToString();
  147. drs[0]["WIC"] = dr["WIC"].ToString();
  148. drs[0]["GIC"] = dr["GIC"].ToString();
  149. drs[0]["ICOUNT"] = dr["PROCESS_SEQ"].ToString();
  150. drs[0]["PROCESS_CODE_C"] = dr["PROCESS_CODE_C"].ToString();
  151. drs[0]["PROCESS_SEQ_OLD"] = dr["PROCESS_SEQ_OLD"].ToString();
  152. drs[0]["PROCESS_CODE_C_OLD"] = dr["PROCESS_CODE_C_OLD"].ToString();
  153. drs[0]["PROCESS_FILE"] = dr["PROCESS_FILE"].ToString();
  154. drs[0]["PROCESS_FILE_NAME"] = dr["PROCESS_FILE_NAME"].ToString();
  155. UltraGridRow[] rows = GridHelper.GetRowsWithKey(ultraGrid5,
  156. new string[] { "PROCESS_CODE" }, new string[] { dr["PROCESS_CODE"].ToString() });
  157. if (rows.Length == 0) continue;
  158. rows[0].Cells["CHK"].Value = true;
  159. }
  160. dt.AcceptChanges();
  161. ultraGrid5.UpdateData();
  162. }
  163. public static DataTable QueryProcessC(FrmProPSCMSC2 frm)
  164. {
  165. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreFrmProPSCMSC2.queryProcessC",
  166. new object[] { }, frm.ob);
  167. return dt;
  168. }
  169. public static DataTable QueryProcess(FrmProPSCMSC2 frm)
  170. {
  171. DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreFrmProPSCMSC2.queryBaseProcess2",
  172. new object[] { }, frm.ob);
  173. return dt;
  174. }
  175. }
  176. }