FrmProductionDetailsLG.cs 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. using com.steering.mes.zgmil.entity;
  2. using Core.Mes.Client.Comm.Control;
  3. using Core.Mes.Client.Comm.Server;
  4. using Core.Mes.Client.Comm.Tool;
  5. using Core.StlMes.Client.ZGMil.Entity;
  6. using CoreFS.CA06;
  7. using Infragistics.Win;
  8. using Infragistics.Win.UltraWinGrid;
  9. using System;
  10. using System.Collections.Generic;
  11. using System.ComponentModel;
  12. using System.Data;
  13. using System.Drawing;
  14. using System.Linq;
  15. using System.Text;
  16. using System.Windows.Forms;
  17. namespace Core.StlMes.Client.ZGMil.Signature
  18. {
  19. public partial class FrmProductionDetailsLG : FrmBase
  20. {
  21. private string date;
  22. private string plinCode;
  23. private OpeBase ob;
  24. public FrmProductionDetailsLG(string _date, string _plinCode, OpeBase _ob)
  25. {
  26. date = _date;
  27. plinCode = _plinCode;
  28. ob = _ob;
  29. InitializeComponent();
  30. }
  31. private void FrmProductionDetailsLG_Load(object sender, EventArgs e)
  32. {
  33. EntityHelper.ShowGridCaption<StlControlLogEntity>(ultraGrid1.DisplayLayout.Bands[0]);
  34. doQuery();
  35. }
  36. /// <summary>
  37. /// 日查询
  38. /// </summary>
  39. private void doQuery()
  40. {
  41. List<StlControlLogEntity> listSource = EntityHelper.GetData<StlControlLogEntity>
  42. ("com.steering.mes.signature.FrmStlControlLog.doQueryPlanPro", new object[] { date, plinCode }, ob);
  43. StlControlLogEntity.DataSource = listSource;
  44. GridHelper.RefreshAndAutoSize(ultraGrid1);
  45. foreach (UltraGridRow row in ultraGrid1.Rows)
  46. {
  47. if (row.Cells["ProType"].Text.ToString().Trim().Equals("停机"))
  48. {
  49. row.Appearance.BackColor = Color.FromArgb(255, 255, 192);
  50. row.Appearance.BackHatchStyle = BackHatchStyle.None;
  51. }
  52. }
  53. TubeRoll.SetGridSumArea(ultraGrid1);
  54. Analysis();
  55. //doQueryMin();
  56. }
  57. /// <summary>
  58. /// 月查询
  59. /// </summary>
  60. private void doMonthQuery()
  61. {
  62. string MonthDate = date.Substring(0, 6);
  63. List<StlControlLogEntity> listSource = EntityHelper.GetData<StlControlLogEntity>
  64. ("com.steering.mes.signature.FrmStlControlLog.doMonthQueryPlanPro", new object[] { MonthDate, plinCode }, ob);
  65. StlControlLogEntity.DataSource = listSource;
  66. GridHelper.RefreshAndAutoSize(ultraGrid1);
  67. foreach (UltraGridRow row in ultraGrid1.Rows)
  68. {
  69. if (row.Cells["ProType"].Text.ToString().Trim().Equals("停机"))
  70. {
  71. row.Appearance.BackColor = Color.FromArgb(255, 255, 192);
  72. row.Appearance.BackHatchStyle = BackHatchStyle.None;
  73. }
  74. }
  75. TubeRoll.SetGridSumArea(ultraGrid1);
  76. Analysis();
  77. //doQueryMin();
  78. }
  79. /// <summary>
  80. ///分析
  81. /// </summary>
  82. private void doAnalysis()
  83. {
  84. int i = 0;
  85. try
  86. {
  87. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  88. {
  89. if (!ugr.Cells["LogsEnd"].Value.Equals(""))
  90. {
  91. i += 1;
  92. if (Convert.ToDateTime(ugr.Cells["LogsBeg"].Value.ToString()) > Convert.ToDateTime(ugr.Cells["LogsEnd"].Value.ToString()))
  93. {
  94. ugr.RowSelectorAppearance.BackColor = Color.Red;
  95. }
  96. }
  97. }
  98. for (int j = 0; j < i; j++)
  99. {
  100. string loagEnd = ultraGrid1.Rows[j].Cells["LogsEnd"].Text.ToString();
  101. string loagBeg = "";
  102. if (j + 1 < i)
  103. {
  104. loagBeg = ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Text.ToString();
  105. if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  106. {
  107. if (TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0)
  108. {
  109. ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackColor = Color.Pink;
  110. ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  111. ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackColor = Color.Pink;
  112. ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None;
  113. }
  114. }
  115. else if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) < 0)
  116. {
  117. ultraGrid1.Rows[j].RowSelectorAppearance.BackColor = Color.Red;
  118. }
  119. TimeSpan timeSpan = DateTime.Parse(ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Value.ToString()) -
  120. DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsEnd"].Value.ToString());
  121. ultraGrid1.Rows[j + 1].Cells["TimeDiff"].Value = timeSpan.TotalMinutes.ToString();
  122. }
  123. }
  124. }
  125. catch (Exception ex)
  126. {
  127. MessageUtil.ShowTips("开始时间或结束时间不能为空!");
  128. }
  129. }
  130. /// <summary>
  131. ///时间差
  132. /// </summary>
  133. private void Analysis()
  134. {
  135. foreach (UltraGridRow ugr in ultraGrid1.Rows)
  136. {
  137. string loagEnd = ugr.Cells["LogsEnd"].Value.ToString();
  138. string loagBeg = ugr.Cells["LogsBeg"].Value.ToString();
  139. if (!string.IsNullOrEmpty(loagEnd) && !string.IsNullOrEmpty(loagBeg))
  140. {
  141. TimeSpan timeSpan = DateTime.Parse(loagEnd) - DateTime.Parse(loagBeg);
  142. ugr.Cells["TimeDiff2"].Value = timeSpan.TotalMinutes.ToString();
  143. }
  144. }
  145. }
  146. //private void doQueryMin()
  147. //{
  148. // DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmStlControlLog.getSingleMainPlan", new object[] { plinCode }, this.ob);
  149. // if(dt.Rows.Count>0)
  150. // {
  151. // GridHelper.CopyDataToDatatable(ref dt, ref dtPlan, true);
  152. // }
  153. //}
  154. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  155. {
  156. switch (e.Tool.Key)
  157. {
  158. case "DayQuery"://日查询
  159. doQuery();
  160. break;
  161. case "MonthQuery"://月查询
  162. doMonthQuery();
  163. break;
  164. case "DoAnalysis"://分析
  165. doAnalysis();
  166. break;
  167. case "Export":
  168. GridHelper.ulGridToExcel(ultraGrid1, "生产详情");
  169. break;
  170. case "Close":
  171. this.Close();
  172. break;
  173. default:
  174. break;
  175. }
  176. }
  177. }
  178. }