FrmHttControlLogReport.cs 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658
  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 Core.Mes.Client.Comm.Control;
  10. using Core.Mes.Client.Comm.Format;
  11. using Core.Mes.Client.Comm.Server;
  12. using Core.Mes.Client.Comm.Tool;
  13. using Core.StlMes.Client.Mcp.Control.Base;
  14. using Core.StlMes.Client.Mcp.Control.Entity;
  15. using CoreFS.CA06;
  16. using Infragistics.Win;
  17. using Infragistics.Win.UltraWinEditors;
  18. using Infragistics.Win.UltraWinGrid;
  19. using ColumnStyle = Infragistics.Win.UltraWinGrid.ColumnStyle;
  20. namespace Core.StlMes.Client.Mcp.Treatment.Report
  21. {
  22. public partial class FrmHttControlLogReport : FrmBase
  23. {
  24. public FrmHttControlLogReport()
  25. {
  26. InitializeComponent();
  27. this.IsLoadUserView = true;
  28. }
  29. private string ProDate = "";
  30. private string[] plineCodes = null;
  31. private string ProcessCode = "";
  32. private string station = ""; //工序点
  33. /// <summary>
  34. /// 重写基类方法
  35. /// </summary>
  36. /// <param name="sender"></param>
  37. /// <param name="ToolbarKey"></param>
  38. public override void ToolBar_Click(object sender, string ToolbarKey)
  39. {
  40. switch (ToolbarKey)
  41. {
  42. case "Query":
  43. if (utbMain.SelectedTab.Key == "0")
  44. doQuery0();
  45. else if (utbMain.SelectedTab.Key == "1")
  46. doQuery1();
  47. else if (utbMain.SelectedTab.Key == "2")
  48. doQuery2();
  49. else if (utbMain.SelectedTab.Key == "3")
  50. doQuery3();
  51. break;
  52. case "ExportTotal":
  53. GridHelper.ulGridToExcel(ugTotalStop, "月汇总数据");
  54. break;
  55. case "Export":
  56. if (utbMain.SelectedTab.Key == "0")
  57. GridHelper.ulGridToExcel(ultraGrid1, "生产数据明细");
  58. else if (utbMain.SelectedTab.Key == "1")
  59. GridHelper.ulGridToExcel(ugStopDetail, "停机数据明细");
  60. else if (utbMain.SelectedTab.Key == "2")
  61. GridHelper.ulGridToExcel(ultraGrid2, "月汇总数据");
  62. else if (utbMain.SelectedTab.Key == "3")
  63. GridHelper.ulGridToExcel(ugHours, "小时能力");
  64. break;
  65. case "UpdateHours":
  66. UpdateHours();
  67. break;
  68. case "Close":
  69. this.Close();
  70. break;
  71. }
  72. }
  73. protected override void OnLoad(EventArgs e)
  74. {
  75. base.OnLoad(e);
  76. ProcessCode = this.CustomInfo.ToString2();
  77. if (ProcessCode == "") ProcessCode = "F";
  78. plineCodes = comm.InitDropPlinePower(ProcessCode, cboPline, this.ValidDataPurviewIds, ob);
  79. plineCodes = comm.InitDropPlinePower(ProcessCode, cboPline1, this.ValidDataPurviewIds, ob);
  80. plineCodes = comm.InitDropPlinePower(ProcessCode, cboPline2, this.ValidDataPurviewIds, ob);
  81. plineCodes = comm.InitDropPlinePower(ProcessCode, cboPline3, this.ValidDataPurviewIds, ob);
  82. comm.InitDroProStation(ProcessCode, new List<UltraComboEditor>() { uceFactory, uceFactory1, uceFactory2, uceFactory3 }, this.ValidDataPurviewIds, ob);
  83. if (plineCodes == null || plineCodes.Length <= 0)
  84. {
  85. MessageBox.Show("无数据权限!");
  86. this.Close();
  87. }
  88. EntityHelper.ShowGridCaption<HttControlLogEntityPlus>(ultraGrid1.DisplayLayout.Bands[0]);
  89. EntityHelper.ShowGridCaption<SlmBaseMaterialFPlEntity>(ugHours.DisplayLayout.Bands[0]);
  90. EntityHelper.ShowGridCaption<HttControlLogEntity>(ultraGrid2.DisplayLayout.Bands[0]);
  91. //EntityHelper.ShowGridCaption<HttControlLogDetailEntity>(ultraGrid4.DisplayLayout.Bands[0]);
  92. EntityHelper.ShowGridCaption<HttControlLogDetailEntityPlus>(ugStopDetail.DisplayLayout.Bands[0]);
  93. ugStopDetail.DisplayLayout.Bands[0].Columns["ProductTime"].Header.Caption = "停机时间(s)";
  94. ugTotalStop.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
  95. ugTotalStop.DisplayLayout.Override.HeaderClickAction = HeaderClickAction.Default;
  96. ugTotalStop.DisplayLayout.Override.AllowColMoving = AllowColMoving.NotAllowed;
  97. ugTotalStop.DisplayLayout.Override.ActiveRowAppearance.FontData.Bold = DefaultableBoolean.False;
  98. cmbDate.Value = DateTime.Now;
  99. cmbEndDate.Value = DateTime.Now;
  100. cmbDate1.Value = DateTime.Now;
  101. cmbDate1.Value = cmbDate1.Value.AddDays(1 - cmbDate1.Value.Day);
  102. cmbEndDate1.Value = DateTime.Now;
  103. cmbDate2.Value = DateTime.Now;
  104. cmbDate3.Value = DateTime.Now;
  105. statisticalControlNew1.DisableFiltering();
  106. var list2 = new ValueList();
  107. string FailCode = "";
  108. if (ProcessCode == "F")
  109. {
  110. list2.ValueListItems.Add("000000", "所有");
  111. list2.ValueListItems.Add("600202", "高温炉");
  112. list2.ValueListItems.Add("600203", "淬火");
  113. list2.ValueListItems.Add("600204", "低温炉");
  114. list2.ValueListItems.Add("600205", "定径");
  115. list2.ValueListItems.Add("600206", "热矫");
  116. list2.ValueListItems.Add("600207", "冷矫");
  117. list2.ValueListItems.Add("600208", "表面检验");
  118. list2.ValueListItems.Add("600209", "探伤");
  119. FailCode = "6006";
  120. ultraSTATION2.Visible = false;
  121. ultraSTATION4.Visible = false;
  122. ultraSTATION6.Visible = false;
  123. }
  124. else
  125. {
  126. list2.ValueListItems.Add("000000", "所有");
  127. list2.ValueListItems.Add("701302", "探伤");
  128. list2.ValueListItems.Add("701303", "切管");
  129. list2.ValueListItems.Add("701304", "车丝");
  130. list2.ValueListItems.Add("701306", "拧接");
  131. list2.ValueListItems.Add("701307", "通径");
  132. list2.ValueListItems.Add("701308", "水压");
  133. list2.ValueListItems.Add("701309", "倒棱");
  134. list2.ValueListItems.Add("701310", "测量点");
  135. FailCode = "7025";
  136. ultraSTATION1.Visible = false;
  137. ultraSTATION3.Visible = false;
  138. ultraSTATION5.Visible = false;
  139. }
  140. //ultraGrid4.DisplayLayout.Bands[0].Columns["StationCode"].ValueList = list2;
  141. var list1 = new ValueList();
  142. var list3 = new ValueList();
  143. var dt = TubeRoll.GetComBaseInfo(FailCode, ob);
  144. foreach (DataRow row in dt.Rows)
  145. {
  146. list1.ValueListItems.Add(row["BASECODE"].ToString(), row["BASENAME"].ToString());
  147. list3.ValueListItems.Add(row["BASECODE"].ToString(), row["BASENAME"].ToString());
  148. }
  149. ultraGrid2.DisplayLayout.Bands[0].Columns["StopType"].ValueList = list3;
  150. //egpGroupBox1.Expanded = false;
  151. }
  152. public void doQuery0()
  153. {
  154. if (!chkDate.Checked && !ucePlineCode.Checked && !uceOrder.Checked && !uceJudgeStoveNo.Checked)
  155. {
  156. MessageBox.Show("请选择一个条件查询!");
  157. return;
  158. }
  159. if (ProcessCode == "F")
  160. {
  161. station = ultraSTATION1.Value.ToString();
  162. }
  163. if (ProcessCode == "G")
  164. {
  165. station = ultraSTATION2.Value.ToString();
  166. }
  167. List<HttControlLogEntityPlus> listEntity1 =
  168. EntityHelper.GetData<HttControlLogEntityPlus>(ProcessCode == "G" ? "com.steering.mes.mcp.Report.FrmHttControlLog.doQueryControlLogProTotalG" : "com.steering.mes.mcp.Report.FrmHttControlLog.doQueryControlLogProTotal",
  169. new object[] { chkDate.Checked?cmbDate.Value.ToString("yyyyMMdd"):"",
  170. chkDate.Checked?cmbEndDate.Value.ToString("yyyyMMdd"):"",
  171. ucePlineCode.Checked && cboPline.CheckedItems.Count>0? cboPline.CheckedItems.Select(p => p.DataValue.ToString()).ToArray():plineCodes,
  172. uceOrder.Checked? txtOrder.Text:"",
  173. uceJudgeStoveNo.Checked? txtJudgeStoveNo.Text:"",
  174. chkBc.Checked && cmbBc.SelectedIndex>=0? cmbBc.SelectedItem.DataValue.ToString():"",
  175. chkBz.Checked && cmbBz.SelectedIndex>=0? cmbBz.SelectedItem.DataValue.ToString():"",
  176. chkFactory.Checked && uceFactory.CheckedItems.Count>0? uceFactory.CheckedItems.Select(p => p.DataValue.ToString()).ToArray(): new string[]{},
  177. station,
  178. }, ob);
  179. httControlLogEntityPlusBindingSource.DataSource = listEntity1;
  180. HeatTreatment.comm.RefreshAndAutoSize(ultraGrid1, new string[] { });
  181. }
  182. public void doQuery1()
  183. {
  184. if (ProcessCode == "F")
  185. {
  186. station = ultraSTATION3.Value.ToString();
  187. }
  188. if (ProcessCode == "G")
  189. {
  190. station = ultraSTATION4.Value.ToString();
  191. }
  192. List<HttControlLogDetailEntityPlus> listEntity1 =
  193. EntityHelper.GetData<HttControlLogDetailEntityPlus>("com.steering.mes.mcp.Report.FrmHttControlLog.doQueryControlLogStopTotal",
  194. new object[] { chkDate1.Checked?cmbDate1.Value.ToString("yyyyMMdd"):"",
  195. chkDate1.Checked?cmbEndDate1.Value.ToString("yyyyMMdd"):"",
  196. ucePlineCode1.Checked && cboPline1.CheckedItems.Count>0? cboPline1.CheckedItems.Select(p => p.DataValue.ToString()).ToArray():plineCodes,
  197. chkBc1.Checked && cmbBc1.SelectedIndex>=0? cmbBc1.SelectedItem.DataValue.ToString():"",
  198. chkBz1.Checked && cmbBz1.SelectedIndex>=0? cmbBz1.SelectedItem.DataValue.ToString():"",
  199. chkFactory1.Checked && uceFactory1.CheckedItems.Count>0? uceFactory1.CheckedItems.Select(p => p.DataValue.ToString()).ToArray(): new string[]{},
  200. station,
  201. }, ob);
  202. httControlLogDetailEntityPlusBindingSource.DataSource = listEntity1;
  203. HeatTreatment.comm.RefreshAndAutoSize(ugStopDetail, new string[] { });
  204. }
  205. public void doQuery2()
  206. {
  207. if (ProcessCode == "F")
  208. {
  209. station = ultraSTATION5.Value.ToString();
  210. }
  211. if (ProcessCode == "G")
  212. {
  213. station = ultraSTATION6.Value.ToString();
  214. }
  215. List<StatisticalClassNew> ListClass = new List<StatisticalClassNew>();
  216. int days = System.Threading.Thread.CurrentThread.CurrentUICulture.Calendar.GetDaysInMonth(cmbDate2.Value.Year, cmbDate2.Value.Month);
  217. ProDate = cmbDate2.Value.ToString("yyyyMM");
  218. while (dataTable1.Columns.Count > 2)
  219. {
  220. dataTable1.Columns.RemoveAt(2);
  221. }
  222. dataTable1.Columns.Add(new DataColumn("STOVE_STOP_TIME") { Caption = "停机汇总" });
  223. dataTable1.Columns.Add(new DataColumn("TITLE") { Caption = "标题" });
  224. ugTotalStop.DisplayLayout.Bands[0].Columns["TITLE"].Hidden = true;
  225. dataTable1.Columns.Add(new DataColumn("STOVE_NUM") { Caption = "炉数" });
  226. ugTotalStop.DisplayLayout.Bands[0].Columns["STOVE_NUM"].Hidden = true;
  227. dataTable1.Columns.Add(new DataColumn("PRO_NUM") { Caption = "生产支" });
  228. ugTotalStop.DisplayLayout.Bands[0].Columns["PRO_NUM"].Hidden = true;
  229. dataTable1.Columns.Add(new DataColumn("PRO_WT") { Caption = "生产吨" });
  230. ugTotalStop.DisplayLayout.Bands[0].Columns["PRO_WT"].Hidden = true;
  231. dataTable1.Columns.Add(new DataColumn("TOTAL_TIME") { Caption = "总时间" });
  232. ugTotalStop.DisplayLayout.Bands[0].Columns["TOTAL_TIME"].Hidden = true;
  233. dataTable1.Columns.Add(new DataColumn("STOP_TIME") { Caption = "总停机" });
  234. ugTotalStop.DisplayLayout.Bands[0].Columns["STOP_TIME"].Hidden = true;
  235. dataTable1.Columns.Add(new DataColumn("STOP_NORMAL") { Caption = "正常停机" });
  236. ugTotalStop.DisplayLayout.Bands[0].Columns["STOP_NORMAL"].Hidden = true;
  237. dataTable1.Columns.Add(new DataColumn("STOP_ABNORMAL") { Caption = "异常停机" });
  238. ugTotalStop.DisplayLayout.Bands[0].Columns["STOP_ABNORMAL"].Hidden = true;
  239. dataTable1.Columns.Add(new DataColumn("PRO_INCREMENT") { Caption = "生产增量" });
  240. ugTotalStop.DisplayLayout.Bands[0].Columns["PRO_INCREMENT"].Hidden = true;
  241. dataTable1.Columns.Add(new DataColumn("MonthOperatingRate") { Caption = "月作业率" });
  242. TubeRoll.GridColumnSum(ugTotalStop, new string[] { "STOVE_STOP_TIME" });
  243. for (int i = 0; i < days; i++)
  244. {
  245. string key = "DAY" + (i + 1);
  246. string name = (i + 1) + "日";
  247. dataTable1.Columns.Add(new DataColumn(key) { Caption = name });
  248. string key1 = "FLAGDAY" + (i + 1);
  249. string name1 = (i + 1) + "日标识";
  250. dataTable1.Columns.Add(new DataColumn(key1) { Caption = name1 });
  251. TubeRoll.GridColumnSum(ugTotalStop, new string[] { key });
  252. ugTotalStop.DisplayLayout.Bands[0].Columns[key1].Hidden = true;
  253. }
  254. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.Report.FrmHttControlLog.doMinutesQueryNew", new object[]
  255. {
  256. ProDate, days.ToString(), ucePlineCode2.Checked && cboPline2.CheckedItems.Count > 0 ? cboPline2.CheckedItems.Select(p => p.DataValue.ToString()).ToArray() : plineCodes,
  257. chkFactory2.Checked && uceFactory2.CheckedItems.Count>0? uceFactory2.CheckedItems.Select(p => p.DataValue.ToString()).ToArray(): new string[]{},
  258. station,
  259. }, this.ob);
  260. GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);
  261. ugTotalStop.DisplayLayout.Override.ActiveRowAppearance.FontData.Bold = DefaultableBoolean.Default;
  262. foreach (UltraGridRow urg in ugTotalStop.Rows)
  263. {
  264. double MonthCount = 0;
  265. foreach (UltraGridColumn column in ugTotalStop.DisplayLayout.Bands[0].Columns)
  266. {
  267. column.Width = 20;
  268. column.CellActivation = Infragistics.Win.UltraWinGrid.Activation.ActivateOnly;
  269. column.CellAppearance.TextHAlign = Infragistics.Win.HAlign.Right;
  270. if (column.Key.StartsWith("DAY"))
  271. {
  272. column.Style = ColumnStyle.Button;
  273. urg.Cells[column.Key].Value =
  274. (double.Parse(urg.Cells[column.Key].Value.ToString()) / 60).ToString("f2");
  275. if (double.Parse(urg.Cells[column.Key].Value.ToString()) >= 2.0 &&
  276. double.Parse(urg.Cells[column.Key].Value.ToString()) < 4.0)
  277. {
  278. urg.Cells[column.Key].Appearance.BackColor = lbColor1.BackColor;
  279. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  280. }
  281. else if (double.Parse(urg.Cells[column.Key].Value.ToString()) >= 4.0)
  282. {
  283. urg.Cells[column.Key].Appearance.BackColor = lbColor2.BackColor;
  284. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  285. }
  286. else if (double.Parse(urg.Cells[column.Key].Value.ToString()) > 0.0001)
  287. {
  288. urg.Cells[column.Key].Appearance.BackColor = lbColor0.BackColor;
  289. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  290. }
  291. if (dataTable1.Columns.Contains("FLAG" + column.Key) && uceShow.Checked)
  292. {
  293. if (urg.Cells["FLAG" + column.Key].Value == null ||
  294. string.IsNullOrWhiteSpace(urg.Cells["FLAG" + column.Key].Value.ToString()))
  295. {
  296. urg.Cells[column.Key].Appearance.BackColor = lbColorData1.BackColor;
  297. }
  298. else if (urg.Cells["FLAG" + column.Key].Value.ToString() == "0")
  299. {
  300. urg.Cells[column.Key].Appearance.BackColor = lbColorData0.BackColor;
  301. }
  302. }
  303. }
  304. }
  305. StatisticalClassNew entity = new StatisticalClassNew()
  306. {
  307. Title = urg.Cells["TITLE"].Value.ToString2(),
  308. StoveNum = decimal.Parse(urg.Cells["STOVE_NUM"].Value.ToString3()),
  309. ProNum = decimal.Parse(urg.Cells["PRO_NUM"].Value.ToString3()),
  310. ProWt = decimal.Parse(urg.Cells["PRO_WT"].Value.ToString3()),
  311. TotalTime = decimal.Parse(urg.Cells["TOTAL_TIME"].Value.ToString3()),
  312. StoveStopTime = decimal.Parse(urg.Cells["STOVE_STOP_TIME"].Value.ToString3()),
  313. StopTime = decimal.Parse(urg.Cells["STOP_TIME"].Value.ToString3()),
  314. StopNormal = decimal.Parse(urg.Cells["STOP_NORMAL"].Value.ToString3()),
  315. StopAbnormal = decimal.Parse(urg.Cells["STOP_ABNORMAL"].Value.ToString3()),
  316. ProIncrement = decimal.Parse(urg.Cells["PRO_INCREMENT"].Value.ToString3())
  317. };
  318. ListClass.Add(entity);
  319. urg.Cells["MonthOperatingRate"].Value = entity.RealOperatingRate;
  320. }
  321. statisticalControlNew1.SetDat(ListClass);
  322. HeatTreatment.comm.RefreshAndAutoSize(ugTotalStop, new string[] { "PLINE_NAME" });
  323. }
  324. public void doQuery3()
  325. {
  326. List<SlmBaseMaterialFPlEntity> listEntity1 =
  327. EntityHelper.GetData<SlmBaseMaterialFPlEntity>(ProcessCode == "G" ? "com.steering.mes.mcp.Report.FrmHttControlLog.doQueryControlHoursG" : "com.steering.mes.mcp.Report.FrmHttControlLog.doQueryControlHours",
  328. new object[] { ckBAL_YEAR_MONTH.Checked?cmbDate3.Value.ToString("yyyyMM"):"",
  329. ucePline2.Checked && cboPline3.CheckedItems.Count>0? cboPline3.CheckedItems.Select(p => p.DataValue.ToString()).ToArray():plineCodes,
  330. chkFactory3.Checked && uceFactory3.CheckedItems.Count>0? uceFactory3.CheckedItems.Select(p => p.DataValue.ToString()).ToArray(): new string[]{},
  331. }, ob);
  332. slmBaseMaterialFPlEntityBindingSource.DataSource = listEntity1;
  333. HeatTreatment.comm.RefreshAndAutoSize(ugHours, new string[] { });
  334. }
  335. public void UpdateHours()
  336. {
  337. List<SlmBaseMaterialFPlEntity> listEntity1 =
  338. slmBaseMaterialFPlEntityBindingSource.DataSource as List<SlmBaseMaterialFPlEntity>;
  339. if (listEntity1 == null || !listEntity1.Any())
  340. {
  341. MessageBox.Show("无数据!");
  342. return;
  343. }
  344. if (MessageUtil.ShowYesNoAndQuestion("是否确认回报小时能力?") == DialogResult.No)
  345. return;
  346. var ccp = new CoreClientParam();
  347. ccp.ServerName = "com.steering.mes.mcp.Report.FrmHttControlLog";
  348. ccp.MethodName = ProcessCode == "G" ? "UpdateHoursG" : "UpdateHours";
  349. ccp.ServerParams = new object[]
  350. {
  351. listEntity1.Select(JSONFormat.Format).ToList()
  352. };
  353. ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  354. if (ccp.ReturnCode != -1)
  355. {
  356. MessageUtil.ShowTips(ccp.ReturnInfo);
  357. if (ccp.ReturnInfo.Equals("回报成功!"))
  358. {
  359. doQuery3();
  360. }
  361. }
  362. }
  363. private void ultraGrid4_InitializeRow(object sender, InitializeRowEventArgs e)
  364. {
  365. var entity = e.Row.ListObject as HttControlLogDetailEntity;
  366. if (entity == null) return;
  367. var list1 = new ValueList();
  368. var dt = TubeRoll.GetComBaseInfo(entity.StopType, ob);
  369. foreach (DataRow row in dt.Rows)
  370. list1.ValueListItems.Add(row["BASECODE"].ToString(), row["BASENAME"].ToString());
  371. e.Row.Cells["StopSmall"].ValueList = list1;
  372. var list2 = new ValueList();
  373. var dt2 = TubeRoll.GetComBaseInfo(entity.StopSmall, ob);
  374. foreach (DataRow row in dt2.Rows)
  375. list2.ValueListItems.Add(row["BASECODE"].ToString(), row["BASENAME"].ToString());
  376. e.Row.Cells["StopReason"].ValueList = list2;
  377. }
  378. private void ultraGrid2_InitializeRow(object sender, InitializeRowEventArgs e)
  379. {
  380. try
  381. {
  382. var entity = e.Row.ListObject as HttControlLogEntity;
  383. if (entity == null) return;
  384. var list1 = new ValueList();
  385. var dt = TubeRoll.GetComBaseInfo(entity.StopType, ob);
  386. if (entity.ProType == "停机")
  387. e.Row.Cells["ProType"].Appearance.BackColor = Color.Pink;
  388. DateTime dtBegin, dtEnd;
  389. if (DateTime.TryParse(entity.LogsBeg, out dtBegin) && DateTime.TryParse(entity.LogsEnd, out dtEnd))
  390. if (dtBegin > dtEnd)
  391. e.Row.Cells["LogsEnd"].Appearance.BackColor = Color.Red;
  392. else
  393. e.Row.Cells["LogsEnd"].Appearance.ResetBackColor();
  394. ultraGrid2.Refresh();
  395. }
  396. catch (Exception)
  397. {
  398. }
  399. }
  400. private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
  401. {
  402. if (ultraGrid2.ActiveRow == null) return;
  403. var entity = ultraGrid2.ActiveRow.ListObject as HttControlLogEntity;
  404. if (entity == null) return;
  405. if (entity.ProType == "停机")
  406. {
  407. //egpGroupBox1.Expanded = true;
  408. var lists =
  409. EntityHelper.GetData<HttControlLogDetailEntity>(
  410. "com.steering.mes.mcp.Report.FrmHttControlLog.doQueryDetail",
  411. new object[] { entity.ControlId }, ob);
  412. lists.ForEach(p => p.Chk = true);
  413. httControlLogDetailEntityBindingSource1.DataSource = lists;
  414. }
  415. else
  416. {
  417. //egpGroupBox1.Expanded = false;
  418. httControlLogDetailEntityBindingSource1.DataSource = new List<HttControlLogDetailEntity>();
  419. }
  420. }
  421. private void ugTotalStop_ClickCellButton(object sender, CellEventArgs e)
  422. {
  423. string Day = "";
  424. if (ProcessCode == "F")
  425. {
  426. station = ultraSTATION5.Value.ToString();
  427. }
  428. if (ProcessCode == "G")
  429. {
  430. station = ultraSTATION6.Value.ToString();
  431. }
  432. if (e.Cell.Column.Key.StartsWith("DAY"))
  433. {
  434. Day = e.Cell.Column.Key.Replace("DAY", "").PadLeft(2, '0');
  435. }
  436. List<StatisticalClassNew> listEntity =
  437. EntityHelper.GetData<StatisticalClassNew>("com.steering.mes.mcp.Report.FrmHttControlLog.doQueryTotal",
  438. new object[]
  439. {ProDate,
  440. Day==""?"":(ProDate+Day) ,
  441. e.Cell.Row.Cells["PLINE_CODE"].Value.ToString3()
  442. }, ob);
  443. statisticalControlNew1.SetDat(listEntity);
  444. ultraExpandableGroupBox1.Text = e.Cell.Row.Cells["PLINE_NAME"].Value.ToString3() + " " + ProDate +
  445. (Day == "" ? "当月记录" : (Day + "当天记录"));
  446. List<HttControlLogEntity> listEntity1 =
  447. EntityHelper.GetData<HttControlLogEntity>("com.steering.mes.mcp.Report.FrmHttControlLog.doQueryPlanNew",
  448. new object[]
  449. {
  450. Day==""?"":(ProDate+Day) , ProDate
  451. , e.Cell.Row.Cells["PLINE_CODE"].Value.ToString3(),station
  452. }, ob);
  453. httControlLogEntityBindingSource1.DataSource = listEntity1;
  454. HeatTreatment.comm.RefreshAndAutoSize(ultraGrid2, new[] { "LogsBeg", "LogsEnd", "Memo" });
  455. }
  456. private void uceShow_CheckedChanged(object sender, EventArgs e)
  457. {
  458. foreach (UltraGridRow urg in ugTotalStop.Rows)
  459. {
  460. double MonthCount = 0;
  461. foreach (UltraGridColumn column in ugTotalStop.DisplayLayout.Bands[0].Columns)
  462. {
  463. if (column.Key.StartsWith("DAY"))
  464. {
  465. if (double.Parse(urg.Cells[column.Key].Value.ToString()) >= 2.0 &&
  466. double.Parse(urg.Cells[column.Key].Value.ToString()) < 4.0)
  467. {
  468. urg.Cells[column.Key].Appearance.BackColor = lbColor1.BackColor;
  469. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  470. }
  471. else if (double.Parse(urg.Cells[column.Key].Value.ToString()) >= 4.0)
  472. {
  473. urg.Cells[column.Key].Appearance.BackColor = lbColor2.BackColor;
  474. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  475. }
  476. else if (double.Parse(urg.Cells[column.Key].Value.ToString()) > 0.0001)
  477. {
  478. urg.Cells[column.Key].Appearance.BackColor = lbColor0.BackColor;
  479. urg.Cells[column.Key].Appearance.FontData.Bold = DefaultableBoolean.True;
  480. }
  481. else
  482. {
  483. urg.Cells[column.Key].Appearance.ResetBackColor();
  484. }
  485. if (dataTable1.Columns.Contains("FLAG" + column.Key) && uceShow.Checked)
  486. {
  487. if (urg.Cells["FLAG" + column.Key].Value == null ||
  488. string.IsNullOrWhiteSpace(urg.Cells["FLAG" + column.Key].Value.ToString()))
  489. {
  490. urg.Cells[column.Key].Appearance.BackColor = lbColorData1.BackColor;
  491. }
  492. else if (urg.Cells["FLAG" + column.Key].Value.ToString() == "0")
  493. {
  494. urg.Cells[column.Key].Appearance.BackColor = lbColorData0.BackColor;
  495. }
  496. }
  497. }
  498. }
  499. }
  500. }
  501. private void utbMain_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
  502. {
  503. if (toolMenu == null) return;
  504. if (toolMenu.Toolbars[0].Tools.Exists("UpdateHours"))
  505. toolMenu.Toolbars[0].Tools["UpdateHours"].InstanceProps.Visible = utbMain.SelectedTab.Index == 3
  506. ? DefaultableBoolean.True
  507. : DefaultableBoolean.False;
  508. if (toolMenu.Toolbars[0].Tools.Exists("ExportTotal"))
  509. toolMenu.Toolbars[0].Tools["ExportTotal"].InstanceProps.Visible = utbMain.SelectedTab.Index == 2
  510. ? DefaultableBoolean.True
  511. : DefaultableBoolean.False;
  512. }
  513. private void FrmHttControlLogReport_Shown(object sender, EventArgs e)
  514. {
  515. utbMain_SelectedTabChanged(null, null);
  516. }
  517. }
  518. }