FrmMaterialChoose.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. using Core.Mes.Client.Comm.Control;
  2. using Core.Mes.Client.Comm.Format;
  3. using Core.Mes.Client.Comm.Server;
  4. using Core.Mes.Client.Comm.Tool;
  5. using Core.StlMes.Client.PlnSaleOrd.BaseMethod;
  6. using Core.StlMes.Client.PlnSaleOrd.炉计划.Entity;
  7. using Core.StlMes.Client.PlnSaleOrd.炉计划.Tool;
  8. using CoreFS.CA06;
  9. using Infragistics.Win.UltraWinGrid;
  10. using System;
  11. using System.Collections;
  12. using System.Collections.Generic;
  13. using System.ComponentModel;
  14. using System.Data;
  15. using System.Drawing;
  16. using System.Linq;
  17. using System.Text;
  18. using System.Windows.Forms;
  19. namespace Core.StlMes.Client.PlnSaleOrd.炉计划
  20. {
  21. public partial class FrmMaterialChoose : FrmBase
  22. {
  23. private string _inMaterialNo;
  24. private string _processCode;
  25. private string _proPlanId;
  26. private string _gxPlanNo;
  27. private string _userName;
  28. private OpeBase ob;
  29. public FrmMaterialChoose()
  30. {
  31. InitializeComponent();
  32. }
  33. public FrmMaterialChoose(string inMaterialNo, string processCode,string proPlanId,string gxPlanNo,string userName, OpeBase ob)
  34. {
  35. InitializeComponent();
  36. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  37. this._inMaterialNo = inMaterialNo;
  38. this._processCode = processCode;
  39. this._proPlanId = proPlanId;
  40. this._gxPlanNo = gxPlanNo;
  41. this._userName = userName;
  42. this.ob = ob;
  43. }
  44. private void FrmMaterialChoose_Load(object sender, EventArgs e)
  45. {
  46. BaseHelper.InitCellPosition(ultraGridChoose, new string[] { "JudgeStoveNo", "GxPlanNo", "BatchNo", "BatchGroudNo", "ActDimater",
  47. "ActHeight", "ActLen", "ActLenMin", "ActLenMax", "ActCount", "ActWeight" });
  48. BaseHelper.GridColumnSum(ultraGridChoose, new string[] { "ActWeight" });
  49. BaseHelper.GridColumnCount(ultraGridChoose, new string[] { "ActCount" });
  50. // BaseHelper.setColumnBackColor(ultraGridChoose, new string[] { "ActCount" });
  51. ultraGridChoose.DisplayLayout.Bands[0].Columns["ActCount"].MaskInput = "nn,nnn";
  52. Query();
  53. }
  54. private void Query()
  55. {
  56. List<MaterialChooseEntity> listSource = EntityHelper.GetData<MaterialChooseEntity>
  57. ("com.steering.pss.plnsaleord.planStove.FrmMaterialChoose.queryMaterial", new object[] { _inMaterialNo, _processCode }, ob);
  58. materialChooseEntityBindingSource.DataSource = listSource;
  59. }
  60. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  61. {
  62. switch (e.Tool.Key)
  63. {
  64. case "Query": // ButtonTool
  65. Query();
  66. break;
  67. case "Liku": // ButtonTool
  68. Liku();
  69. break;
  70. case "Monomer": // ButtonTool
  71. Monomer();
  72. break;
  73. case "Close": // ButtonTool
  74. this.Close();
  75. break;
  76. }
  77. }
  78. /// <summary>
  79. /// 利库
  80. /// </summary>
  81. private void Liku()
  82. {
  83. ultraGridChoose.UpdateData();
  84. IQueryable<UltraGridRow> chcRows = ultraGridChoose.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
  85. if (chcRows == null || chcRows.Count() == 0)
  86. {
  87. MessageUtil.ShowWarning("请选择物料!");
  88. return;
  89. }
  90. ArrayList list = new ArrayList();
  91. foreach(UltraGridRow ugr in chcRows){
  92. MaterialChooseEntity entity = (MaterialChooseEntity)ugr.ListObject;
  93. if (!entity.ProPlanId.Equals(""))
  94. {
  95. MessageUtil.ShowWarning("物料已利库,请先脱单!");
  96. return;
  97. }
  98. if (entity.ActCount.Equals("") || Convert.ToInt32(entity.ActCount) <= 0)
  99. {
  100. MessageUtil.ShowWarning("物料利库支数为0!");
  101. return;
  102. }
  103. list.Add(JSONFormat.Format(entity));
  104. }
  105. if (MessageUtil.ShowYesNoAndQuestion("是否利库?") == DialogResult.No)
  106. {
  107. return;
  108. }
  109. string[] param = StoveHelper.SetData("com.steering.pss.plnsaleord.planStove.FrmMaterialChoose.liku", new object[] { _proPlanId, _gxPlanNo,
  110. _processCode, list,_userName}, ob);
  111. if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); return ; }
  112. else
  113. {
  114. MessageUtil.ShowTips(param[1]);
  115. if ((bool.Parse(param[0]))) { Query(); return; } else { return; }
  116. }
  117. }
  118. private void Monomer()
  119. {
  120. ultraGridChoose.UpdateData();
  121. IQueryable<UltraGridRow> chcRows = ultraGridChoose.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
  122. if (chcRows == null || chcRows.Count() == 0)
  123. {
  124. MessageUtil.ShowWarning("请选择物料!");
  125. return;
  126. }
  127. ArrayList list = new ArrayList();
  128. foreach (UltraGridRow ugr in chcRows)
  129. {
  130. MaterialChooseEntity entity = (MaterialChooseEntity)ugr.ListObject;
  131. if (entity.ProPlanId.Equals(""))
  132. {
  133. MessageUtil.ShowWarning("物料已脱单!");
  134. return;
  135. }
  136. if (entity.ActCount.Equals("") || Convert.ToInt32(entity.ActCount) <= 0)
  137. {
  138. MessageUtil.ShowWarning("物料脱单支数为0!");
  139. return;
  140. }
  141. list.Add(JSONFormat.Format(entity));
  142. }
  143. if (MessageUtil.ShowYesNoAndQuestion("是否脱单?") == DialogResult.No)
  144. {
  145. return;
  146. }
  147. string[] param = StoveHelper.SetData("com.steering.pss.plnsaleord.planStove.FrmMaterialChoose.monomer", new object[] { list, _processCode, _userName }, ob);
  148. if (param == null) { MessageUtil.ShowTips("服务端处理失败!"); return; }
  149. else
  150. {
  151. MessageUtil.ShowTips(param[1]);
  152. if ((bool.Parse(param[0]))) { Query(); return; } else { return; }
  153. }
  154. }
  155. private void ultraGridChoose_AfterSelectChange(object sender, Infragistics.Win.UltraWinGrid.AfterSelectChangeEventArgs e)
  156. {
  157. foreach (UltraGridRow uRow in ultraGridChoose.Selected.Rows)
  158. {
  159. if (uRow.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow))
  160. {
  161. uRow.Cells["CHC"].Value = true;
  162. }
  163. }
  164. }
  165. private void ultraGridChoose_InitializeRow(object sender, InitializeRowEventArgs e)
  166. {
  167. BaseHelper.ControlCellEdit(e.Row);
  168. }
  169. private void ultraGridChoose_CellChange(object sender, CellEventArgs e)
  170. {
  171. ultraGridChoose.UpdateData();
  172. if (e.Cell.Column.Key.Equals("ActCount"))
  173. {
  174. if (e.Cell.Value == null || e.Cell.Value.ToString().Equals(""))
  175. {
  176. e.Cell.Value = 0;
  177. }
  178. }
  179. }
  180. }
  181. }