FrmThreadingResult.cs 56 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using CoreFS.CA06;
  10. using Core.Mes.Client.Comm.Server;
  11. using Core.Mes.Client.Comm.Control;
  12. using Infragistics.Win.UltraWinGrid;
  13. using System.Collections;
  14. using com.steering.mes.mcp.entity;
  15. using Core.StlMes.Client.Mcp.Common;
  16. using Core.Mes.Client.Comm.Tool;
  17. using Core.StlMes.Client.Mcp.CollarMaterial;
  18. using Infragistics.Win;
  19. using Core.StlMes.Client.Mcp.Control;
  20. using Core.StlMes.Client.Mcp.Coupling;
  21. using Core.StlMes.Client.Mcp.Entity;
  22. using Core.StlMes.Client.Mcp.Report;
  23. namespace Core.StlMes.Client.Coup
  24. {
  25. public partial class FrmThreadingResult : FrmBase
  26. {
  27. private string departm = "";//获取部门ID
  28. private string[] plineCode = null;//获取产线代码
  29. private string latGx = "";//车丝工序
  30. private string GxName = "";//车丝工序名称
  31. public string LiXian = "";
  32. private string StrMemo = "";//备注
  33. private string[] plineCodes;
  34. private int CutPiece = 0;//最大可切支数
  35. private int threadPiece = 0;
  36. public FrmThreadingResult()
  37. {
  38. InitializeComponent();
  39. this.IsLoadUserView = true;
  40. }
  41. protected override void OnLoad(EventArgs e)
  42. {
  43. base.OnLoad(e);
  44. // this.coupWoIdPlanControl1.Grid.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
  45. ////设置计划区控件只读
  46. // //this.coupWoIdPlanControl1.SetAllColumnsActiveOnly();
  47. // coupWoIdPlanControl1.Ob = this.ob;
  48. }
  49. private void FrmThreadingResult_Load(object sender, EventArgs e)
  50. {
  51. EntityHelper.ShowGridCaption<PlnZyJgWorkbillEntity>(ultraGridWoId.DisplayLayout.Bands[0]);
  52. EntityHelper.ShowGridCaption<PlnZyJgWorkbillEntity>(ultraGrid1.DisplayLayout.Bands[0]);
  53. departm = UserInfo.GetDeptid();
  54. //plineCode = McpBaseHelper.GetPCodePline(departm, this.ob);
  55. plineCodes = comm.GetPlineCode(this.ValidDataPurviewIds, "H", ob);
  56. ProTime.Value = DateTime.Today;
  57. //获取废品原因
  58. DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupCutService.getCutResultFp", new object[] { "7024" }, this.ob);
  59. cmbReason.DataSource = dt1;
  60. cmbReason.ValueMember = "BASENAME";
  61. YdmBaseClass.SetComboItemHeight(cmbReason);
  62. txtBz.Value = UserInfo.GetUserGroup();
  63. txtBC.Value = UserInfo.GetUserOrder();
  64. txtUser.Text = UserInfo.GetUserName();
  65. //获取车丝工序
  66. DataTable dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryGX", new object[] { "700305" }, this.ob);
  67. if (dt2.Rows.Count > 0)
  68. {
  69. latGx = dt2.Rows[0]["BASECODE"].ToString();
  70. GxName = dt2.Rows[0]["BASENAME"].ToString();
  71. }
  72. }
  73. public override void ToolBar_Click(object sender, string ToolbarKey)
  74. {
  75. switch (ToolbarKey)
  76. {
  77. case "DoQuery":
  78. QuerySinglePlan();
  79. break;
  80. case "DoSave":
  81. DoSave();
  82. break;
  83. case "DoUpdate":
  84. DoUpdate();
  85. break;
  86. case "DoDelete":
  87. DoDelete();
  88. break;
  89. case "DoBeside"://结炉
  90. DoBeside();
  91. break;
  92. case "UndoBeside"://撤销结炉
  93. UndoBeside();
  94. break;
  95. case "Offline"://离线
  96. Offline();
  97. break;
  98. case "unOffline"://撤销离线
  99. unOffline();
  100. break;
  101. case "Confirm":
  102. confirm();//确认
  103. break;
  104. case "CancelConfirm":
  105. cancelConfirm();
  106. break;
  107. case "DoClose":
  108. this.Close();
  109. break;
  110. }
  111. }
  112. ///
  113. /// 取消确认
  114. ///
  115. private void cancelConfirm()
  116. {
  117. ultraGrid2.UpdateData();
  118. UltraGridRow uRow = this.ultraGrid2.ActiveRow;
  119. if (uRow == null) { MessageUtil.ShowTips("无车丝实绩!"); return; }
  120. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  121. if (row == null)
  122. {
  123. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  124. }
  125. ArrayList list1 = new ArrayList();
  126. int UpdaCount = 0;
  127. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  128. {
  129. if (Convert.ToBoolean(ugr.Cells["CHECK"].Text) == true)
  130. {
  131. if (ugr.Cells["CONFIRM"].Value.ToString().Equals("0"))
  132. {
  133. MessageUtil.ShowTips("选中有没确认实绩,不允许取消确认!");
  134. return;
  135. }
  136. UpdaCount += 1;
  137. ArrayList list = new ArrayList();
  138. list.Add(ugr.Cells["RESULT_NO"].Text.ToString());
  139. list.Add(UserInfo.GetUserName());
  140. list.Add(DateTime.Now.ToString());
  141. list1.Add(list);
  142. }
  143. }
  144. if (UpdaCount == 0) { MessageUtil.ShowTips("请选择车丝实绩数据!"); return; }
  145. if (MessageUtil.ShowYesNoAndQuestion("是否取消确认车丝实绩?") == DialogResult.No)
  146. {
  147. return;
  148. }
  149. CoreClientParam ccp = new CoreClientParam();
  150. try
  151. {
  152. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  153. if (Constant.WaitingForm == null)
  154. {
  155. Constant.WaitingForm = new WaitingForm();
  156. }
  157. Constant.WaitingForm.ShowToUser = true;
  158. Constant.WaitingForm.Show();
  159. Constant.WaitingForm.Update();
  160. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  161. ccp.MethodName = "getCancelConfirm";
  162. ccp.ServerParams = new object[] { list1 };
  163. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  164. this.Cursor = Cursors.Default;
  165. Constant.WaitingForm.ShowToUser = false;
  166. Constant.WaitingForm.Close();
  167. Constant.WaitingForm = null;
  168. }
  169. catch (Exception ex)
  170. {
  171. this.Cursor = Cursors.Default;
  172. Constant.WaitingForm.ShowToUser = false;
  173. Constant.WaitingForm.Close();
  174. Constant.WaitingForm = null;
  175. }
  176. if (ccp.ReturnCode != -1)
  177. {
  178. MessageUtil.ShowTips(ccp.ReturnInfo);
  179. if (ccp.ReturnInfo.Equals("取消确认成功!"))
  180. {
  181. QuerySinglePlan();
  182. }
  183. }
  184. }
  185. ///
  186. /// 确认
  187. ///
  188. private void confirm()
  189. {
  190. ultraGrid2.UpdateData();
  191. UltraGridRow uRow = this.ultraGrid2.ActiveRow;
  192. if (uRow == null) { MessageUtil.ShowTips("无车丝实绩!"); return; }
  193. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  194. if (row == null)
  195. {
  196. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  197. }
  198. ArrayList list1 = new ArrayList();
  199. int UpdaCount = 0;
  200. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  201. {
  202. if (Convert.ToBoolean(ugr.Cells["CHECK"].Text) == true)
  203. {
  204. if (ugr.Cells["CONFIRM"].Value.ToString().Equals("1"))
  205. {
  206. MessageUtil.ShowTips("选中有已确认实绩,不允许再次确认!");
  207. return;
  208. }
  209. UpdaCount += 1;
  210. ArrayList list = new ArrayList();
  211. list.Add(ugr.Cells["RESULT_NO"].Text.ToString());
  212. list.Add(UserInfo.GetUserName());
  213. list.Add(DateTime.Now.ToString());
  214. list1.Add(list);
  215. }
  216. }
  217. if (UpdaCount == 0) { MessageUtil.ShowTips("请选择车丝实绩数据!"); return; }
  218. if (MessageUtil.ShowYesNoAndQuestion("是否确认车丝实绩?") == DialogResult.No)
  219. {
  220. return;
  221. }
  222. CoreClientParam ccp = new CoreClientParam();
  223. try
  224. {
  225. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  226. if (Constant.WaitingForm == null)
  227. {
  228. Constant.WaitingForm = new WaitingForm();
  229. }
  230. Constant.WaitingForm.ShowToUser = true;
  231. Constant.WaitingForm.Show();
  232. Constant.WaitingForm.Update();
  233. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  234. ccp.MethodName = "getConfirm";
  235. ccp.ServerParams = new object[] { list1 };
  236. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  237. this.Cursor = Cursors.Default;
  238. Constant.WaitingForm.ShowToUser = false;
  239. Constant.WaitingForm.Close();
  240. Constant.WaitingForm = null;
  241. }
  242. catch (Exception ex)
  243. {
  244. this.Cursor = Cursors.Default;
  245. Constant.WaitingForm.ShowToUser = false;
  246. Constant.WaitingForm.Close();
  247. Constant.WaitingForm = null;
  248. }
  249. if (ccp.ReturnCode != -1)
  250. {
  251. MessageUtil.ShowTips(ccp.ReturnInfo);
  252. if (ccp.ReturnInfo.Equals("确认成功!"))
  253. {
  254. QuerySinglePlan();
  255. }
  256. }
  257. }
  258. private void Offline()
  259. {
  260. string _strat="";
  261. //UltraGridRow row1 = ultraGrid2.ActiveRow;
  262. //if (row1 == null)
  263. //{
  264. // MessageUtil.ShowTips("没有车丝实绩不能离线!");
  265. // return;
  266. //}
  267. OffLineCut frm = new OffLineCut();
  268. frm.ShowDialog();
  269. LiXian = frm.StrNum;
  270. _strat=frm.Strat;
  271. StrMemo = frm.StrMemo;
  272. if(_strat.Equals("2"))return;
  273. if (LiXian.Equals("") || LiXian.Equals("0")) { MessageUtil.ShowTips("离线支数不能为空!"); return; }
  274. UltraGridRow row = ultraGridWoId.ActiveRow;
  275. if (row == null) return;
  276. if (row.Cells["ZyBillStatus"].Value.ToString() == "生产完成")
  277. {
  278. MessageUtil.ShowTips("此炉次计划整体已生产完成,不允许此操作!");
  279. return;
  280. }
  281. string woId = row.Cells["WoId"].Value.ToString();
  282. //查询切断实绩支数和
  283. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupCutService.getCutResult", new object[] { row.Cells["WoId"].Value.ToString() }, this.ob);
  284. //VrpLoadingResultEntity result1 = new VrpLoadingResultEntity();
  285. //this.planExpanQuery1.Value = result;
  286. string pronum = "";//锯切支数
  287. string cutnum = "";//锯切个数
  288. if (dt.Rows.Count > 0)
  289. {
  290. pronum = dt.Rows[0]["PRO_NUM"].ToString();
  291. cutnum = dt.Rows[0]["CUT_NUM"].ToString();
  292. }
  293. else
  294. {
  295. pronum = "0";
  296. cutnum = "0";
  297. }
  298. if (!row.Cells["Ifsplit"].Value.Equals("1"))
  299. {
  300. if (Convert.ToInt32(LiXian) > Convert.ToInt32(cutnum) - Convert.ToInt32(threadPiece) - Convert.ToInt32(offlinePiece.Value))
  301. {
  302. MessageUtil.ShowTips("离线个数不能大于锯切个数减去已经车丝和离线个数的差!");
  303. return;
  304. }
  305. }
  306. offlinePiece.Value = Convert.ToInt32(LiXian) + Convert.ToInt32(offlinePiece.Value);
  307. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  308. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  309. //{
  310. // MessageUtil.ShowTips("此工单车丝工序点已结炉,不允许此操作!");
  311. // return;
  312. //}
  313. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryCouplingcominfo", new object[] { woId, latGx }, this.ob);
  314. //if (dt.Rows[0]["STATION_STATUS"].ToString().Equals("2"))
  315. //{
  316. // MessageUtil.ShowTips("此工单工序点已结炉,不允许此操作!");
  317. // return;
  318. //}
  319. string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  320. ArrayList list = new ArrayList();
  321. list.Add(LiXian);
  322. list.Add(row.Cells["WoId"].Text.ToString());
  323. list.Add(row.Cells["HeatPlanNo"].Text.ToString());
  324. list.Add(row.Cells["JudgeStoveNo"].Text.ToString());
  325. list.Add(row.Cells["BatchNo"].Text.ToString());
  326. list.Add(row.Cells["PlineCode"].Text.ToString());
  327. list.Add(row.Cells["PlineName"].Text.ToString());
  328. list.Add(this.UserInfo.GetUserName());
  329. list.Add(this.UserInfo.GetUserOrder());
  330. list.Add(this.UserInfo.GetUserGroup());
  331. list.Add(time);
  332. list.Add("");
  333. list.Add(StrMemo);
  334. list.Add(row.Cells["BatchGroudNo"].Value.ToString());
  335. CoreClientParam ccp = new CoreClientParam();
  336. try
  337. {
  338. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  339. if (Constant.WaitingForm == null)
  340. {
  341. Constant.WaitingForm = new WaitingForm();
  342. }
  343. Constant.WaitingForm.ShowToUser = true;
  344. Constant.WaitingForm.Show();
  345. Constant.WaitingForm.Update();
  346. //ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  347. //ccp.MethodName = "lixianThreadingResult";
  348. ccp.ServerName = "com.steering.mes.mcp.coup.CoupCutService";
  349. ccp.MethodName = "lixianThreadingResult";
  350. ccp.ServerParams = new object[] { list, latGx,GxName };
  351. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  352. this.Cursor = Cursors.Default;
  353. Constant.WaitingForm.ShowToUser = false;
  354. Constant.WaitingForm.Close();
  355. Constant.WaitingForm = null;
  356. }
  357. catch (Exception ex)
  358. {
  359. this.Cursor = Cursors.Default;
  360. Constant.WaitingForm.ShowToUser = false;
  361. Constant.WaitingForm.Close();
  362. Constant.WaitingForm = null;
  363. }
  364. if (ccp.ReturnCode != -1)
  365. {
  366. MessageUtil.ShowTips(ccp.ReturnInfo);
  367. if (ccp.ReturnInfo.Equals("离线成功!"))
  368. {
  369. QuerySinglePlan();
  370. DoClean();
  371. }
  372. }
  373. }
  374. //撤销离线
  375. private void unOffline()
  376. {
  377. ultraGrid2.UpdateData();
  378. UltraGridRow uRow = this.ultraGrid2.ActiveRow;
  379. if (uRow == null) { MessageUtil.ShowTips("车丝实绩无数据!"); return; }
  380. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  381. if (uRow == null)
  382. {
  383. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  384. }
  385. if (row.Cells["ZyBillStatus"].Value.ToString() == "生产完成")
  386. {
  387. MessageUtil.ShowTips("此炉次计划整体已生产完成,不允许此操作!");
  388. return;
  389. }
  390. string woId = row.Cells["WoId"].Value.ToString();
  391. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  392. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  393. //{
  394. // MessageUtil.ShowTips("此工单工序点已结炉,不允许此操作!");
  395. // return;
  396. //}
  397. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryCouplingcominfo", new object[] { woId, latGx }, this.ob);
  398. //if (dt.Rows[0]["STATION_STATUS"].ToString().Equals("2"))
  399. //{
  400. // MessageUtil.ShowTips("此工单工序点已结炉,不允许此操作!");
  401. // return;
  402. //}
  403. //if(!QueryStatusGd(row.Cells["WO_ID"].Value.ToString(), row.Cells["ZY_PLAN_ID"].Value.ToString())) return;
  404. ArrayList list1 = new ArrayList();
  405. int UpdaCount = 0;
  406. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  407. {
  408. if (Convert.ToBoolean(ugr.Cells["CHECK"].Text) == true)
  409. {
  410. UpdaCount += 1;
  411. ArrayList list = new ArrayList();
  412. list.Add(ugr.Cells["RESULT_NO"].Text.ToString());
  413. list.Add(ugr.Cells["OFF_NUM"].Text.ToString());
  414. list1.Add(list);
  415. }
  416. }
  417. if (UpdaCount == 0) { MessageUtil.ShowTips("请选择离线数据!"); return; }
  418. if (MessageUtil.ShowYesNoAndQuestion("是否撤销离线?") == DialogResult.No)
  419. {
  420. return;
  421. }
  422. CoreClientParam ccp = new CoreClientParam();
  423. try
  424. {
  425. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  426. if (Constant.WaitingForm == null)
  427. {
  428. Constant.WaitingForm = new WaitingForm();
  429. }
  430. Constant.WaitingForm.ShowToUser = true;
  431. Constant.WaitingForm.Show();
  432. Constant.WaitingForm.Update();
  433. ccp.ServerName = "com.steering.mes.mcp.coup.CoupCutService";
  434. ccp.MethodName = "unlixianThreadingResult";
  435. ccp.ServerParams = new object[] { list1, row.Cells["WoId"].Text.ToString(), latGx };
  436. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  437. this.Cursor = Cursors.Default;
  438. Constant.WaitingForm.ShowToUser = false;
  439. Constant.WaitingForm.Close();
  440. Constant.WaitingForm = null;
  441. }
  442. catch (Exception ex)
  443. {
  444. this.Cursor = Cursors.Default;
  445. Constant.WaitingForm.ShowToUser = false;
  446. Constant.WaitingForm.Close();
  447. Constant.WaitingForm = null;
  448. }
  449. if (ccp.ReturnCode == -1) return;
  450. MessageUtil.ShowTips(ccp.ReturnInfo);
  451. if (ccp.ReturnInfo.Equals("撤销离线成功!"))
  452. {
  453. QuerySinglePlan();
  454. }
  455. }
  456. /// <summary>
  457. /// 结炉
  458. /// </summary>
  459. private void DoBeside()
  460. {
  461. UltraGridRow uRow = this.ultraGridWoId.ActiveRow;
  462. if (uRow == null)
  463. {
  464. MessageUtil.ShowTips("请选择需要结炉的工单号!");
  465. return;
  466. }
  467. //string zYgNo = uRow.Cells["ZY_PLAN_ID"].Value.ToString();
  468. string woId = uRow.Cells["WoId"].Value.ToString();
  469. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  470. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  471. //{
  472. // MessageUtil.ShowTips("此工单车丝工序点已结炉,不允许此操作!");
  473. // return;
  474. //}
  475. //if (uRow.Cells["ZY_BILL_STATUS"].Value.ToString() == "生产完成")
  476. //{
  477. // MessageUtil.ShowTips("此炉次计划整体已生产完成,不允许此操作!");
  478. // return;
  479. //}
  480. //ArrayList list = new ArrayList();
  481. //list.Add(zYgNo);
  482. //list.Add(latGx);
  483. //list.Add(woId);
  484. if (MessageUtil.ShowYesNoAndQuestion("是否结炉?") == DialogResult.No)
  485. {
  486. return;
  487. }
  488. CoreClientParam ccp = new CoreClientParam();
  489. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  490. ccp.MethodName = "doBeside";
  491. ccp.ServerParams = new object[] { latGx,woId };
  492. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  493. if (ccp.ReturnCode != -1)
  494. {
  495. MessageUtil.ShowTips(ccp.ReturnInfo);
  496. if (ccp.ReturnInfo.Equals("结炉成功!"))
  497. {
  498. QuerySinglePlan();
  499. }
  500. }
  501. }
  502. /// <summary>
  503. /// 撤销结炉
  504. /// </summary>
  505. private void UndoBeside()
  506. {
  507. UltraGridRow uRow = this.ultraGridWoId.ActiveRow;
  508. if (uRow == null)
  509. {
  510. MessageUtil.ShowTips("请选择需要撤销结炉的工单号!");
  511. return;
  512. }
  513. //string zYgNo = uRow.Cells["ZY_PLAN_ID"].Value.ToString();
  514. string woId = uRow.Cells["WoId"].Value.ToString();
  515. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  516. //if (!dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  517. //{
  518. // MessageUtil.ShowTips("此工单车丝工序点未结炉,不允许此操作!");
  519. // return;
  520. //}
  521. //if (uRow.Cells["ZY_BILL_STATUS"].Value.ToString() == "生产完成")
  522. //{
  523. // MessageUtil.ShowTips("此炉次计划整体已生产完成,不允许此操作!");
  524. // return;
  525. //}
  526. //ArrayList list = new ArrayList();
  527. //list.Add(zYgNo);
  528. //list.Add(latGx);
  529. //list.Add(woId);
  530. if (MessageUtil.ShowYesNoAndQuestion("是否撤销结炉?") == DialogResult.No)
  531. {
  532. return;
  533. }
  534. CoreClientParam ccp = new CoreClientParam();
  535. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  536. ccp.MethodName = "undoBeside";
  537. ccp.ServerParams = new object[] { latGx,woId };
  538. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  539. if (ccp.ReturnCode != -1)
  540. {
  541. MessageUtil.ShowTips(ccp.ReturnInfo);
  542. if (ccp.ReturnInfo.Equals("撤销结炉成功!"))
  543. {
  544. QuerySinglePlan();
  545. }
  546. }
  547. }
  548. /// <summary>
  549. /// 简单查询
  550. /// </summary>
  551. private void QuerySinglePlan()
  552. {
  553. string woId = "";
  554. string[] starts = { };
  555. string judgeStoveNo = "";
  556. string plnNo = "";
  557. #region 条件
  558. if (chkStarts.Checked)
  559. {
  560. if (string.IsNullOrEmpty(cmbStarts.Text.Trim()))
  561. {
  562. MessageUtil.ShowTips("请选择工单状态!");
  563. return;
  564. }
  565. else
  566. {
  567. starts = (cmbStarts.Value as List<object>).Select(p => p.ToString().Trim()).ToArray();
  568. }
  569. }
  570. if (chkwoId.Checked)
  571. {
  572. if (chkwoId.Checked && string.IsNullOrEmpty(txtWoId.Text.Trim()))
  573. {
  574. MessageUtil.ShowTips("请输入工单号!");
  575. return;
  576. }
  577. else
  578. {
  579. woId = txtWoId.Text.ToString().Trim();
  580. }
  581. }
  582. else
  583. {
  584. woId = "";
  585. }
  586. if (chkPlnNo.Checked)
  587. {
  588. if (chkPlnNo.Checked && string.IsNullOrEmpty(txtPlnNo.Text.Trim()))
  589. {
  590. MessageUtil.ShowTips("请输入炉次计划号!");
  591. return;
  592. }
  593. else
  594. {
  595. plnNo = txtPlnNo.Text.ToString().Trim();
  596. }
  597. }
  598. else
  599. {
  600. plnNo = "";
  601. }
  602. if (chkJuNo.Checked)
  603. {
  604. if (chkJuNo.Checked && string.IsNullOrEmpty(txtJudgeStoveNO.Text.Trim()))
  605. {
  606. MessageUtil.ShowTips("请输入炉号!");
  607. return;
  608. }
  609. else
  610. {
  611. judgeStoveNo = txtJudgeStoveNO.Text.ToString().Trim();
  612. }
  613. }
  614. else
  615. {
  616. judgeStoveNo = "";
  617. }
  618. #endregion
  619. List<PlnZyJgWorkbillEntity> listSource = EntityHelper.GetData<PlnZyJgWorkbillEntity>
  620. ("com.steering.mes.mcp.coup.CoupLoadingService.getQueryWoId1", new object[] { woId, plnNo, judgeStoveNo, starts, plineCodes }, this.ob);
  621. plnZyJgWorkbillEntitySource.DataSource = listSource;
  622. //GridHelper.RefreshAndAutoSize(ultraGridWoId);
  623. // List<PlnZyJgWorkbillEntity> listSource1 = EntityHelper.GetData<PlnZyJgWorkbillEntity>
  624. //("com.steering.mes.mcp.coup.CoupLoadingService.ulgetQueryWoId", new object[] { woId, plnNo, judgeStoveNo, starts, plineCode[0].ToString() }, this.ob);
  625. // bindingSource1.DataSource = listSource1;
  626. // GridHelper.RefreshAndAutoSize(ultraGrid1);
  627. }
  628. /// <summary>
  629. /// 车丝作业计划详情
  630. /// </summary>
  631. private void ultraGridWoId_AfterRowActivate(object sender, EventArgs e)
  632. {
  633. UltraGridRow row = ultraGridWoId.ActiveRow;
  634. if (row == null) return;
  635. ultraGridWoId.UpdateData();
  636. //string planNO = row.Cells["HeatPlanNo"].Text.ToString();
  637. string plinCode = row.Cells["PlineCode"].Text.ToString();
  638. string woId = row.Cells["WoId"].Text.ToString();
  639. //查询切断实绩支数和
  640. DataTable dtCut = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupCutService.getCutResultPiece", new object[] { row.Cells["WoId"].Value.ToString() }, this.ob);
  641. string pronum = "";
  642. if (dtCut.Rows.Count > 0)
  643. {
  644. pronum = dtCut.Rows[0]["PRO_NUM"].ToString();
  645. }
  646. else
  647. {
  648. pronum = "0";
  649. }
  650. CutPiece = Convert.ToInt32(pronum);
  651. //查询车丝实绩支数和
  652. DataTable dtThread = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupThreadingService.getThreadResult", new object[] { row.Cells["WoId"].Value.ToString() }, this.ob);
  653. if (dtThread.Rows.Count > 0)
  654. {
  655. threadPiece = Convert.ToInt32(dtThread.Rows[0]["PRO_NUM"].ToString());
  656. }
  657. else
  658. {
  659. threadPiece = 0;
  660. }
  661. //if (CutPiece - threadNum <= 0)
  662. //{
  663. // numPieces.Value = 0;
  664. // threadPiece = 0;
  665. //}
  666. //else
  667. //{
  668. // numPieces.Value = CutPiece - threadNum;
  669. // threadPiece = CutPiece - threadNum;
  670. //}
  671. getCoupThreadingResult(woId);
  672. //获取机床编号
  673. string[] lathCutNm = row.Cells["LatheGrpNm"].Text.ToString().Replace(" ", "").Split(',');
  674. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupThreadingService.getMachineNo", new object[] { plinCode, lathCutNm }, this.ob);
  675. cmbJcCode.DataSource = dt;
  676. cmbJcCode.DisplayMember = "MACHINE_NAME";
  677. cmbJcCode.ValueMember = "MACHINE_NO";
  678. YdmBaseClass.SetComboItemHeight(cmbJcCode);
  679. }
  680. /// <summary>
  681. /// 车丝实绩查询
  682. /// </summary>
  683. /// <param name="planNo"></param>
  684. private void getCoupThreadingResult(string woId)
  685. {
  686. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupThreadingService.getThreadingResult", new object[] { woId }, this.ob);
  687. GridHelper.CopyDataToDatatable(ref dt, ref dtSelfChecked, true);
  688. foreach (UltraGridRow urg in ultraGrid2.Rows)
  689. {
  690. if (urg.Cells["CONFIRM"].Value.Equals("1"))
  691. {
  692. urg.Appearance.BackColor = Color.LightGreen;
  693. }
  694. }
  695. this.ultraGrid2.DisplayLayout.Bands[0].Columns["PRODUCER_TIME"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DateTime;
  696. this.ultraGrid2.DisplayLayout.Bands[0].Columns["PRODUCER_TIME"].MaskInput = "yyyy-mm-dd hh:mm:ss";
  697. }
  698. /// <summary>
  699. /// 接箍加工计划详情
  700. /// </summary>
  701. /// <param name="planNo"></param>
  702. //private void getCoupProcessPlan(string woId, string planNo)
  703. //{
  704. // DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, planNo }, this.ob);
  705. // if (dt != null && dt.Rows.Count > 0)
  706. // {
  707. // this.coupWoIdPlanControl1.Value.PlineName = dt.Rows[0]["PLINE_NAME"].ToString();
  708. // this.coupWoIdPlanControl1.Value.CutMachGrpNm = dt.Rows[0]["CUT_MACH_GRP_NM"].ToString();
  709. // this.coupWoIdPlanControl1.Value.Memo = dt.Rows[0]["MEMO"].ToString();
  710. // this.coupWoIdPlanControl1.Value.ZyPlanId = dt.Rows[0]["ZY_PLAN_ID"].ToString();
  711. // this.coupWoIdPlanControl1.Value.IfMonitorJg = dt.Rows[0]["IF_MONITOR_JG"].ToString();
  712. // this.coupWoIdPlanControl1.Value.LoadPieces = dt.Rows[0]["LOAD_PIECES"].ToString();
  713. // this.coupWoIdPlanControl1.Value.LoadWeight = dt.Rows[0]["LOAD_WEIGHT"].ToString();
  714. // this.coupWoIdPlanControl1.Value.ProPlanId = dt.Rows[0]["PRO_PLAN_ID"].ToString();
  715. // this.coupWoIdPlanControl1.Value.Steelname = dt.Rows[0]["STEELNAME"].ToString();
  716. // this.coupWoIdPlanControl1.Value.Gradename = dt.Rows[0]["GRADENAME"].ToString();
  717. // this.coupWoIdPlanControl1.Value.JglDesc = dt.Rows[0]["JGL_DESC"].ToString();
  718. // this.coupWoIdPlanControl1.Value.CodeJg = dt.Rows[0]["CODE_JG"].ToString();
  719. // this.coupWoIdPlanControl1.Value.ModelDesc = dt.Rows[0]["MODEL_DESC"].ToString();
  720. // this.coupWoIdPlanControl1.Value.SpecJgDesc = dt.Rows[0]["SPEC_JG_DESC"].ToString();
  721. // this.coupWoIdPlanControl1.Value.StyleJg = dt.Rows[0]["STYLE_JG"].ToString();
  722. // this.coupWoIdPlanControl1.Value.PlanJgNum = dt.Rows[0]["PLAN_JG_NUM"].ToString();
  723. // this.coupWoIdPlanControl1.Value.CsJgNum = dt.Rows[0]["CS_JG_NUM"].ToString();
  724. // this.coupWoIdPlanControl1.Value.XqJgNum = dt.Rows[0]["XQ_JG_NUM"].ToString();
  725. // this.coupWoIdPlanControl1.Value.InstoreNum = dt.Rows[0]["INSTORE_NUM"].ToString();
  726. // this.coupWoIdPlanControl1.Value.BlWlDesc = dt.Rows[0]["BL_WL_DESC"].ToString();
  727. // //this.coupWoIdPlanControl1.Value.LoadWeight = "";
  728. // this.coupWoIdPlanControl1.UpdateData();
  729. // if (dt.Rows[0]["IF_MONITOR_JG"].ToString() == "1")
  730. // {
  731. // DataTable ds = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupCutService.doQueryPrdcr", new object[] { dt.Rows[0]["PRDCR_NO"].ToString() }, ob);
  732. // cmbProducer.DataSource = ds;
  733. // cmbProducer.DisplayMember = "PRDCR_MAN";
  734. // cmbProducer.SelectedIndex = 0;
  735. // YdmBaseClass.SetComboItemHeight(cmbProducer);
  736. // }
  737. // else
  738. // {
  739. // cmbProducer.Text = "";
  740. // }
  741. // }
  742. //}
  743. /// <summary>
  744. /// 判断状态
  745. /// </summary>
  746. /// <param name="woId"></param>
  747. /// <param name="planNO"></param>
  748. //private bool QueryStatusGd(string woId, string planNO)
  749. //{
  750. // DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, planNO }, this.ob);
  751. // if (dt.Rows[0]["ZY_BILL_STATUS"].ToString().Equals("生产完成"))
  752. // {
  753. // MessageUtil.ShowTips("此工单已生产完成,不允许此操作!");
  754. // return false;
  755. // }
  756. // if (dt.Rows[0]["CUT_STATUS"].ToString().Equals("生产完成"))
  757. // {
  758. // MessageUtil.ShowTips("此工单工序点已结炉,不允许此操作!");
  759. // return false;
  760. // }
  761. // return true;
  762. //}
  763. /// <summary>
  764. /// 车丝实绩保存
  765. /// </summary>
  766. private void DoSave()
  767. {
  768. UltraGridRow uRow = this.ultraGridWoId.ActiveRow;
  769. if (uRow == null)
  770. {
  771. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  772. return;
  773. }
  774. if (!uRow.Cells["zyBillStatus"].Value.ToString().Equals("生产中"))
  775. {
  776. MessageUtil.ShowTips("此工单不是生产中,不允许此操作!");
  777. return;
  778. }
  779. string zYgNo = uRow.Cells["HeatPlanNo"].Value.ToString();
  780. string woId = uRow.Cells["WoId"].Value.ToString();
  781. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  782. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  783. //{
  784. // MessageUtil.ShowTips("此工单车丝工序点已结炉,不允许此操作!");
  785. // return;
  786. //}
  787. // if(!QueryStatusGd(uRow.Cells["WO_ID"].Value.ToString(), uRow.Cells["ZY_PLAN_ID"].Value.ToString())) return;
  788. if (Convert.ToInt32(numPieces.Value.ToString()) != Convert.ToInt32(numQualified.Value.ToString()) + Convert.ToInt32(numRejected.Value.ToString()))
  789. {
  790. if (Convert.ToInt32(numPieces.Value.ToString()) == 0 && Convert.ToInt32(numQualified.Value.ToString()) == 0)
  791. {
  792. }
  793. else
  794. {
  795. MessageBox.Show("车丝个数=合格个数+废品个数,请查验 ", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  796. return;
  797. }
  798. }
  799. if (txtBC.Value == null || txtBC.Value == "")
  800. {
  801. MessageUtil.ShowTips("班次不能为空!");
  802. return;
  803. }
  804. if (txtBz.Value == null || txtBz.Value == "")
  805. {
  806. MessageUtil.ShowTips("班组不能为空!");
  807. return;
  808. }
  809. if (!uRow.Cells["Ifsplit"].Value.Equals("1"))
  810. {
  811. if (Convert.ToInt32(numPieces.Value) > CutPiece)
  812. {
  813. MessageUtil.ShowTips("车丝个数大于加工最大可切个数!");
  814. return;
  815. }
  816. }
  817. ThreadingResult result = new ThreadingResult();
  818. result.PlanNo = zYgNo;
  819. result.PlineCode = uRow.Cells["PlineCode"].Value.ToString();
  820. result.ColGroup = txtBz.Value.ToString();
  821. result.ColShft = txtBC.Value.ToString();
  822. result.ColUser = txtUser.Text.ToString();
  823. result.MachineNo = cmbJcCode.Text.ToString();
  824. result.ProducedPcs = numPieces.Value.ToString();
  825. result.Producer = cmbProducer.Text.ToString();
  826. result.ColTime = ProTime.Value.ToString();
  827. //result.WoId = uRow.Cells["WO_ID"].Value.ToString();
  828. // result.IfAllOutWork = txtNum.Value.ToString();
  829. if (cmbProducer.Text.ToString().Trim().Equals(""))
  830. {
  831. result.ProducerTime = "";
  832. }
  833. else
  834. {
  835. result.ProducerTime = ProducerTime.Value.ToString();
  836. }
  837. result.ColOperator1 = cmbOperator.Text.ToString();
  838. result.ColOperator2 = ultraComboEditor1.Text.ToString();
  839. result.QualiriedPcs = numQualified.Value.ToString();
  840. result.RejectedPieces = numRejected.Value.ToString();
  841. result.RejectedReason = cmbReason.Text.ToString();
  842. result.CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
  843. result.Memo = txtMemo.Text.Trim();
  844. //double PlnCount = 0;//计划个数
  845. //double CutCount = 0;//实际个数
  846. //DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.coup.PhosphateResultService.queryPlanJg", new Object[] { uRow.Cells["ZY_PLAN_ID"].Text.ToString() }, ob);
  847. //if (dt1.Rows.Count > 0)
  848. //{
  849. // PlnCount = Double.Parse(dt1.Rows[0]["LATHE_PLN_NUM"].ToString());
  850. // CutCount = Double.Parse(dt1.Rows[0]["LATHE_OK_NUM"].ToString());
  851. //}
  852. //// + Double.Parse(numQualified.Value.ToString())
  853. //if (CutCount > PlnCount)
  854. //{
  855. // if (MessageUtil.ShowYesNoAndQuestion("实际车丝个数超过计划车丝个数是否新增!") == DialogResult.No) { return; }
  856. //}
  857. if (MessageUtil.ShowYesNoAndQuestion("是否保存车丝记录?") == DialogResult.No)
  858. {
  859. return;
  860. }
  861. CoreClientParam ccp = new CoreClientParam();
  862. try
  863. {
  864. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  865. if (Constant.WaitingForm == null)
  866. {
  867. Constant.WaitingForm = new WaitingForm();
  868. }
  869. Constant.WaitingForm.ShowToUser = true;
  870. Constant.WaitingForm.Show();
  871. Constant.WaitingForm.Update();
  872. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  873. ccp.MethodName = "addThreadingResult";
  874. ccp.ServerParams = new object[] { result, latGx, woId };
  875. ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  876. this.Cursor = Cursors.Default;
  877. Constant.WaitingForm.ShowToUser = false;
  878. Constant.WaitingForm.Close();
  879. Constant.WaitingForm = null;
  880. }
  881. catch (Exception ex)
  882. {
  883. this.Cursor = Cursors.Default;
  884. Constant.WaitingForm.ShowToUser = false;
  885. Constant.WaitingForm.Close();
  886. Constant.WaitingForm = null;
  887. }
  888. if (ccp.ReturnCode != -1)
  889. {
  890. MessageUtil.ShowTips(ccp.ReturnInfo);
  891. if (ccp.ReturnInfo.Equals("保存成功!"))
  892. {
  893. QuerySinglePlan();
  894. DoClean();
  895. }
  896. }
  897. }
  898. /// <summary>
  899. /// 修改
  900. /// </summary>
  901. private void DoUpdate() {
  902. ultraGrid2.UpdateData();
  903. UltraGridRow uRow = this.ultraGrid2.ActiveRow;
  904. if (uRow == null) { MessageUtil.ShowTips("车丝实绩无数据!"); return; }
  905. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  906. if (row == null)
  907. {
  908. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  909. return;
  910. }
  911. if (!row.Cells["zyBillStatus"].Value.ToString().Equals("生产中"))
  912. {
  913. MessageUtil.ShowTips("此工单不是生产中,不允许此操作!");
  914. return;
  915. }
  916. string zYgNo = row.Cells["HeatPlanNo"].Value.ToString();
  917. string woId = row.Cells["WoId"].Value.ToString();
  918. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  919. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  920. //{
  921. // MessageUtil.ShowTips("此工单车丝工序点已结炉,不允许此操作!");
  922. // return;
  923. //}
  924. //if(!QueryStatusGd(uRow.Cells["WO_ID"].Value.ToString(), uRow.Cells["ZY_PLAN_ID"].Value.ToString())) return;
  925. if (Convert.ToInt32(numPieces.Value.ToString()) != Convert.ToInt32(numQualified.Value.ToString()) + Convert.ToInt32(numRejected.Value.ToString()))
  926. {
  927. MessageBox.Show("车丝个数=合格个数+废品个数,请查验 ", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  928. return;
  929. }
  930. ArrayList list = new ArrayList();
  931. list.Add(uRow.Cells["RESULT_NO"].Text.ToString());
  932. list.Add(uRow.Cells["ZY_PLAN_ID"].Text.ToString());
  933. list.Add(numPieces.Value.ToString());
  934. list.Add(numQualified.Value.ToString());
  935. list.Add(numRejected.Value.ToString());
  936. list.Add(cmbReason.Text.ToString());
  937. list.Add(txtBC.Value.ToString());
  938. list.Add(txtBz.Value.ToString());
  939. list.Add(cmbJcCode.Text.ToString());
  940. list.Add(cmbOperator.Text.ToString());
  941. list.Add(ultraComboEditor1.Text.ToString());
  942. list.Add(cmbProducer.Text.ToString());
  943. if (cmbProducer.Text.ToString().Equals(""))
  944. {
  945. list.Add("");
  946. }
  947. else
  948. {
  949. list.Add(ProducerTime.Value.ToString());
  950. }
  951. //list.Add(uRow.Cells["WO_ID"].Text.ToString());
  952. //double PlnCount = 0;//计划个数
  953. //double CutCount = 0;//实际个数
  954. //DataTable dt1 = ServerHelper.GetData("com.steering.mes.mcp.coup.PhosphateResultService.queryPlanJg", new Object[] { row.Cells["ZY_PLAN_ID"].Text.ToString() }, ob);
  955. //if (dt1.Rows.Count > 0)
  956. //{
  957. // PlnCount = Double.Parse(dt1.Rows[0]["LATHE_PLN_NUM"].ToString());
  958. // CutCount = Double.Parse(dt1.Rows[0]["LATHE_OK_NUM"].ToString());
  959. //}
  960. //// + Double.Parse(numQualified.Value.ToString())
  961. //if (CutCount > PlnCount)
  962. //{
  963. // if (MessageUtil.ShowYesNoAndQuestion("实际车丝个数超过计划车丝个数是否修改!") == DialogResult.No) { return; }
  964. //}
  965. if (MessageUtil.ShowYesNoAndQuestion("是否修改车丝记录?") == DialogResult.No)
  966. {
  967. return;
  968. }
  969. CoreClientParam ccp = new CoreClientParam();
  970. try
  971. {
  972. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  973. if (Constant.WaitingForm == null)
  974. {
  975. Constant.WaitingForm = new WaitingForm();
  976. }
  977. Constant.WaitingForm.ShowToUser = true;
  978. Constant.WaitingForm.Show();
  979. Constant.WaitingForm.Update();
  980. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  981. ccp.MethodName = "updateThreadingResult";
  982. ccp.ServerParams = new object[] { list, latGx, woId };
  983. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  984. this.Cursor = Cursors.Default;
  985. Constant.WaitingForm.ShowToUser = false;
  986. Constant.WaitingForm.Close();
  987. Constant.WaitingForm = null;
  988. }
  989. catch (Exception ex)
  990. {
  991. this.Cursor = Cursors.Default;
  992. Constant.WaitingForm.ShowToUser = false;
  993. Constant.WaitingForm.Close();
  994. Constant.WaitingForm = null;
  995. }
  996. if (ccp.ReturnCode == -1) return;
  997. MessageUtil.ShowTips(ccp.ReturnInfo);
  998. if (ccp.ReturnInfo.Equals("修改成功!"))
  999. {
  1000. QuerySinglePlan();
  1001. }
  1002. }
  1003. /// <summary>
  1004. /// 删除
  1005. /// </summary>
  1006. private void DoDelete()
  1007. {
  1008. ultraGrid2.UpdateData();
  1009. UltraGridRow uRow = this.ultraGrid2.ActiveRow;
  1010. if (uRow == null) { MessageUtil.ShowTips("无车丝实绩!"); return; }
  1011. if (uRow.Cells["CONFIRM"].Value.ToString().Equals("1"))
  1012. {
  1013. MessageUtil.ShowTips("选中的车丝实绩已经确认,不允许删除!");
  1014. return;
  1015. }
  1016. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  1017. if (row == null)
  1018. {
  1019. MessageUtil.ShowTips("无工单信息,不允许此操作!");
  1020. } if (!row.Cells["zyBillStatus"].Value.ToString().Equals("生产中"))
  1021. {
  1022. MessageUtil.ShowTips("此工单不是生产中,不允许此操作!");
  1023. return;
  1024. }
  1025. string zYgNo = row.Cells["HeatPlanNo"].Value.ToString();
  1026. string woId = row.Cells["WoId"].Value.ToString();
  1027. string plinCode = row.Cells["PlineCode"].Value.ToString();
  1028. //DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getQueryWoIdDetails", new object[] { woId, zYgNo }, this.ob);
  1029. //if (dt.Rows[0]["LATHE_STATUS"].ToString().Equals("生产完成"))
  1030. //{
  1031. // MessageUtil.ShowTips("此工单车丝工序点已结炉,不允许此操作!");
  1032. // return;
  1033. //}
  1034. //if (row.Cells["ZY_BILL_STATUS"].Value.ToString() == "生产完成")
  1035. //{
  1036. // MessageUtil.ShowTips("此炉次计划整体已生产完成,不允许此操作!");
  1037. // return;
  1038. //}
  1039. // if(!QueryStatusGd(uRow.Cells["WO_ID"].Value.ToString(), uRow.Cells["ZY_PLAN_ID"].Value.ToString())) return;
  1040. ArrayList list1 = new ArrayList();
  1041. int UpdaCount = 0;
  1042. foreach (UltraGridRow ugr in ultraGrid2.Rows)
  1043. {
  1044. if (Convert.ToBoolean(ugr.Cells["CHECK"].Text) == true)
  1045. {
  1046. if (ugr.Cells["IF_ALL_OUT_WORK"].Value.ToString().Equals("是"))
  1047. {
  1048. MessageUtil.ShowTips("此工序已经离线,不允许此操作!");
  1049. return;
  1050. }
  1051. if (ugr.Cells["OFF_NUM"].Text!=""&&ugr.Cells["OFF_NUM"].Text!="0")
  1052. {
  1053. MessageUtil.ShowTips("存在离线支数,不允许此操作!");
  1054. return;
  1055. }
  1056. UpdaCount += 1;
  1057. ArrayList list = new ArrayList();
  1058. list.Add(ugr.Cells["RESULT_NO"].Text.ToString());
  1059. list.Add(ugr.Cells["REJECTED_PCS"].Text.ToString());
  1060. list1.Add(list);
  1061. }
  1062. }
  1063. if (UpdaCount == 0) { MessageUtil.ShowTips("请选择车丝数据!"); return; }
  1064. if (MessageUtil.ShowYesNoAndQuestion("是否删除车丝记录?") == DialogResult.No)
  1065. {
  1066. return;
  1067. }
  1068. CoreClientParam ccp = new CoreClientParam();
  1069. try
  1070. {
  1071. this.Cursor = Cursors.WaitCursor; //控制鼠标的样式为等待
  1072. if (Constant.WaitingForm == null)
  1073. {
  1074. Constant.WaitingForm = new WaitingForm();
  1075. }
  1076. Constant.WaitingForm.ShowToUser = true;
  1077. Constant.WaitingForm.Show();
  1078. Constant.WaitingForm.Update();
  1079. ccp.ServerName = "com.steering.mes.mcp.coup.CoupThreadingService";
  1080. ccp.MethodName = "deleteThreadingResult";
  1081. ccp.ServerParams = new object[] { list1, latGx, woId ,plinCode};
  1082. ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  1083. this.Cursor = Cursors.Default;
  1084. Constant.WaitingForm.ShowToUser = false;
  1085. Constant.WaitingForm.Close();
  1086. Constant.WaitingForm = null;
  1087. }
  1088. catch (Exception ex)
  1089. {
  1090. this.Cursor = Cursors.Default;
  1091. Constant.WaitingForm.ShowToUser = false;
  1092. Constant.WaitingForm.Close();
  1093. Constant.WaitingForm = null;
  1094. }
  1095. if (ccp.ReturnCode == -1) return;
  1096. MessageUtil.ShowTips(ccp.ReturnInfo);
  1097. if (ccp.ReturnInfo.Equals("删除成功!"))
  1098. {
  1099. QuerySinglePlan();
  1100. }
  1101. }
  1102. /// <summary>
  1103. /// 按回车键触发查询按钮
  1104. /// </summary>
  1105. /// <param name="sender"></param>
  1106. /// <param name="e"></param>
  1107. private void ContPublic_KeyDown(object sender, KeyEventArgs e)
  1108. {
  1109. if (e.KeyCode == Keys.Enter)
  1110. {
  1111. QuerySinglePlan();
  1112. }
  1113. }
  1114. /// <summary>
  1115. /// 废品
  1116. /// </summary>
  1117. /// <param name="sender"></param>
  1118. /// <param name="e"></param>
  1119. private void numRejected_ValueChanged(object sender, EventArgs e)
  1120. {
  1121. if (numRejected.Value.ToString().Equals("0"))
  1122. {
  1123. cmbReason.Enabled = false;
  1124. }
  1125. else
  1126. {
  1127. cmbReason.Enabled = true;
  1128. }
  1129. }
  1130. private void cmbJcCode_TextChanged(object sender, EventArgs e)
  1131. {
  1132. UltraGridRow row = this.ultraGridWoId.ActiveRow;
  1133. if (row == null) return;
  1134. string[] lathGrpNm = row.Cells["LatheGrpNm"].Text.ToString().Replace(" ", "").Split(',');
  1135. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupThreadingService.getMachUser", new object[] { cmbJcCode.Text.ToString(), row.Cells["PlineCode"].Text.Trim(), lathGrpNm }, this.ob);
  1136. cmbOperator.DataSource = dt;
  1137. cmbOperator.DisplayMember = "MACHINE_USER1";
  1138. cmbOperator.ValueMember = "MACHINE_USER1";
  1139. YdmBaseClass.SetComboItemHeight(cmbOperator);
  1140. ultraComboEditor1.DataSource = dt;
  1141. ultraComboEditor1.DisplayMember = "MACHINE_USER2";
  1142. ultraComboEditor1.ValueMember = "MACHINE_USER2";
  1143. YdmBaseClass.SetComboItemHeight(ultraComboEditor1);
  1144. }
  1145. private void cmbProducer_TextChanged(object sender, EventArgs e)
  1146. {
  1147. if (cmbProducer.Text.ToString().Equals(""))
  1148. {
  1149. ProducerTime.Enabled = false;
  1150. }
  1151. else
  1152. {
  1153. ProducerTime.Enabled = true;
  1154. }
  1155. }
  1156. private void DoClean()
  1157. {
  1158. cmbJcCode.Text = "";
  1159. cmbOperator.Text = "";
  1160. ultraComboEditor1.Text = "";
  1161. numPieces.Value = 0;
  1162. numQualified.Value = 0;
  1163. numRejected.Value = 0;
  1164. cmbReason.Text = "";
  1165. txtBC.Value = this.UserInfo.GetUserOrder();
  1166. txtBz.Value = this.UserInfo.GetUserGroup();
  1167. cmbProducer.Text = "";
  1168. txtMemo.Text = "";
  1169. }
  1170. private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
  1171. {
  1172. UltraGridRow ugr = ultraGrid2.ActiveRow;
  1173. if (ugr == null) return;
  1174. //if (ugr.Cells["IF_ALL_OUT_WORK"].Value.ToString().Equals("/"))
  1175. //{
  1176. //numPieces.Value = ugr.Cells["PRODUCED_PCS"].Value.ToString();
  1177. //numQualified.Value = ugr.Cells["QUALIRIED_PCS"].Value.ToString();
  1178. //numRejected.Value = ugr.Cells["REJECTED_PCS"].Value.ToString();
  1179. //cmbReason.Text = ugr.Cells["REJECTED_REASON"].Value.ToString();
  1180. //txtBC.Text = ugr.Cells["COL_SHIFT"].Value.ToString();
  1181. //txtBz.Text = ugr.Cells["COL_GROUP"].Value.ToString();
  1182. //cmbJcCode.Text = ugr.Cells["MACHINE_NO"].Value.ToString();
  1183. //cmbOperator.Text = ugr.Cells["COL_OPERATOR1"].Value.ToString();
  1184. //ultraComboEditor1.Text = ugr.Cells["COL_OPERATOR2"].Value.ToString();
  1185. //cmbProducer.Text = ugr.Cells["PRODUCER"].Value.ToString();
  1186. //}
  1187. if (!ugr.Cells["PRODUCER"].Value.ToString().Equals("")) {
  1188. ProducerTime.Value = DateTime.Parse(ugr.Cells["PRODUCER_TIME"].Value.ToString());
  1189. }
  1190. }
  1191. /// <summary>
  1192. /// 托选
  1193. /// </summary>
  1194. /// <param name="sender"></param>
  1195. /// <param name="e"></param>
  1196. private void ultraGrid2_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
  1197. {
  1198. try
  1199. {
  1200. ultraGrid2.UpdateData();
  1201. foreach (UltraGridRow row in ultraGrid2.Rows)
  1202. {
  1203. row.Cells["CHECK"].Value = row.Selected;
  1204. }
  1205. }
  1206. catch { }
  1207. }
  1208. private void chkStarts_CheckedChanged(object sender, EventArgs e)
  1209. {
  1210. if (chkStarts.Checked) { cmbStarts.Enabled = true; } else { cmbStarts.Enabled = false; }
  1211. if (chkJuNo.Checked) { txtJudgeStoveNO.Enabled = true; } else { txtJudgeStoveNO.Enabled = false; }
  1212. if (chkPlnNo.Checked) { txtPlnNo.Enabled = true; } else { txtPlnNo.Enabled = false; }
  1213. if (chkwoId.Checked) { txtWoId.Enabled = true; } else { txtWoId.Enabled = false; }
  1214. }
  1215. private void craftImg_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  1216. {
  1217. UltraGridRow row = ultraGridWoId.ActiveRow;
  1218. if (row == null) return;
  1219. string orderNo = row.Cells["OrderNoSeq"].Text.ToString();
  1220. string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepMilCouplingProcess2.cpt"
  1221. + "&ORDER_NO=" + orderNo;
  1222. FrmRepExcel down = new FrmRepExcel(ob, strurl);
  1223. down.Text = "接箍二级工艺";
  1224. down.Visible = false;
  1225. down.Size = new Size(740, this.Height);
  1226. down.WindowState = FormWindowState.Maximized;
  1227. down.ShowDialog();
  1228. }
  1229. private void ultraGrid2_CellChange(object sender, CellEventArgs e)
  1230. {
  1231. UltraGridRow ugr = ultraGrid2.ActiveRow;
  1232. if (ugr == null) return;
  1233. numPieces.Value = ugr.Cells["PRODUCED_PCS"].Value.ToString();
  1234. numQualified.Value = ugr.Cells["QUALIRIED_PCS"].Value.ToString();
  1235. numRejected.Value = ugr.Cells["REJECTED_PCS"].Value.ToString();
  1236. cmbReason.Text = ugr.Cells["REJECTED_REASON"].Value.ToString();
  1237. txtBC.Text = ugr.Cells["COL_SHIFT"].Value.ToString();
  1238. txtBz.Text = ugr.Cells["COL_GROUP"].Value.ToString();
  1239. cmbJcCode.Text = ugr.Cells["MACHINE_NO"].Value.ToString();
  1240. cmbOperator.Text = ugr.Cells["COL_OPERATOR1"].Value.ToString();
  1241. ultraComboEditor1.Text = ugr.Cells["COL_OPERATOR2"].Value.ToString();
  1242. cmbProducer.Text = ugr.Cells["PRODUCER"].Value.ToString();
  1243. }
  1244. private void numPieces_AfterEnterEditMode(object sender, EventArgs e)
  1245. {
  1246. this.BeginInvoke(new MethodInvoker(this.numPieces.SelectAll));
  1247. }
  1248. private void numQualified_AfterEnterEditMode(object sender, EventArgs e)
  1249. {
  1250. this.BeginInvoke(new MethodInvoker(this.numQualified.SelectAll));
  1251. }
  1252. private void numRejected_AfterEnterEditMode(object sender, EventArgs e)
  1253. {
  1254. this.BeginInvoke(new MethodInvoker(this.numRejected.SelectAll));
  1255. }
  1256. private void cmbOperator_TextChanged(object sender, EventArgs e)
  1257. {
  1258. txtBz.Text = "";
  1259. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupThreadingService.getMatProBz", new object[] { cmbOperator.Text.ToString() }, this.ob);
  1260. if (dt.Rows.Count > 0)
  1261. {
  1262. txtBz.DataSource = dt;
  1263. txtBz.DisplayMember = "PRO_BZ_NAME";
  1264. txtBz.ValueMember = "PRO_BZ";
  1265. txtBz.SelectedIndex = 0;
  1266. YdmBaseClass.SetComboItemHeight(cmbOperator);
  1267. }
  1268. }
  1269. }
  1270. }