using com.steering.mes.zgmil.entity; using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.ZGMil.Entity; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Core.StlMes.Client.ZGMil.Signature { public partial class FrmProductionDetailsLG : FrmBase { private string date; private string plinCode; private OpeBase ob; public FrmProductionDetailsLG(string _date, string _plinCode, OpeBase _ob) { date = _date; plinCode = _plinCode; ob = _ob; InitializeComponent(); } private void FrmProductionDetailsLG_Load(object sender, EventArgs e) { EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); doQuery(); } /// /// 日查询 /// private void doQuery() { List listSource = EntityHelper.GetData ("com.steering.mes.signature.FrmStlControlLog.doQueryPlanPro", new object[] { date, plinCode }, ob); StlControlLogEntity.DataSource = listSource; GridHelper.RefreshAndAutoSize(ultraGrid1); foreach (UltraGridRow row in ultraGrid1.Rows) { if (row.Cells["ProType"].Text.ToString().Trim().Equals("停机")) { row.Appearance.BackColor = Color.FromArgb(255, 255, 192); row.Appearance.BackHatchStyle = BackHatchStyle.None; } } TubeRoll.SetGridSumArea(ultraGrid1); Analysis(); //doQueryMin(); } /// /// 月查询 /// private void doMonthQuery() { string MonthDate = date.Substring(0, 6); List listSource = EntityHelper.GetData ("com.steering.mes.signature.FrmStlControlLog.doMonthQueryPlanPro", new object[] { MonthDate, plinCode }, ob); StlControlLogEntity.DataSource = listSource; GridHelper.RefreshAndAutoSize(ultraGrid1); foreach (UltraGridRow row in ultraGrid1.Rows) { if (row.Cells["ProType"].Text.ToString().Trim().Equals("停机")) { row.Appearance.BackColor = Color.FromArgb(255, 255, 192); row.Appearance.BackHatchStyle = BackHatchStyle.None; } } TubeRoll.SetGridSumArea(ultraGrid1); Analysis(); //doQueryMin(); } /// ///分析 /// private void doAnalysis() { int i = 0; try { foreach (UltraGridRow ugr in ultraGrid1.Rows) { if (!ugr.Cells["LogsEnd"].Value.Equals("")) { i += 1; if (Convert.ToDateTime(ugr.Cells["LogsBeg"].Value.ToString()) > Convert.ToDateTime(ugr.Cells["LogsEnd"].Value.ToString())) { ugr.RowSelectorAppearance.BackColor = Color.Red; } } } for (int j = 0; j < i; j++) { string loagEnd = ultraGrid1.Rows[j].Cells["LogsEnd"].Text.ToString(); string loagBeg = ""; if (j + 1 < i) { loagBeg = ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Text.ToString(); if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0) { if (TubeRoll.JudgeTime(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) > 0) { ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackColor = Color.Pink; ultraGrid1.Rows[j + 1].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None; ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackColor = Color.Pink; ultraGrid1.Rows[j].Cells["StopType"].Appearance.BackHatchStyle = BackHatchStyle.None; } } else if (DateTime.Compare(Convert.ToDateTime(loagBeg), Convert.ToDateTime(loagEnd)) < 0) { ultraGrid1.Rows[j].RowSelectorAppearance.BackColor = Color.Red; } TimeSpan timeSpan = DateTime.Parse(ultraGrid1.Rows[j + 1].Cells["LogsBeg"].Value.ToString()) - DateTime.Parse(ultraGrid1.Rows[j].Cells["LogsEnd"].Value.ToString()); ultraGrid1.Rows[j + 1].Cells["TimeDiff"].Value = timeSpan.TotalMinutes.ToString(); } } } catch (Exception ex) { MessageUtil.ShowTips("开始时间或结束时间不能为空!"); } } /// ///时间差 /// private void Analysis() { foreach (UltraGridRow ugr in ultraGrid1.Rows) { string loagEnd = ugr.Cells["LogsEnd"].Value.ToString(); string loagBeg = ugr.Cells["LogsBeg"].Value.ToString(); if (!string.IsNullOrEmpty(loagEnd) && !string.IsNullOrEmpty(loagBeg)) { TimeSpan timeSpan = DateTime.Parse(loagEnd) - DateTime.Parse(loagBeg); ugr.Cells["TimeDiff2"].Value = timeSpan.TotalMinutes.ToString(); } } } //private void doQueryMin() //{ // DataTable dt = ServerHelper.GetData("com.steering.mes.signature.FrmStlControlLog.getSingleMainPlan", new object[] { plinCode }, this.ob); // if(dt.Rows.Count>0) // { // GridHelper.CopyDataToDatatable(ref dt, ref dtPlan, true); // } //} private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "DayQuery"://日查询 doQuery(); break; case "MonthQuery"://月查询 doMonthQuery(); break; case "DoAnalysis"://分析 doAnalysis(); break; case "Export": GridHelper.ulGridToExcel(ultraGrid1, "生产详情"); break; case "Close": this.Close(); break; default: break; } } } }