| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260 |
- 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;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.Mcp.Control.Entity;
- using CoreFS.CA06;
- using Infragistics.Win;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using Infragistics.Win.UltraWinToolbars;
- namespace Core.StlMes.Client.Mcp.Control.HeatTreatment
- {
- public partial class FrmChooseProbe : FrmBase
- {
- private readonly List<HttReportDefaultEntity> _listDefault;
- public FrmChooseProbe(List<HttReportDefaultEntity> listDefault, List<HttCrackDetectionProbeEntity> listProbe, OpeBase Ob)
- {
- InitializeComponent();
- ob = Ob;
- _listDefault = listDefault;
-
- var ProDefault = _listDefault.Where(p => p.ReportColumn.ToUpper() == "PROBE_QTY_NAME").ToList();
- DataTable dt;
- if (ProDefault.Any() && ProDefault[0].DroplistUsed != "")
- {
- dt =
- ServerHelper.GetData(
- "com.steering.mes.mcp.heatTreatment.ScrapHelper.doQuery",
- new object[] { "4097",ProDefault[0].DroplistUsed.Split(';') }, ob);
- }
- else
- {
- dt =
- ServerHelper.GetData(
- "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
- new object[] { "4097" }, ob);
-
- }
- List<HttCrackDetectionProbeEntity> ListProbeAll = new List<HttCrackDetectionProbeEntity>();
- listProbe.ForEach(p => p.Chk = true);
- ListProbeAll.AddRange(listProbe);
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- if (listProbe.Any(p => p.ProbeTypeCode == dt.Rows[i]["BASECODE"].ToString2())) continue;
- HttCrackDetectionProbeEntity a = new HttCrackDetectionProbeEntity();
- a.ProbeTypeCode = dt.Rows[i]["BASECODE"].ToString2();
- a.ProbeTypeName = dt.Rows[i]["BASENAME"].ToString2();
- a.Chk = false;
- bool exits = false;
- var qty = listDefault.Where(p => p.ReportColumn == "PROBE_QTY_" + a.ProbeTypeCode).ToList();
- if (qty.Any())
- {
- exits = true;
- a.ProbeQty = qty.First().TextDefault;
- }
- var para = listDefault.Where(p => p.ReportColumn == "PROBE_PARAMETERS_" + a.ProbeTypeCode).ToList();
- if (para.Any())
- {
- exits = true;
- a.ProbeParameters = para.First().TextDefault;
- }
- if(exits) ListProbeAll.Add(a);
- }
- httCrackDetectionProbeEntityBindingSource.DataSource = ListProbeAll;
- ProbeType.DataSource = dt;
- ProbeType.ValueMember = "BASECODE";
- ProbeType.DisplayMember = "BASENAME";
- if (!_listDefault.Any(p => p.ReportColumn.StartsWith("PROBE_QTY_")))
- ultraGridDetailDes1.DisplayLayout.Bands[0].Columns["ProbeQty"].Hidden = true;
- }
- private void ultraToolbarsManager1_ToolClick(object sender, ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "Save":
- Save();
- break;
- case "Close":
- CloseFrm();
- break;
- }
- }
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- foreach (var ugc in ultraGridDetailDes1.DisplayLayout.Bands[0].Columns)
- ugc.SortIndicator = SortIndicator.Disabled;
- ultraGridDetailDes1.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.False;
- EntityHelper.ShowGridCaption<HttCrackDetectionProbeEntity>(ultraGridDetailDes1.DisplayLayout.Bands[0]);
-
- }
- private void CloseFrm()
- {
- DialogResult = DialogResult.Cancel;
- Close();
- }
- /// <summary>
- /// 保存可疑、剔除品
- /// </summary>
- private void Save()
- {
- ultraGridDetailDes1.UpdateData();
- List<HttCrackDetectionProbeEntity> list = GetValue();
- if (!list.Any())
- {
- MessageBox.Show("请维护探头信息");
- return;
- }
- if (list.Any(p => p.ProbeTypeCode == ""))
- {
- MessageBox.Show("请选择探头种类");
- return;
- }
- if (! ultraGridDetailDes1.DisplayLayout.Bands[0].Columns["ProbeQty"].Hidden && list.Any(p => p.ProbeQty == ""))
- {
- MessageBox.Show("请输入探头个数");
- return;
- }
- if (list.Any(p => p.ProbeParameters == ""))
- {
- MessageBox.Show("请输入探头参数");
- return;
- }
- if (list.GroupBy(p => p.ProbeTypeCode).Max(p=>p.Count())>1)
- {
- MessageBox.Show("有重复的探头种类");
- return;
- }
- DialogResult = DialogResult.OK;
- }
- private void ultraGridDetailDes1_InitializeTemplateAddRow(object sender, Infragistics.Win.UltraWinGrid.InitializeTemplateAddRowEventArgs e)
- {
- if (ultraGridDetailDes1.ActiveRow == null && ultraGridDetailDes1.Rows.Count<=0)
- e.TemplateAddRow.Activated = true;
- }
- private void ultraGridDetailDes1_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e)
- {
- HttCrackDetectionProbeEntity data = e.Row.ListObject as HttCrackDetectionProbeEntity;
- if(data.ProbeTypeCode=="") return;
- var ProDefault = _listDefault.Where(p => p.ReportColumn.ToUpper() == "PROBE_PARAMETERS_" + data.ProbeTypeCode).ToList();
- if (ProDefault.Any())
- {
- if (ProDefault[0].ColumnType == "1" || ProDefault[0].ColumnType == "2")
- {
- UltraComboEditor UltraComboEditor = new UltraComboEditor();
- if (ProDefault[0].DroplistUsed != "")
- {
- ProDefault[0].DroplistUsed.Split(';').ToList().ForEach(p => UltraComboEditor.Items.Add(p));
- }
- else if (ProDefault[0].DroplistDefult != "")
- {
- DataTable dt =
- ServerHelper.GetData(
- "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
- new object[] {ProDefault[0].DroplistDefult}, ob);
- UltraComboEditor.DataSource = dt;
- UltraComboEditor.DisplayMember = "BASENAME";
- UltraComboEditor.ValueMember = "BASENAME";
- }
- e.Row.Cells["probeParameters"].EditorComponent = UltraComboEditor;
- e.Row.Cells["probeParameters"].Style = ProDefault[0].ColumnType == "1"
- ? Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList
- : Infragistics.Win.UltraWinGrid.ColumnStyle.DropDown;
- }
- }
-
- ProDefault = _listDefault.Where(p => p.ReportColumn.ToUpper() =="PROBE_QTY_" + data.ProbeTypeCode).ToList();
- if (ProDefault.Any())
- {
- if (ProDefault[0].ColumnType == "1" || ProDefault[0].ColumnType == "2")
- {
- UltraComboEditor UltraComboEditor = new UltraComboEditor();
- e.Row.Cells["probeQty"].EditorComponent = UltraComboEditor;
- if (ProDefault[0].DroplistUsed != "")
- {
- UltraComboEditor.DataSource = ProDefault[0].DroplistUsed.Split(';');
- }
- else if (ProDefault[0].DroplistDefult != "")
- {
- DataTable dt =
- ServerHelper.GetData(
- "com.steering.mes.mcp.collarMaterial.ComBaseInfo.getBaseInfo",
- new object[] { ProDefault[0].DroplistDefult }, ob);
- UltraComboEditor.DataSource = dt;
- ProbeType.DisplayMember = "BASENAME";
- ProbeType.ValueMember = "BASENAME";
- }
- }
- }
-
- }
- public List<HttCrackDetectionProbeEntity> GetValue()
- {
- ultraGridDetailDes1.UpdateData();
- List<HttCrackDetectionProbeEntity> data =
- httCrackDetectionProbeEntityBindingSource.DataSource as List<HttCrackDetectionProbeEntity>;
- if (data.Any())
- {
- return data.Where(p => p.Chk).ToList();
- }
- return new List<HttCrackDetectionProbeEntity>();
- }
- private void ultraGridDetailDes1_CellChange(object sender, CellEventArgs e)
- {
- ultraGridDetailDes1.UpdateData();
- if (e.Cell.Column.Key == "ProbeTypeCode")
- {
- HttCrackDetectionProbeEntity HttCrackDetectionProbeEntity =
- e.Cell.Row.ListObject as HttCrackDetectionProbeEntity;
- if (HttCrackDetectionProbeEntity == null) return;
- HttCrackDetectionProbeEntity.ProbeTypeName = e.Cell.Text;
- }
- }
- }
- }
|