FrmJgRunTimeRptHsk.cs 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Windows.Forms;
  5. using Core.Mes.Client.Comm.Control;
  6. using Core.Mes.Client.Comm.Format;
  7. using Core.Mes.Client.Comm.Tool;
  8. using Core.StlMes.Client.Mcp.Treatment.Entity;
  9. using CoreFS.CA06;
  10. using Infragistics.Win.UltraWinEditors;
  11. using System.Data;
  12. using Core.Mes.Client.Comm.Server;
  13. using Infragistics.Win.UltraWinGrid;
  14. using System.Collections;
  15. namespace Core.StlMes.Client.Mcp.Treatment.Report
  16. {
  17. public partial class FrmJgRunTimeRptHsk : FrmBase
  18. {
  19. public FrmJgRunTimeRptHsk()
  20. {
  21. InitializeComponent();
  22. this.IsLoadUserView = true;
  23. }
  24. private string balMonth = "";
  25. private string[] plineCodes = null;
  26. private string ProcessCode = "";
  27. private List<YdmHttInitialEntityPlus> CurrentlistEntity;
  28. protected override void OnLoad(EventArgs e)
  29. {
  30. base.OnLoad(e);
  31. ProcessCode = "H";
  32. plineCodes = comm.InitDropPlinePower(ProcessCode, cboPline, this.ValidDataPurviewIds, ob);
  33. // comm.InitDroProStation(ProcessCode, new List<UltraComboEditor>() { uceFactory }, this.ValidDataPurviewIds, ob);
  34. if (plineCodes == null || plineCodes.Length <= 0)
  35. {
  36. MessageBox.Show("无数据权限!");
  37. this.Close();
  38. }
  39. EntityHelper.ShowGridCaption<YdmHttInitialEntityPlus>(ultraGrid1.DisplayLayout.Bands[0]);
  40. comm.RefreshAndAutoSizeWithHeader(ultraGrid1);
  41. dtBathYear.Value = DateTime.Now;
  42. }
  43. public override void ToolBar_Click(object sender, string ToolbarKey)
  44. {
  45. switch (ToolbarKey)
  46. {
  47. case "Query":
  48. Query();
  49. break;
  50. case "Export":
  51. Export();
  52. break;
  53. case "insertTal":
  54. insertTal();
  55. break;
  56. case "cancelInsertTal":
  57. cancelinsertTal();
  58. break;
  59. case "Close":
  60. this.Close();
  61. break;
  62. }
  63. }
  64. private void insertTal()
  65. {
  66. ArrayList parm = new ArrayList();
  67. foreach (UltraGridRow uRow in ultraGrid1.Rows)
  68. {
  69. YdmZcInitialJgHskEntity matZcEntity = (YdmZcInitialJgHskEntity)uRow.ListObject;
  70. string matZcTity = JSONFormat.Format(matZcEntity);
  71. parm.Add(matZcTity);
  72. }
  73. if (ultraGrid1.Rows.Count == 0)
  74. {
  75. MessageBox.Show("无期末,无需结转");
  76. return;
  77. }
  78. var ccp = new CoreClientParam();
  79. ccp.ServerName = "com.steering.mes.mcp.common.FrmHttRunTimeRpt";
  80. ccp.MethodName = "insertTalJg";
  81. ccp.ServerParams = new object[]
  82. {
  83. dtBathYear.Value.AddMonths(1).ToString("yyyyMM"),
  84. dtBathYear.Value.AddMonths(2).ToString("yyyyMM"),
  85. parm,
  86. ucePlineCode.Checked && cboPline.CheckedItems.Count > 0
  87. ? cboPline.CheckedItems.Select(p => p.DataValue.ToString()).ToArray()
  88. : plineCodes,
  89. this.UserInfo.GetUserName()
  90. };
  91. ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  92. if (ccp.ReturnCode != -1)
  93. {
  94. MessageUtil.ShowTips(ccp.ReturnInfo);
  95. if (ccp.ReturnInfo.Equals("结转成功!"))
  96. {
  97. Query();
  98. }
  99. }
  100. }
  101. private void cancelinsertTal()
  102. {
  103. ArrayList parm = new ArrayList();
  104. foreach (UltraGridRow uRow in ultraGrid1.Rows)
  105. {
  106. YdmZcInitialJgHskEntity matZcEntity = (YdmZcInitialJgHskEntity)uRow.ListObject;
  107. string matZcTity = JSONFormat.Format(matZcEntity);
  108. parm.Add(matZcTity);
  109. }
  110. var ccp = new CoreClientParam();
  111. ccp.ServerName = "com.steering.mes.mcp.common.FrmHttRunTimeRpt";
  112. ccp.MethodName = "cancelinsertTalJg";
  113. ccp.ServerParams = new object[]
  114. {
  115. dtBathYear.Value.AddMonths(1).ToString("yyyyMM"),
  116. dtBathYear.Value.AddMonths(2).ToString("yyyyMM"),
  117. ucePlineCode.Checked && cboPline.CheckedItems.Count > 0
  118. ? cboPline.CheckedItems.Select(p => p.DataValue.ToString()).ToArray()
  119. : plineCodes
  120. };
  121. ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  122. if (ccp.ReturnCode != -1)
  123. {
  124. MessageUtil.ShowTips(ccp.ReturnInfo);
  125. if (ccp.ReturnInfo.Equals("撤销成功!"))
  126. {
  127. Query();
  128. }
  129. }
  130. }
  131. private void Export()
  132. {
  133. GridHelper.ulGridToExcel(ultraGrid1, "");
  134. }
  135. private void Query()
  136. {
  137. balMonth = dtBathYear.Value.ToString("yyyyMM");
  138. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.common.FrmHttRunTimeRpt.doQueryJg", new Object[] {balMonth,ucePlineCode.Checked && cboPline.CheckedItems.Count > 0
  139. ? cboPline.CheckedItems.Select(p => p.DataValue.ToString()).ToArray()
  140. : plineCodes, uceJudgeStove.Checked ? txtJudgeStove.Text : "" }, this.ob);
  141. GridHelper.CopyDataToDatatable(dt, this.dt1, true);
  142. GridHelper.RefreshAndAutoSize(this.ultraGrid1);
  143. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  144. {
  145. //在产品
  146. if (ugr.Cells["VALIDFLAG"].Value.ToString() == "00")
  147. {
  148. ugr.Cells["ONLINE_NUM"].Value = int.Parse(ugr.Cells["ACT_COUNT"].Value.ToString3()) + int.Parse(ugr.Cells["LOAD_PIECES"].Value.ToString3());
  149. ugr.Cells["ONLINE_WT"].Value = double.Parse(ugr.Cells["ACT_WEIGHT"].Value.ToString3()) + double.Parse(ugr.Cells["LOAD_WEIGHT"].Value.ToString3());
  150. }
  151. else if (ugr.Cells["VALIDFLAG"].Value.ToString() == "20")
  152. {
  153. ugr.Cells["ONLINE_NUM"].Value = 0;
  154. ugr.Cells["ONLINE_WT"].Value = 0.000;
  155. }
  156. //消耗量=期初+收料-废品-缴库-在产品
  157. ugr.Cells["XHL"].Value = double.Parse(ugr.Cells["ACT_WEIGHT"].Value.ToString3()) + double.Parse(ugr.Cells["LOAD_WEIGHT"].Value.ToString3()) - double.Parse(ugr.Cells["REJECTED_WT"].Value.ToString3()) - double.Parse(ugr.Cells["PRO_WT"].Value.ToString3()) - double.Parse(ugr.Cells["ONLINE_WT"].Value.ToString3());
  158. //成材率=缴库/(期初+收料+废品-在产品)
  159. ugr.Cells["RATE"].Value = double.Parse(ugr.Cells["PRO_WT"].Value.ToString3()) / (double.Parse(ugr.Cells["ACT_WEIGHT"].Value.ToString3()) + double.Parse(ugr.Cells["LOAD_WEIGHT"].Value.ToString3()) + double.Parse(ugr.Cells["REJECTED_WT"].Value.ToString3()) - double.Parse(ugr.Cells["ONLINE_WT"].Value.ToString3()));
  160. }
  161. }
  162. private void ultraGrid1_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e)
  163. {
  164. /* YdmHttInitialEntityPlus entity = e.Row.ListObject as YdmHttInitialEntityPlus;
  165. if (entity.SourceNumTotal + entity.ActCount != entity.FailNum + entity.GroupNum + entity.EndNum + entity.JudgeNum)
  166. {
  167. e.Row.Appearance.BackColor = Color.Red;
  168. }*/
  169. }
  170. }
  171. }