FrmHttScrapLen.cs 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Drawing;
  5. using System.Linq;
  6. using System.Windows.Forms;
  7. using com.steering.mes.mcp.entity;
  8. using Core.Mes.Client.Comm.Server;
  9. using Core.Mes.Client.Comm.Tool;
  10. using Core.StlMes.Client.Mcp.Control.Entity;
  11. using CoreFS.CA06;
  12. using Infragistics.Win.UltraWinGrid;
  13. using Infragistics.Win.UltraWinToolbars;
  14. namespace Core.StlMes.Client.Mcp.Control
  15. {
  16. public partial class FrmHttScrapLen : FrmBase
  17. {
  18. public FrmHttScrapLen(OpeBase ob)
  19. {
  20. InitializeComponent();
  21. this.ob = ob;
  22. ScrappedLenList = new List<HttWasteResultEntity>();
  23. }
  24. private string heatPlanNo = "";
  25. public FrmHttScrapLen(OpeBase ob, List<HttWasteResultEntity> list2, string HeatPlanNo, int Process_seq, string defaultBatchNo)
  26. {
  27. InitializeComponent();
  28. this.ob = ob;
  29. heatPlanNo = HeatPlanNo;
  30. ScrappedLenList = list2 == null ? new List<HttWasteResultEntity>() : list2.Select(p => p.Clone()).ToList();
  31. var dt4 = ServerHelper.GetData("com.steering.mes.mcp.heatTreatment.ScrapHelper.doQueryBatchNo",
  32. new object[] { heatPlanNo, Process_seq }, ob);
  33. if (dt4.Rows.Count <= 0)
  34. {
  35. var row = dt4.NewRow();
  36. row["PHY_BATCH_NO"] = defaultBatchNo;
  37. dt4.Rows.Add(row);
  38. }
  39. BatchNo.DataSource = dt4;
  40. BatchNo.DisplayMember = "PHY_BATCH_NO";
  41. BatchNo.ValueMember = "PHY_BATCH_NO";
  42. YdmBaseClass.SetComboItemHeight(BatchNo);
  43. ScrappedLenList.ForEach(p =>
  44. {
  45. p.Chk = true;
  46. if (dt4.Rows.Count <= 0)
  47. {
  48. p.BatchNo = "";
  49. return;
  50. }
  51. if (dt4.AsEnumerable().All(q => q["PHY_BATCH_NO"].ToString2() != p.BatchNo)) p.BatchNo = dt4.Rows[dt4.Rows.Count - 1]["PHY_BATCH_NO"].ToString();
  52. });
  53. httWasteResultEntityBindingSource2.DataSource = ScrappedLenList;
  54. EntityHelper.ShowGridCaption<HttWasteResultEntity>(ultraGridDetailDes2.DisplayLayout.Bands[0]);
  55. }
  56. /// <summary>
  57. /// 废品米长
  58. /// </summary>
  59. public List<HttWasteResultEntity> ScrappedLenList { get; private set; }
  60. private void ultraToolbarsManager1_ToolClick(object sender, ToolClickEventArgs e)
  61. {
  62. switch (e.Tool.Key)
  63. {
  64. case "Save":
  65. Save();
  66. break;
  67. case "Close":
  68. CloseFrm();
  69. break;
  70. }
  71. }
  72. private void CloseFrm()
  73. {
  74. DialogResult = DialogResult.Cancel;
  75. Close();
  76. }
  77. /// <summary>
  78. /// 保存可疑、剔除品
  79. /// </summary>
  80. private void Save()
  81. {
  82. ultraGridDetailDes2.UpdateData();
  83. var list2 =
  84. httWasteResultEntityBindingSource2.DataSource as List<HttWasteResultEntity>;
  85. list2 = list2.Where(p => p.Chk).ToList();
  86. foreach (var httWasteResultEntity in list2)
  87. {
  88. if (httWasteResultEntity.TotalLen==null)
  89. {
  90. MessageUtil.ShowTips("废品总米长不能为空!");
  91. return;
  92. }
  93. }
  94. ScrappedLenList = list2;
  95. DialogResult = DialogResult.OK;
  96. }
  97. private void FrmScrap_Load(object sender, EventArgs e)
  98. {
  99. EntityHelper.ShowGridCaption<HttLoadingResultEntity>(ultraGridDetailDes2.DisplayLayout.Bands[0]);
  100. }
  101. private void ultraGridDetailDes1_CellChange(object sender, CellEventArgs e)
  102. {
  103. if (e.Cell.Column.Key == "Chk")
  104. GridEdite(e.Cell.Row);
  105. else if (e.Cell.Column.Key == "DefFillCode")
  106. e.Cell.Row.Cells["DefFillName"].Value = e.Cell.Text;
  107. }
  108. /// <summary>
  109. /// ulltragrid控件受勾影响(打钩可编辑,不打勾不能编辑)**
  110. /// </summary>
  111. /// <param name="row"></param>
  112. private void GridEdite(UltraGridRow row)
  113. {
  114. ultraGridDetailDes2.UpdateData();
  115. if (row.GetValue("Chk") == "True")
  116. {
  117. foreach (var cell in row.Cells)
  118. if (cell.Column.CellActivation == Activation.AllowEdit)
  119. cell.Activation = Activation.AllowEdit;
  120. }
  121. else
  122. {
  123. foreach (var cell in row.Cells)
  124. {
  125. if (cell.Column.Key.Contains("Chk")) continue;
  126. if (cell.Column.CellActivation == Activation.AllowEdit)
  127. cell.Activation = Activation.ActivateOnly;
  128. }
  129. }
  130. ultraGridDetailDes2.UpdateData();
  131. }
  132. private void ultraGridDetailDes_AfterRowInsert(object sender, RowEventArgs e)
  133. {
  134. DataTable dt4 = BatchNo.DataSource as DataTable;
  135. if (dt4 != null && dt4.Rows.Count == 1)
  136. {
  137. e.Row.Cells["BatchNo"].Value = dt4.Rows[0]["PHY_BATCH_NO"].ToString();
  138. }
  139. GridEdite(e.Row);
  140. }
  141. private void ultraGridDetailDes2_InitializeRow(object sender, InitializeRowEventArgs e)
  142. {
  143. }
  144. private void ultraGridDetailDes2_InitializeTemplateAddRow(object sender, InitializeTemplateAddRowEventArgs e)
  145. {
  146. if (ultraGridDetailDes2.ActiveRow == null)
  147. {
  148. e.TemplateAddRow.Activated = true;
  149. }
  150. }
  151. }
  152. }