using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using com.steering.mes.mcp.entity; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Mcp.Control.Entity; using Core.StlMes.Client.Mcp.Control.Machining; using Infragistics.Win.UltraWinGrid; namespace Core.StlMes.Client.Mcp.Control { public partial class ThreadInspectMachiningControl : MchControlBase { public ThreadInspectMachiningControl() { InitializeComponent(); EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); gx = "701305"; Value = null; } protected override string ScrapCode { get { return "701505"; } } public MchHreadResultEntity Value { get { var list = mchHreadResultEntityBindingSource.DataSource as List; return (list == null) || !list.Any() ? new MchHreadResultEntity() : list.FirstOrDefault(); } set { if (value == null) { mchHreadResultEntityBindingSource.DataSource = new List { new MchHreadResultEntity() }; ScrappedList = new List(); SuspiciousList = new List(); } else { value.ProWt = comm.GetWeight(PortHttBatchSampleResultEntitys, gx, (int)(value.ProNum ?? 0), (int)(PlnZyJgxCEntity.ProCount ?? 0)); mchHreadResultEntityBindingSource.DataSource = new List { value.Clone() }; if (_plineCode != Value.PlineCode) { Names = EntityHelper.GetData( "com.steering.mes.mcp.heatTreatment.FrmHttCrackDetectResult.getHttSign", new object[] { Value.PlineCode, "3" }, Ob); name.DisplayMember = "UserName"; name.ValueMember = "UserName"; YdmBaseClass.SetComboItemHeight(name); _plineCode = Value.PlineCode; } name.DataSource = Names.Where(p => p.ColGroup == value.ProGroup).ToList(); if (value.FailNum == 0) ScrappedList = new List(); if (value.HeadCutNum == 0) SuspiciousList = new List(); // ultraGrid1.DisplayLayout.Bands[0].Columns["ProNum"].MaxValue = value.ProNum; } } } protected override void EditScrapped() { Value.FailNum = ScrappedList.Sum(p => p.FailNum); Value.FailWt = ScrappedList.Sum(p => p.FailWt); ultraGrid1.Refresh(); } private void uteHeadCut_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { if (PlnZyJgxCEntity == null) return; if (PlnZyJgxCEntity.HeatPlanNo == null) return; if (PlnZyJgxCEntity.PlineCode == null) return; var matfrm = new FrmHeadCut(Ob, SuspiciousList, "70210101", PlnZyJgxCEntity.BatchNo) { Text = "返修切头原因" }; ; matfrm.ShowDialog(); ultraGrid1.PerformAction(UltraGridAction.ExitEditMode); ultraGrid1.UpdateData(); if (matfrm.DialogResult == DialogResult.OK) { SuspiciousList = matfrm.dataList; Value.HeadCutNum = matfrm.dataList.Sum(p => p.FailNum); } ultraGrid1.PerformAction(UltraGridAction.ExitEditMode); ultraGrid1.UpdateData(); } } }