FrmOfflineZg.cs 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  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.YdmBcPipeManage.Entity;
  5. using CoreFS.CA06;
  6. using Infragistics.Win.UltraWinGrid;
  7. using System;
  8. using System.Collections;
  9. using System.Collections.Generic;
  10. using System.ComponentModel;
  11. using System.Data;
  12. using System.Drawing;
  13. using System.Linq;
  14. using System.Text;
  15. using System.Windows.Forms;
  16. namespace Core.StlMes.Client.YdmBcPipeManage
  17. {
  18. public partial class FrmOfflineZg : FrmBase
  19. {
  20. public FrmOfflineZg(OpeBase ob, string[] valid)
  21. {
  22. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  23. InitializeComponent();
  24. _ob = ob;
  25. _valid = valid;
  26. }
  27. private string[] plineCode = null;
  28. private string[] _valid = null;
  29. private void FrmOfflineZg_Load(object sender, EventArgs e)
  30. {
  31. EntityHelper.ShowGridCaption<MilPlanEntity>(ultraGrid1.DisplayLayout.Bands[0]);
  32. plineCode = BaseMethod.getPCodePline(_valid, _ob);
  33. doQueryMilPlan();
  34. }
  35. OpeBase _ob;
  36. /// <summary>
  37. /// 重写基类方法
  38. /// </summary>
  39. /// <param name="sender"></param>
  40. /// <param name="To
  41. /// olbarKey"></param>
  42. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  43. {
  44. switch (e.Tool.Key)
  45. {
  46. case "DoQuery":
  47. doQueryMilPlan();
  48. break;
  49. case"DoOffline":
  50. doOffline();
  51. break;
  52. case"DoBack":
  53. doBack();
  54. break;
  55. case "Close":
  56. this.Close();
  57. break;
  58. }
  59. }
  60. /// <summary>
  61. /// 查询可离线数据
  62. /// </summary>
  63. private void doQueryMilPlan()
  64. {
  65. string lotNo = "";
  66. string judgeNo = "";
  67. if(chkLotNo.Checked && this.txtLotNo.Text.Trim() != "")
  68. {
  69. lotNo = this.txtLotNo.Text.Trim();
  70. }
  71. if(this.chkFurnace.Checked && this.txtFurnace.Text != "")
  72. {
  73. judgeNo = this.txtFurnace.Text.Trim();
  74. }
  75. List<MilPlanEntity> listSource = EntityHelper.GetData<MilPlanEntity>(
  76. "com.steering.ydm.bc.FrmFilpOutStorage.doQueryMilPlan", new object[] { lotNo, judgeNo,plineCode }, _ob);
  77. milPlanEntityBindingSource.DataSource = listSource;
  78. }
  79. /// <summary>
  80. /// 离线
  81. /// </summary>
  82. private void doOffline()
  83. {
  84. this.ultraGrid1.UpdateData();
  85. UltraGridRow uRow = this.ultraGrid1.ActiveRow;
  86. if (uRow == null) return;
  87. if (cmbProcess.Text == "")
  88. {
  89. MessageUtil.ShowTips("离线时请选择离线工序点!");
  90. return;
  91. }
  92. MilPlanEntity milPlanTity = (MilPlanEntity)uRow.ListObject;
  93. if (!StringUtil.IsInt(milPlanTity.LxCount.ToString2()))
  94. {
  95. MessageUtil.ShowTips("离线支数请输入整数!");
  96. return;
  97. }
  98. string milPlanEntity = JSONFormat.Format(milPlanTity);
  99. DataTable ds = getStoreNo(milPlanTity.PlineCode,_ob);
  100. if (ds == null)
  101. {
  102. MessageUtil.ShowTips("无轧管在线库基础信息,请维护!");
  103. return;
  104. }
  105. ArrayList parmList = new ArrayList();
  106. parmList.Add(UserInfo.GetUserName());
  107. parmList.Add(UserInfo.GetDeptid());
  108. parmList.Add(UserInfo.GetDepartment());
  109. parmList.Add(UserInfo.GetUserOrder());
  110. parmList.Add(UserInfo.GetUserGroup());
  111. parmList.Add(ds.Rows[0]["STORAGE_NO"].ToString());
  112. parmList.Add(ds.Rows[0]["STORAGE_NO"].ToString() + "10101");
  113. parmList.Add(ds.Rows[0]["STORAGE_TYPE_NO"].ToString());
  114. parmList.Add(ds.Rows[0]["STORAGE_TYPE_NAME"].ToString());
  115. CoreClientParam ccp = new CoreClientParam();
  116. ccp.ServerName = "com.steering.ydm.bc.FrmFilpOutStorage";
  117. ccp.MethodName = "doOffline";
  118. ccp.ServerParams = new object[] { milPlanEntity, parmList, this.cmbProcess.Value.ToString2() };
  119. ccp = _ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  120. if (ccp.ReturnCode != -1)
  121. {
  122. if (ccp.ReturnInfo.Equals("离线成功!"))
  123. {
  124. doQueryMilPlan();
  125. MessageUtil.ShowTips(ccp.ReturnInfo);
  126. }
  127. else
  128. {
  129. MessageUtil.ShowTips(ccp.ReturnInfo);
  130. }
  131. }
  132. }
  133. /// <summary>
  134. /// 查询仓库信息
  135. /// </summary>
  136. /// <param name="plineCode"></param>
  137. /// <returns></returns>
  138. private DataTable getStoreNo(string plineCode,OpeBase ob)
  139. {
  140. DataTable ds = ServerHelper.GetData("com.steering.ydm.bc.FrmFilpOutStorage.doQueryStoreNo", new object[] { plineCode }, ob);
  141. if (ds.Rows.Count > 0)
  142. {
  143. return ds;
  144. }
  145. else
  146. {
  147. return null;
  148. }
  149. }
  150. /// <summary>
  151. /// 撤销离线
  152. /// </summary>
  153. private void doBack()
  154. {
  155. }
  156. private void chkLotNo_CheckedChanged(object sender, EventArgs e)
  157. {
  158. this.txtLotNo.Enabled = this.chkLotNo.Checked;
  159. }
  160. private void chkFurnace_CheckedChanged(object sender, EventArgs e)
  161. {
  162. this.txtFurnace.Enabled = this.chkFurnace.Checked;
  163. }
  164. }
  165. }