| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Drawing;
- using System.Data;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using Core.StlMes.Client.SaleOrder.BLL;
- using CoreFS.CA06;
- using Core.Mes.Client.Comm.Tool;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using Core.StlMes.Client.Qcm;
- using Core.Mes.Client.Comm.Server;
- using CoreFS.SA06;
- using Infragistics.Win;
- using Core.Mes.Client.Comm.Control;
- namespace Core.StlMes.Client.SaleOrder.Control
- {
- public partial class CraftOrdDesignStdDicCtrl : UserControl
- {
- private CraftOrdDesignStdDicBLL _designStdDicBLL;
- private CraftOrdDesignMscPlBLL _designMscPlBLL;
- private CraftOrdDesignMscPlPrcBLL _designMscPlPrcBLL;
- private UltraComboEditor[] ultras = new UltraComboEditor[11];
- private OpeBase _ob;
- public CraftOrdDesignStdDicCtrl(System.Windows.Forms.Control container, OpeBase ob)
- {
- InitializeComponent();
- _ob = ob;
- _designStdDicBLL = new CraftOrdDesignStdDicBLL(ob);
- _designMscPlBLL = new CraftOrdDesignMscPlBLL(ob);
- _designMscPlPrcBLL = new CraftOrdDesignMscPlPrcBLL(ob);
- container.Controls.Add(this);
- this.Dock = DockStyle.Fill;
- LoadBaseData();
- }
- private void LoadBaseData()
- {
- for (int i = 0; i < ultras.Length; i++)
- {
- ultras[i] = new UltraComboEditor();
- this.Controls.Add(ultras[i]);
- ultras[i].Visible = false;
- ultras[i].DropDownListWidth = -1;
- }
- //从表
- UltraGridBand ugbC = entityGrid1.DisplayLayout.Bands[0];
- //探伤位置
- QcmBaseCommon.InitDrop(ultras[2], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4020", "BASENAME", "BASECODE", false, _ob);
- ugbC.Columns["PositionCode"].EditorComponent = ultras[2];
- ugbC.Columns["PositionCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //探伤标准
- QcmBaseCommon.InitDrop(ultras[3], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4021", "BASENAME", "BASECODE", false, _ob);
- ugbC.Columns["StdDesc"].EditorComponent = ultras[3];
- ugbC.Columns["StdDesc"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //探伤级别
- QcmBaseCommon.InitDrop(ultras[4], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4022", "BASENAME", "BASECODE", false, _ob);
- ugbC.Columns["LvCode"].EditorComponent = ultras[4];
- ugbC.Columns["LvCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //检验项
- QcmBaseCommon.InitDrop(ultras[6], "com.steering.pss.qcm.ComBaseQuery.getComBasePhyD", "PHY_NAME", "PHY_CODE", true, _ob);
- ugbC.Columns["PhyCode"].EditorComponent = ultras[6];
- ugbC.Columns["PhyCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //刻槽位置
- QcmBaseCommon.InitDrop(ultras[7], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4023", "BASENAME", "BASENAME", false, _ob);
- ugbC.Columns["GroovePos"].EditorComponent = ultras[7];
- ugbC.Columns["GroovePos"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //刻槽方向
- QcmBaseCommon.InitDrop(ultras[8], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4024", "BASENAME", "BASENAME", false, _ob);
- ugbC.Columns["GrooveDir"].EditorComponent = ultras[8];
- ugbC.Columns["GrooveDir"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- //检验频次
- QcmBaseCommon.InitDrop(ultras[9], "com.steering.pss.qcm.ComBaseQuery.geComBaseInfo4011", "BASENAME", "BASECODE", false, _ob);
- ugbC.Columns["Rate"].EditorComponent = ultras[9];
- ugbC.Columns["Rate"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- }
- /// <summary>
- /// 查询质量设计探伤
- /// </summary>
- /// <param name="designStdDicEntity"></param>
- public void Query(CraftOrdDesignStdDicEntity designStdDicEntity)
- {
- this.CraftOrdDesignStdDicEntityBindingSource.DataSource = _designStdDicBLL.Query(designStdDicEntity);
- }
- private string designKey = "";
- private string[] _parms;
- /// <summary>
- /// 查询质量设计探伤
- /// </summary>
- /// <param name="designStdDicEntity"></param>
- public void QueryByDesignKeyDic(string[] parms)
- {
- designKey = parms[0];
- _parms = parms;
- var data = _designStdDicBLL.QueryByDesignKeyDic(parms);
- var list = data.Select(p => p.Dic).Distinct().ToList();
- if (list.Count > 1)
- {
- ultras[10].DataSource = data.Select(p => p.Dic).Distinct().ToList();
- QcmBaseQuery.BindColumn(ultras[10], "Dic", entityGrid1.DisplayLayout.Bands[0]);
- }
- this.CraftOrdDesignStdDicEntityBindingSource.DataSource = data;
- //UltraComboEditor cmb = new UltraComboEditor();
- foreach (var row in entityGrid1.Rows)
- {
- GridEdite(row);
- if (row.GetValue("CraftSource") == "0")
- {
- row.Cells["Chk"].Value = null;
- row.Cells["Chk"].Activation = Activation.ActivateOnly;
- row.Update();
- }
- //if (cmb.ValueList.FindString(row.GetValue("Dic")) == -1)
- //{
- // cmb.ValueList.ValueListItems.Add(row.GetValue("Dic"));
- //}
- }
- //cmb.DisplayStyle = EmbeddableElementDisplayStyle.WindowsVista;
- //entityGrid1.DisplayLayout.Bands[0].Columns["Dic"].EditorComponent = cmb;
- //entityGrid1.DisplayLayout.Bands[0].Columns["Dic"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- }
- public void Clear()
- {
- this.CraftOrdDesignStdDicEntityBindingSource.Clear();
- }
- public void Save()
- {
- List<CraftOrdDesignStdDicEntity> parms = new List<CraftOrdDesignStdDicEntity>();
- var rows = entityGrid1.Rows.Where(a => a.GetValue("Chk") == "True");
- foreach (var row in rows)
- {
- var parm = EntityHelper.CopyEntity<CraftOrdDesignStdDicEntity>(row.ListObject);
- parm.DescRate = row.GetText("Rate");
- parm.LvDesc = row.GetText("LvCode");
- parm.PhyName = row.GetText("PhyCode");
- parm.PositionDesc = row.GetText("PositionCode");
- if (parm.MscPline == "")
- {
- MessageUtil.ShowWarning("请选择制程!");
- row.SetCellActive("MscPline");
- return;
- }
- //if (parm.ProcessDescC == "")
- //{
- // MessageUtil.ShowWarning("请选择二级工序!");
- // row.SetCellActive("ProcessDescC");
- // return;
- //}
- if (parm.Dic == "")
- {
- MessageUtil.ShowWarning("请选择探伤索引码!");
- row.SetCellActive("Dic");
- return;
- }
- if (parm.PhyName.Equals(""))
- {
- MessageUtil.ShowWarning("请选择材质检验项!");
- return;
- }
-
- if (parm.PositionDesc.Equals(""))
- {
- MessageUtil.ShowWarning("请选择探伤位置!");
- return;
- }
- if (parm.StdDesc.Equals(""))
- {
- MessageUtil.ShowWarning("请选择探伤参考标准!");
- return;
- }
- if (parm.LvDesc.Equals(""))
- {
- MessageUtil.ShowWarning("请选择探伤级别!");
- return;
- }
- if (parm.Coverage.Equals("") || !StringUtil.IsNumber(parm.Coverage) || Convert.ToDouble(parm.Coverage) > 100 || Convert.ToDouble(parm.Coverage) < 0)
- {
- MessageUtil.ShowWarning("请输入探伤覆盖率:0~100!");
- return;
- }
- if (!parm.Coverage.Equals("") && parm.Coverage.StartsWith("."))
- parm.Coverage = "0" + parm.Coverage;
- if (parm.GroovePos.Equals(""))
- {
- MessageUtil.ShowWarning("请选择刻槽位置!");
- return;
- }
- if (parm.DescRate == "")
- {
- MessageUtil.ShowWarning("请选择检验频次!");
- return;
- }
- else
- {
- if (parm.DescRate == "按比例")
- {
- if (parm.DescVal == "")
- {
- MessageUtil.ShowWarning("请输入频率值!");
- return;
- }
- if (!StringUtil.IsNumber(parm.DescVal))
- {
- MessageUtil.ShowWarning("频率值:请输入数字!");
- return;
- }
- if (Convert.ToDouble(parm.DescVal) <= 0 || Convert.ToDouble(parm.DescVal) > 100)
- {
- MessageUtil.ShowWarning("频率值:请输入大于0小于等于100的数字!");
- return;
- }
- }
- }
- if (parm.MinD != "" || parm.MaxD != "")
- {
- if (parm.MinD == "")
- {
- MessageUtil.ShowWarning("请输入适用规格-外径下限!");
- row.SetCellActive("MIN_D");
- return;
- }
- else if (parm.MinD.TryParseDouble() == false)
- {
- MessageUtil.ShowWarning("适用规格-外径下限:请输入数字!");
- row.SetCellActive("MIN_D");
- return;
- }
- if (parm.MinD == "")
- {
- MessageUtil.ShowWarning("请输入适用规格-外径上限!");
- row.SetCellActive("MAX_D");
- return;
- }
- else if (parm.MaxD.TryParseDouble() == false)
- {
- MessageUtil.ShowWarning("适用规格-外径上限:请输入数字!");
- row.SetCellActive("MAX_D");
- return;
- }
- }
- if (parm.MinH != "" || parm.MaxH != "")
- {
- if (parm.MinH == "")
- {
- MessageUtil.ShowWarning("请输入适用规格-壁厚下限!");
- row.SetCellActive("MIN_H");
- return;
- }
- else if (parm.MinH.TryParseDouble() == false)
- {
- MessageUtil.ShowWarning("适用规格-壁厚下限:请输入数字!");
- row.SetCellActive("MIN_H");
- return;
- }
- if (parm.MaxH == "")
- {
- MessageUtil.ShowWarning("请输入适用规格-壁厚上限!");
- row.SetCellActive("MAX_H");
- return;
- }
- else if (parm.MaxH.TryParseDouble() == false)
- {
- MessageUtil.ShowWarning("适用规格-壁厚上限:请输入数字!");
- row.SetCellActive("MAX_H");
- return;
- }
- }
- parm.CreateName = CoreUserInfo.UserInfo.GetUserName();
- parm.UpdateName = CoreUserInfo.UserInfo.GetUserName();
- parm.DeleteName = CoreUserInfo.UserInfo.GetUserName();
- parm.SpeclFl = "2";
- parm.DesginKey = designKey;
- parms.Add(parm);
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认保存?") == DialogResult.No)
- {
- return;
- }
- _designStdDicBLL.Save(parms);
- MessageUtil.ShowTips("保存成功!");
- QueryByDesignKeyDic(_parms);
- }
- public void Delete()
- {
- List<CraftOrdDesignStdDicEntity> parms = new List<CraftOrdDesignStdDicEntity>();
- var rows = entityGrid1.Rows.Where(a => a.GetValue("Chk") == "True");
- foreach (var row in rows)
- {
- var parm = EntityHelper.CopyEntity<CraftOrdDesignStdDicEntity>(row.ListObject);
- parm.CreateName = CoreUserInfo.UserInfo.GetUserName();
- parm.UpdateName = CoreUserInfo.UserInfo.GetUserName();
- parm.DeleteName = CoreUserInfo.UserInfo.GetUserName();
- parm.SpeclFl = "2";
- parm.DesginKey = designKey;
- parms.Add(parm);
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认删除?") == DialogResult.No)
- {
- return;
- }
- _designStdDicBLL.Delete(parms);
- MessageUtil.ShowTips("删除成功!");
- }
- private void GridEdite(UltraGridRow row)
- {
- if (row.GetValue("Chk") == "True")
- {
- foreach (UltraGridCell cell in row.Cells)
- {
- if (cell.Column.CellActivation == Activation.AllowEdit)
- {
- cell.Activation = Activation.AllowEdit;
- }
- }
- }
- else
- {
- foreach (UltraGridCell cell in row.Cells)
- {
- if (cell.Column.Key == "Chk") continue;
- if (cell.Column.CellActivation == Activation.AllowEdit)
- {
- cell.Activation = Activation.ActivateOnly;
- }
- }
- }
- }
- private void entityGrid1_CellChange(object sender, CellEventArgs e)
- {
- entityGrid1.UpdateData();
- GridEdite(e.Cell.Row);
- }
- private void entityGrid1_AfterRowInsert(object sender, RowEventArgs e)
- {
- e.Row.Cells["CraftSource"].Value = "1";
- e.Row.Cells["SpeclFl"].Value = "2";
- }
- private void ultraTextEditor1_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- UltraGridRow row = entityGrid1.ActiveRow;
- string key = entityGrid1.ActiveCell.Column.Key;
- if (key == "MscPline")
- {
- DataTable dt = _designMscPlBLL.QueryMscPlineProcess(designKey);
- dt.Columns["MSC_PLINE"].Caption = "制程号";
- dt.Columns["WHOLE_BACKLOG"].Caption = "全程途径码";
- dt.Columns["WHOLE_BACKLOG_DESC"].Caption = "全程途径描述";
- dt.Columns["PROCESS_DESC"].Caption = "工序";
- dt.Columns["PROCESS_DESC_C"].Caption = "二级工序";
- dt.Columns["DIC"].Caption = "探伤内控索引码";
- DataTable dtNew = dt.Clone();
- foreach (DataRow dr in dt.Rows)
- {
- string[] dics = dr["DIC"].ToString().Split(',');
- foreach (string dic in dics)
- {
- DataRow drNew = dtNew.NewRow();
- drNew["MSC_PLINE"] = dr["MSC_PLINE"];
- drNew["WHOLE_BACKLOG"] = dr["WHOLE_BACKLOG"];
- drNew["WHOLE_BACKLOG_DESC"] = dr["WHOLE_BACKLOG_DESC"];
- drNew["PROCESS_DESC"] = dr["PROCESS_DESC"];
- drNew["PROCESS_DESC_C"] = dr["PROCESS_DESC_C"];
- drNew["PROCESS_CODE"] = dr["PROCESS_CODE"];
- drNew["PROCESS_CODE_C"] = dr["PROCESS_CODE_C"];
- drNew["DIC"] = dic.Trim();
- dtNew.Rows.Add(drNew);
- }
- }
- BaseInfoPopup popup = new BaseInfoPopup(dtNew, "MSC_PLINE", "CIC", "SIC", "PIC", "WIC", "GIC", "PROCESS_CODE", "PROCESS_CODE_C");
- GridHelper.RefreshAndAutoSize(popup.UltraGrid1);
- popup.LabelTextBox1.Caption = "制程号";
- if (popup.ShowDialog() == DialogResult.OK)
- {
- row.SetValue("MscPline", popup.ChoicedRow.GetValue("MSC_PLINE"));
- row.SetValue("ProcessDescC", popup.ChoicedRow.GetValue("PROCESS_DESC_C"));
- row.SetValue("ProcessCodeC", popup.ChoicedRow.GetValue("PROCESS_CODE_C"));
- row.SetValue("ProcessDesc", popup.ChoicedRow.GetValue("PROCESS_DESC"));
- row.SetValue("ProcessCode", popup.ChoicedRow.GetValue("PROCESS_CODE"));
- row.SetValue("Dic", popup.ChoicedRow.GetValue("DIC"));
- }
- }
- else if (key == "ProcessDescC")
- {
- string mscPline = entityGrid1.ActiveRow.GetValue("MscPline");
- DataTable dt = _designMscPlPrcBLL.queryProcess(designKey, mscPline);
- dt.Columns["PROCESS_DESC"].Caption = "工序";
- dt.Columns["PROCESS_DESC_C"].Caption = "二级工序";
- BaseInfoPopup popup = new BaseInfoPopup(dt, "PROCESS_DESC_C", "PROCESS_CODE", "PROCESS_CODE_C");
- popup.LabelTextBox1.Caption = "二级工序";
- if (popup.ShowDialog() == DialogResult.OK)
- {
- row.SetValue("ProcessDescC", popup.ChoicedRow.GetValue("PROCESS_DESC_C"));
- row.SetValue("ProcessCodeC", popup.ChoicedRow.GetValue("PROCESS_CODE_C"));
- row.SetValue("ProcessDesc", popup.ChoicedRow.GetValue("PROCESS_DESC"));
- row.SetValue("ProcessCode", popup.ChoicedRow.GetValue("PROCESS_CODE"));
- }
- }
- else if (key == "Dic")
- {
- string mscPline = entityGrid1.ActiveRow.GetValue("MscPline");
- string processCode = entityGrid1.ActiveRow.GetValue("ProcessCode");
- DataTable dt = _designMscPlPrcBLL.queryProcessNkIndex(designKey, mscPline, processCode);
- dt.Columns["DIC"].Caption = "探伤内控索引码";
- BaseInfoPopup popup = new BaseInfoPopup(dt, "DIC", "PIC", "SIC", "CIC", "WIC", "GIC");
- popup.LabelTextBox1.Caption = "探伤内控索引码";
- if (popup.ShowDialog() == DialogResult.OK)
- {
- row.SetValue("Dic", popup.ChoicedRow.GetValue("DIC"));
- }
- }
- }
- }
- }
|