TestingResultDetail168.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Core.Mes.Client.Comm.Control;
  10. using Infragistics.Win;
  11. using Infragistics.Win.UltraWinGrid;
  12. using com.steering.mes.zgmil.entity;
  13. namespace Core.StlMes.Client.ZGMil.ResultConrtrol
  14. {
  15. public partial class TestingResultDetail168 : UserControl
  16. {
  17. public TestingResultDetail168()
  18. {
  19. InitializeComponent();
  20. }
  21. private void TestingResultDetail168_Load(object sender, EventArgs e)
  22. {
  23. GridHelper.InitCardGrid(ultraDataSourceDetail, ultraGridDetail);
  24. GridHelper.InitCardGrid(ultraDataSourceDetaildes1, ultraGridDetailDes1);
  25. GridHelper.InitCardGrid(ultraDataSourceDetaildes2, ultraGridDetailDes2);
  26. ValueList va1 = new ValueList();
  27. va1.ValueListItems.Add("孔洞");
  28. va1.ValueListItems.Add("外折");
  29. va1.ValueListItems.Add("划伤");
  30. va1.ValueListItems.Add("内伤");
  31. va1.ValueListItems.Add("误报");
  32. va1.ValueListItems.Add("");
  33. this.ultraGridDetailDes1.DisplayLayout.Bands[0].Columns["reason"].ValueList = va1;
  34. ValueList va2 = new ValueList();
  35. va2.ValueListItems.Add("孔洞");
  36. va2.ValueListItems.Add("外折");
  37. va2.ValueListItems.Add("内伤");
  38. va2.ValueListItems.Add("");
  39. this.ultraGridDetailDes2.DisplayLayout.Bands[0].Columns["reason"].ValueList = va2;
  40. this.ultraGridDetail.Rows[0].Cells["Btn1"].Value = "保存";
  41. this.ultraGridDetail.Rows[0].Cells["Btn2"].Value = "回退";
  42. this.ultraGridDetail.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  43. this.ultraGridDetailDes1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  44. this.ultraGridDetailDes2.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  45. }
  46. private bool isCellSelect = false;
  47. public bool IsCellSelect
  48. {
  49. get { return isCellSelect; }
  50. set { isCellSelect = value; }
  51. }
  52. /// <summary>
  53. /// 1#台探伤明细
  54. /// </summary>
  55. private MilTestingResultDetailEntity detail;
  56. /// <summary>
  57. /// 1#台探伤明细
  58. /// </summary>
  59. public MilTestingResultDetailEntity Detail
  60. {
  61. get { return detail; }
  62. set
  63. {
  64. detail = value;
  65. UpdateDetail();
  66. }
  67. }
  68. public void UpdateDetail()
  69. {
  70. if (detail != null)
  71. {
  72. //1#台剔除支数
  73. this.ultraDataSourceDetail.Rows[0]["scrapNum1"] = string.IsNullOrEmpty(detail.ScrapNum1.ToString()) ? "0" : detail.ScrapNum1;
  74. //1#台合格支数
  75. this.ultraDataSourceDetail.Rows[0]["qualifiedNum1"] = string.IsNullOrEmpty(detail.QualifiedNum1.ToString()) ? "0" : detail.QualifiedNum1;
  76. //1#台复探支数
  77. this.ultraDataSourceDetail.Rows[0]["reinspectionNum1"] = string.IsNullOrEmpty(detail.ReinspectionNum1.ToString()) ? "0" : detail.ReinspectionNum1;
  78. //1#台复探合格支数
  79. this.ultraDataSourceDetail.Rows[0]["reinspectionQualifiedNum1"] = string.IsNullOrEmpty(detail.ReinspectionQualifiedNum1.ToString()) ? "0" : detail.ReinspectionQualifiedNum1;
  80. //1#台下线支数
  81. this.ultraDataSourceDetail.Rows[0]["offlineNum1"] = string.IsNullOrEmpty(detail.OfflineNum1.ToString()) ? "0" : detail.OfflineNum1;
  82. //1#台返线支数
  83. this.ultraDataSourceDetail.Rows[0]["backlineNum1"] = string.IsNullOrEmpty(detail.BacklineNum1.ToString())?"0":detail.BacklineNum1;
  84. //1#台检测支数
  85. this.ultraDataSourceDetail.Rows[0]["detectionNum1"] = string.IsNullOrEmpty(detail.DetectionNum1.ToString()) ? "0" : detail.DetectionNum1;
  86. //1#台可疑品支数
  87. this.ultraDataSourceDetail.Rows[0]["suspectProductNum1"] = string.IsNullOrEmpty(detail.SuspectProductNum1.ToString()) ? "0" : detail.SuspectProductNum1;
  88. }
  89. }
  90. /// <summary>
  91. /// 1#台可疑明细
  92. /// </summary>
  93. private List<MilTestingResultDetailDesEntity> listdes1;
  94. public List<MilTestingResultDetailDesEntity> Listdes1
  95. {
  96. get { return listdes1; }
  97. set
  98. {
  99. listdes1 = value;
  100. UpdateDetaildes1();
  101. }
  102. }
  103. public void UpdateDetaildes1()
  104. {
  105. if (listdes1 != null)
  106. {
  107. if (listdes1.Count > 0)
  108. {
  109. ultraDataSourceDetaildes1.Rows.Clear();
  110. for (int i = 0; i < listdes1.Count; i++)
  111. {
  112. MilTestingResultDetailDesEntity detaildse = listdes1[i];
  113. ultraDataSourceDetaildes1.Rows.Add();
  114. this.ultraDataSourceDetaildes1.Rows[i]["Check"] = "True";
  115. this.ultraDataSourceDetaildes1.Rows[i]["reason"] = detaildse.Reason.ToString2();
  116. this.ultraDataSourceDetaildes1.Rows[i]["reasonNumber"] = detaildse.ReasonNumber.ToString3();
  117. }
  118. }
  119. else
  120. {
  121. this.ultraDataSourceDetaildes1.Rows.Clear();
  122. }
  123. }
  124. }
  125. /// <summary>
  126. /// 1#台剔除明细
  127. /// </summary>
  128. public List<MilTestingResultDetailDesEntity> listdes2;
  129. public List<MilTestingResultDetailDesEntity> Listdes2
  130. {
  131. get { return listdes2; }
  132. set
  133. {
  134. listdes2 = value;
  135. UpdateDetaildes2();
  136. }
  137. }
  138. public void UpdateDetaildes2()
  139. {
  140. if (listdes2 != null)
  141. {
  142. if (listdes2.Count > 0)
  143. {
  144. ultraDataSourceDetaildes2.Rows.Clear();
  145. for (int i = 0; i < listdes2.Count; i++)
  146. {
  147. MilTestingResultDetailDesEntity detaildse = listdes2[i];
  148. ultraDataSourceDetaildes2.Rows.Add();
  149. this.ultraDataSourceDetaildes2.Rows[i]["Check"] = "True";
  150. this.ultraDataSourceDetaildes2.Rows[i]["reason"] = detaildse.Reason.ToString2();
  151. this.ultraDataSourceDetaildes2.Rows[i]["reasonNumber"] = detaildse.ReasonNumber.ToString3();
  152. }
  153. }
  154. else
  155. {
  156. this.ultraDataSourceDetaildes2.Rows.Clear();
  157. }
  158. }
  159. }
  160. private void ultraGridDetail_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  161. {
  162. this.isCellSelect = true;
  163. this.ultraGridDetail.UpdateData();
  164. this.ultraGridDetailDes1.UpdateData();
  165. this.ultraGridDetailDes2.UpdateData();
  166. UltraGrid ug = (UltraGrid)sender;
  167. if (e.Cell.Column.Key == "Check")
  168. {
  169. if (Convert.ToBoolean(e.Cell.Value))
  170. {
  171. for (int i = 0; i < e.Cell.Row.Cells.Count; i++)
  172. {
  173. e.Cell.Row.Cells[i].Activation = Activation.AllowEdit;
  174. }
  175. }
  176. else
  177. {
  178. e.Cell.Row.Delete();
  179. }
  180. }
  181. if (e.Cell.Column.Key == "reason")
  182. {
  183. if (ug.Name.Equals("ultraGridDetailDes1"))
  184. {
  185. if (e.Cell.Value == "")
  186. {
  187. MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  188. return;
  189. }
  190. int temp = 0;
  191. for (int i = 0; i < ug.Rows.Count(); i++)
  192. {
  193. UltraGridRow ugr = ug.Rows[i];
  194. if (e.Cell.Value.ToString().Equals(ugr.Cells["reason"].Value.ToString()))
  195. {
  196. temp = temp + 1;
  197. }
  198. }
  199. if (temp > 1)
  200. {
  201. MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  202. e.Cell.Row.Cells["reason"].Value = "";
  203. }
  204. }
  205. if (ug.Name.Equals("ultraGridDetailDes2"))
  206. {
  207. for (int i = 0; i < ug.Rows.Count(); i++)
  208. {
  209. if (e.Cell.Value == "")
  210. {
  211. MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  212. return;
  213. }
  214. UltraGridRow ugr = ug.Rows[i];
  215. }
  216. int temp = 0;
  217. for (int i = 0; i < ug.Rows.Count(); i++)
  218. {
  219. UltraGridRow ugr = ug.Rows[i];
  220. if (e.Cell.Value.ToString().Equals(ugr.Cells["reason"].Value.ToString()))
  221. {
  222. temp = temp + 1;
  223. }
  224. }
  225. if (temp > 1)
  226. {
  227. MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  228. e.Cell.Row.Cells["reason"].Value = "";
  229. }
  230. }
  231. }
  232. if (e.Cell.Column.Key == "detectionNum1" || e.Cell.Column.Key == "scrapNum1")
  233. {
  234. if ((!string.IsNullOrEmpty(ultraGridDetail.Rows[0].Cells["detectionNum1"].Value.ToString3())) && (!string.IsNullOrEmpty(ultraGridDetail.Rows[0].Cells["scrapNum1"].Value.ToString3())))
  235. {
  236. if (int.Parse(ultraGridDetail.Rows[0].Cells["detectionNum1"].Value.ToString3()) < int.Parse(ultraGridDetail.Rows[0].Cells["scrapNum1"].Value.ToString3()))
  237. {
  238. MessageBox.Show("您输入的剔除支数大于检测支数,请确认后重新输入", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  239. ultraGridDetail.Rows[0].Cells["scrapNum1"].Value = "0";
  240. }
  241. else
  242. {
  243. ultraGridDetail.Rows[0].Cells["qualifiedNum1"].Value = int.Parse(ultraGridDetail.Rows[0].Cells["detectionNum1"].Value.ToString3()) - int.Parse(ultraGridDetail.Rows[0].Cells["scrapNum1"].Value.ToString3());
  244. }
  245. }
  246. }
  247. }
  248. }
  249. }