FrmChamferingResult.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283
  1. 
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Drawing;
  5. using System.Linq;
  6. using System.Net;
  7. using System.Windows.Forms;
  8. using com.steering.mes.mcp.entity;
  9. using Core.Mes.Client.Comm.Format;
  10. using Core.Mes.Client.Comm.Server;
  11. using Core.Mes.Client.Comm.Tool;
  12. using Core.StlMes.Client.Mcp.Control;
  13. using Core.StlMes.Client.Mcp.Control.Common;
  14. using Core.StlMes.Client.Mcp.Mch.MchResult;
  15. using CoreFS.CA06;
  16. using Infragistics.Win;
  17. using Infragistics.Win.UltraWinGrid;
  18. namespace Core.StlMes.Client.Mcp.Mch
  19. {
  20. public partial class FrmChamferingResult : FrmMchBase
  21. {
  22. public FrmChamferingResult()
  23. {
  24. InitializeComponent();
  25. mchControlBase1 = new ChamferingControl()
  26. {
  27. Dock = DockStyle.Fill
  28. };
  29. plnEdit.Controls.Add(mchControlBase1);
  30. }
  31. protected override UltraGridRow ActitveResultRow { get { return CrackDetectGrid.ActiveRow; } }
  32. protected override object Value { get { return (mchControlBase1 as ChamferingControl).Value; } }
  33. protected override void OnLoad(EventArgs e)
  34. {
  35. base.OnLoad(e);
  36. EntityHelper.ShowGridCaption<MchChamferingResultEntity>(CrackDetectGrid.DisplayLayout.Bands[0]);
  37. base.ultraGrid1.DisplayLayout.Bands[0].Columns["ActCount"].Hidden = true;
  38. base.ultraGrid1.DisplayLayout.Bands[0].Columns["ActWeight"].Hidden = true;
  39. base.ultraGrid1.DisplayLayout.Bands[0].Columns["BatchGroudNo"].Hidden = true;
  40. CrackDetectGrid.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
  41. CrackDetectGrid.DisplayLayout.Override.HeaderClickAction = HeaderClickAction.Default;
  42. ultraOptionSet2.Visible = false;
  43. var dt0 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getBaseInfoSingle",
  44. new object[] { "703501" }, ob);
  45. (mchControlBase1 as ChamferingControl).uceAngleVal.DataSource = dt0;
  46. (mchControlBase1 as ChamferingControl).uceAngleVal.DisplayMember = "BASENAME";
  47. (mchControlBase1 as ChamferingControl).uceAngleVal.ValueMember = "BASENAME";
  48. var dt1 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getBaseInfoSingle",
  49. new object[] { "703502" }, ob);
  50. (mchControlBase1 as ChamferingControl).uceEdgeVal.DataSource = dt1;
  51. (mchControlBase1 as ChamferingControl).uceEdgeVal.DisplayMember = "BASENAME";
  52. (mchControlBase1 as ChamferingControl).uceEdgeVal.ValueMember = "BASENAME";
  53. var dt2 = ServerHelper.GetData("com.steering.mes.mcp.common.PlanService.getBaseInfoSingle",
  54. new object[] { "703503" }, ob);
  55. (mchControlBase1 as ChamferingControl).uceCutVal.DataSource = dt2;
  56. (mchControlBase1 as ChamferingControl).uceCutVal.DisplayMember = "BASENAME";
  57. (mchControlBase1 as ChamferingControl).uceCutVal.ValueMember = "BASENAME";
  58. }
  59. protected override void DoAdd()
  60. {
  61. if (ActiveRow != null)
  62. {
  63. if (MessageUtil.ShowYesNoAndQuestion("是否增加倒棱实绩?") == DialogResult.No)
  64. return;
  65. var ccp = new CoreClientParam();
  66. ccp.ServerName = "com.steering.mes.mcp.Mch.FrmChamferingResult";
  67. ccp.MethodName = "DoAdd";
  68. ccp.ServerParams = new object[]
  69. {
  70. JSONFormat.Format(Value),
  71. Gx,
  72. mchControlBase1.ScrappedList.Select(JSONFormat.Format).ToList(),
  73. mchControlBase1.SuspiciousList.Select(JSONFormat.Format).ToList(),
  74. (mchControlBase1 as ChamferingControl).Detail.Select(JSONFormat.Format).ToList()
  75. };
  76. ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  77. if (ccp.ReturnCode != -1)
  78. {
  79. MessageUtil.ShowTips(ccp.ReturnInfo);
  80. if (ccp.ReturnInfo.Equals("新增成功!"))
  81. {
  82. Query();
  83. }
  84. }
  85. }
  86. }
  87. protected override void DoDelete()
  88. {
  89. {
  90. if (ActiveRow != null && ActitveResultRow != null)
  91. {
  92. if (MessageUtil.ShowYesNoAndQuestion("是否删除倒棱实绩?") == DialogResult.No)
  93. return;
  94. var ccp = new CoreClientParam();
  95. ccp.ServerName = "com.steering.mes.mcp.Mch.FrmChamferingResult";
  96. ccp.MethodName = "DoDelete";
  97. ccp.ServerParams = new object[]
  98. {
  99. JSONFormat.Format(ActitveResultRow.ListObject), Gx
  100. };
  101. ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  102. if (ccp.ReturnCode != -1)
  103. {
  104. MessageUtil.ShowTips(ccp.ReturnInfo);
  105. if (ccp.ReturnInfo.Equals("删除成功!"))
  106. {
  107. if (!string.IsNullOrEmpty(ActitveResultRow.Cells["ReportPath"].Value.ToString2()))
  108. {
  109. try
  110. {
  111. FileHelper.Delete(ActitveResultRow.Cells["ReportPath"].Value.ToString2());
  112. }
  113. catch (Exception)
  114. {
  115. MessageUtil.ShowTips("报告删除失败!");
  116. }
  117. }
  118. Query();
  119. }
  120. }
  121. }
  122. }
  123. }
  124. protected override void GetResultData()
  125. {
  126. base.GetResultData();
  127. mchChamferingResultEntityBindingSource.DataSource = EntityHelper.GetData<MchChamferingResultEntity>(
  128. "com.steering.mes.mcp.Mch.FrmChamferingResult.getQueryExpandResult",
  129. new object[] { ActiveRow.HeatPlanNo, ActiveRow.BatchNo },
  130. ob);
  131. commHelper.RefreshAndAutoSizeExceptColumns(CrackDetectGrid, "ReportPath");
  132. if (ActiveRow == null) return;
  133. var ChamferingControl = mchControlBase1 as ChamferingControl;
  134. if(ChamferingControl==null) return;
  135. var result = new MchChamferingResultEntity
  136. {
  137. HeatPlanNo = ActiveRow.HeatPlanNo,
  138. JudgeStoveNo = ActiveRow.JudgeStoveNo,
  139. BatchNo = ActiveRow.BatchNo,
  140. PlineCode = ActiveRow.PlineCode,
  141. PlineName = ActiveRow.PlineName,
  142. ProNum = ChamferingControl.OkPort.Count > (ActiveRow.OperateCount ?? 0) ? ChamferingControl.OkPort.Count - (ActiveRow.OperateCount ?? 0) : 0,
  143. FailNum = 0,
  144. FailWt = 0,
  145. ReProNum = 0,
  146. ReProWt = 0,
  147. TestRecord = 0,
  148. ProShift = UserInfo.GetUserOrder(),
  149. ProGroup = UserInfo.GetUserGroup(),
  150. ProUser = UserInfo.GetUserName(),
  151. ProTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
  152. };
  153. if (result.ProNum <= 0)
  154. {
  155. int OffNum = GetReturnNum();
  156. result.ProNum = ChamferingControl.OkPort.Count - (ActiveRow.OperateCount ?? 0)+ result.ProNum + OffNum;
  157. if (result.ProNum < 0)
  158. {
  159. result.ProNum = 0;
  160. }
  161. }
  162. result.QualifiedNum = result.ProNum;
  163. ChamferingControl.Value = result;
  164. }
  165. private void utUpLoad1_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
  166. {
  167. var entity = CrackDetectGrid.ActiveRow.ListObject as MchChamferingResultEntity;
  168. if (entity == null) return;
  169. var strurl = "";
  170. if (e.Button.Key == "VIEW")
  171. {
  172. strurl =
  173. "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=MchChamferingReport.cpt&op=view&resultNo=" +
  174. entity.ResultNo;
  175. var fre = new FrmRepExcel(ob, strurl);
  176. fre.AutoSize = true;
  177. fre.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width,
  178. Screen.PrimaryScreen.WorkingArea.Height);
  179. fre.WindowState = FormWindowState.Maximized;
  180. fre.Show();
  181. }
  182. else if (e.Button.Key == "UPLOAD")
  183. {
  184. strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=MchChamferingReport.cpt&format=pdf&resultNo=" + entity.ResultNo;
  185. var webClient = new WebClient();
  186. var listPdf = new List<FileBean>();
  187. var date = DateTime.Now.ToString("yyyyMMdd");
  188. var filePathNew = ""; //报告目录
  189. var reportNo = ""; //报告编号
  190. filePathNew = "Mch/Chamfering/" + ActiveRow.JudgeStoveNo + "/" + entity.BatchNo + "/" + entity.HeatPlanNo + "/";
  191. reportNo = entity.ResultNo;
  192. var pdf = webClient.DownloadData(strurl);
  193. var fileBean = new FileBean();
  194. fileBean.setFile(pdf);
  195. fileBean.setFileName(reportNo + ".pdf");
  196. fileBean.setPathName(filePathNew);
  197. listPdf.Add(fileBean);
  198. webClient.Dispose();
  199. var a = FileHelper.Upload(listPdf);
  200. if (a)
  201. {
  202. ServerHelper.SetData("com.steering.mes.mcp.Mch.FrmChamferingResult.UpdatePath",
  203. new object[] { filePathNew + reportNo + ".pdf", entity.ResultNo }, ob);
  204. MessageUtil.ShowTips("上传报告成功!");
  205. Query();
  206. }
  207. }
  208. else
  209. {
  210. MessageUtil.ShowError("系统生成PDF失败,请稍后再试!");
  211. }
  212. }
  213. private void CrackDetectGrid_InitializeRow(object sender, InitializeRowEventArgs e)
  214. {
  215. var MchTwistinglyResultEntity = e.Row.ListObject as MchChamferingResultEntity;
  216. e.Row.Cells["ReportPath"].Appearance.BackColor = string.IsNullOrEmpty(MchTwistinglyResultEntity.ReportPath)
  217. ? Color.Red
  218. : Color.LightGreen;
  219. e.Row.Cells["ReportPath"].EditorComponent = utUpLoad1;
  220. }
  221. }
  222. }