FrmBaseMaterialHPl.cs 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. using Core.Mes.Client.Comm.Format;
  2. using Core.Mes.Client.Comm.Server;
  3. using Core.Mes.Client.Comm.Tool;
  4. using Core.StlMes.Client.PlnSaleOrd.BaseMethod;
  5. using Core.StlMes.Client.PlnSaleOrd.Entity;
  6. using CoreFS.CA06;
  7. using Infragistics.Win.UltraWinGrid;
  8. using System;
  9. using System.Collections;
  10. using System.Collections.Generic;
  11. using System.ComponentModel;
  12. using System.Data;
  13. using System.Drawing;
  14. using System.Linq;
  15. using System.Text;
  16. using System.Windows.Forms;
  17. namespace Core.StlMes.Client.PlnSaleOrd
  18. {
  19. public partial class FrmBaseMaterialHPl : FrmBase
  20. {
  21. public bool Flag = false;
  22. private string _inMaterialNo = "";
  23. private string _outMaterialNo = "";
  24. private string _inMaterialDesc = "";
  25. private string _outMaterialDesc = "";
  26. private string _plineCode = "";
  27. private string _proPlanId = "";
  28. public FrmBaseMaterialHPl()
  29. {
  30. InitializeComponent();
  31. }
  32. public FrmBaseMaterialHPl(string inMaterialNo, string outMaterialNo, string plineCode, OpeBase ob, string proPlanId)
  33. {
  34. this._inMaterialNo = inMaterialNo;
  35. this._outMaterialNo = outMaterialNo;
  36. this._plineCode = plineCode;
  37. this.ob = ob;
  38. _proPlanId = proPlanId;
  39. InitializeComponent();
  40. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  41. }
  42. private void FrmBaseMaterialHPl_Load(object sender, EventArgs e)
  43. {
  44. BaseHelper.setColumnBackColor(ultraGridJg, new string[] { "HrCapcty", "PrdRate", "DisableFl", "WasteRate", "PlineCode", "PlineLevel" });
  45. BaseHelper.InitCellPosition(ultraGridJg, new string[] { "HrCapcty", "PrdRate", "WasteRate", "PlineLevel"});
  46. InitMaterial();
  47. //如果在基础镦拔扩找不到,则不执行
  48. if (_inMaterialDesc.Equals(""))
  49. {
  50. ultraGridJg.Enabled = false;
  51. return;
  52. }
  53. Query();
  54. }
  55. private void InitMaterial()
  56. {
  57. DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialHPl.getBaseMaterialH", new object[] { _inMaterialNo, _outMaterialNo }, this.ob);
  58. if (dt != null && dt.Rows.Count > 0)
  59. {
  60. _inMaterialDesc = dt.Rows[0]["IN_MATERIAL_DESC"].ToString();
  61. _outMaterialDesc = dt.Rows[0]["OUT_MATERIAL_DESC"].ToString();
  62. }
  63. }
  64. public void Query()
  65. {
  66. List<SlmBaseMaterialHPlEntity> materialFPlEntityList = EntityHelper.GetData<SlmBaseMaterialHPlEntity>(
  67. "com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialHPl.getBaseMaterialHPl", new object[] { _inMaterialNo, _outMaterialNo }, ob);
  68. slmBaseMaterialHPlEntityBindingSource.DataSource = materialFPlEntityList;
  69. if (!_plineCode.Equals(""))
  70. {
  71. IQueryable<UltraGridRow> chcRows = ultraGridJg.Rows.AsQueryable().Where(a => a.GetValue("PlineCode") == _plineCode);
  72. if (chcRows != null && chcRows.Count() != 0)
  73. {
  74. chcRows.First().Activate();
  75. chcRows.First().Cells["CHC"].Value = true;
  76. }
  77. }
  78. }
  79. private void update()
  80. {
  81. try
  82. {
  83. ultraGridJg.UpdateData();
  84. IQueryable<UltraGridRow> chcRows = ultraGridJg.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
  85. if (chcRows == null || chcRows.Count() == 0)
  86. {
  87. MessageUtil.ShowTips("请选择记录!");
  88. return;
  89. }
  90. ArrayList param = new ArrayList();
  91. foreach (UltraGridRow ugr in chcRows)
  92. {
  93. SlmBaseMaterialHPlEntity entity = (SlmBaseMaterialHPlEntity)ugr.ListObject;
  94. entity.UpdateName = UserInfo.GetUserName();
  95. string jsonStr = JSONFormat.Format(entity);
  96. param.Add(jsonStr);
  97. }
  98. if (MessageUtil.ShowYesNoAndQuestion("是否修改记录?") == DialogResult.No)
  99. {
  100. return;
  101. }
  102. ServerHelper.SetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialHPl.updateBaseMaterialHPl", new object[] { param }, this.ob);
  103. Query();
  104. MessageUtil.ShowTips("修改成功!");
  105. Flag = true;
  106. }
  107. catch (Exception e)
  108. {
  109. MessageUtil.ShowTips("数据异常,请重新操作!");
  110. }
  111. }
  112. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  113. {
  114. switch (e.Tool.Key)
  115. {
  116. case "Query":
  117. Query();
  118. break;
  119. case "Update":
  120. update();
  121. break;
  122. case "UpdatePline":
  123. UpdatePline();
  124. break;
  125. case "Close":
  126. this.Close();
  127. break;
  128. default:
  129. break;
  130. }
  131. }
  132. /// <summary>
  133. /// 修改产线
  134. /// </summary>
  135. private void UpdatePline()
  136. {
  137. ultraGridJg.UpdateData();
  138. IQueryable<UltraGridRow> chcRows = ultraGridJg.Rows.AsQueryable().Where(a => a.GetValue("CHC") == "True");
  139. if (chcRows == null || chcRows.Count() == 0)
  140. {
  141. MessageUtil.ShowTips("请选择记录!");
  142. return;
  143. }
  144. ArrayList param = new ArrayList();
  145. int count = 0;
  146. foreach (UltraGridRow ugr in chcRows)
  147. {
  148. count++;
  149. SlmBaseMaterialHPlEntity entity = (SlmBaseMaterialHPlEntity)ugr.ListObject;
  150. entity.UpdateName = UserInfo.GetUserName();
  151. string jsonStr = JSONFormat.Format(entity);
  152. param.Add(jsonStr);
  153. }
  154. if (count != 1)
  155. {
  156. MessageUtil.ShowTips("请选择一条记录!");
  157. return;
  158. }
  159. if (MessageUtil.ShowYesNoAndQuestion("是否修改?") == DialogResult.No)
  160. {
  161. return;
  162. }
  163. CoreClientParam ccp = new CoreClientParam();
  164. ccp.ServerName = "com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialHPl";
  165. ccp.MethodName = "updateBasePlineJgM";
  166. ccp.ServerParams = new object[] { param, _proPlanId, UserInfo.GetUserName() };
  167. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  168. if (ccp.ReturnCode == -1) return;
  169. MessageUtil.ShowTips(ccp.ReturnInfo);
  170. if (ccp.ReturnInfo.Equals("修改成功!"))
  171. {
  172. Query();
  173. Flag = true;
  174. }
  175. }
  176. private void ultraGridJg_InitializeRow(object sender, InitializeRowEventArgs e)
  177. {
  178. BaseHelper.ControlCellEdit(e.Row);
  179. }
  180. }
  181. }