using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.SaleOrder.BLL; using Core.StlMes.Client.SaleOrder.Control; using CoreFS.CA06; 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.SaleOrder.Dialog { public partial class FrmCraftFileLv2 : FrmBase { private CraftFileLv2Ctrl _craftFileLv2Ctrl; private CraftFileLv2CCtrl _craftFileLv2CCtrl; private CraftFileLv2BLL _craftFileLv2BLL; public FrmCraftFileLv2() { InitializeComponent(); } private bool _isFilter = false; private string _designKey = ""; private string _processCode = ""; private string _craftFileLv2Pks = ""; public string CraftFileLv2Pks { get { return _craftFileLv2Pks; } set { _craftFileLv2Pks = value; } } private string _craftFileLv2Nos = ""; public string CraftFileLv2Nos { get { return _craftFileLv2Nos; } set { _craftFileLv2Nos = value; } } private string _craftNo = ""; public string CraftNo { get { return _craftNo; } set { _craftNo = value; } } private string _msc = ""; private bool _isAddAsk = false;//是否有附加要求 private string _modelCode = "";//合同扣型 private string _modelDesc = ""; private string _dimater = ""; private string _height = ""; /// /// /// /// /// /// /// 类型 0选择二级工艺 1 查询二级工艺 2 维护二级工艺 3 查询所有二级工艺文件 /// public FrmCraftFileLv2(string designKey, string processCode, string craftFileLv2Pks, string craftNo, string customInfo, OpeBase ob, string msc, bool isAddAsk, string modelCode, string modelDesc, string dimater, string height) : this() { this.ob = ob; _craftFileLv2Pks = craftFileLv2Pks; _designKey = designKey; _processCode = processCode; _msc = msc; _isAddAsk = isAddAsk; CustomInfo = customInfo; _craftNo = craftNo; _modelCode = modelCode; _modelDesc = modelDesc; _dimater = dimater; _height = height; } private void FrmCraftFileLv2_Load(object sender, EventArgs e) { if (CustomInfo == "0") { ultraToolbarsManager1.Tools["保存"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["作废"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["恢复"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["生成适用条件"].SharedProps.Visible = false; splitContainer1.Panel2Collapsed = true; _isFilter = true; } else if (CustomInfo == "1") { ultraToolbarsManager1.Tools["保存"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["作废"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["恢复"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["生成适用条件"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["确认"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["维护二级工艺文件"].SharedProps.Visible = false; splitContainer1.Panel2Collapsed = true; _isFilter = true; } else if (CustomInfo == "3") { labelCheckBox1.Visible = false; ultraToolbarsManager1.Visible = false; } else { ultraToolbarsManager1.Tools["确认"].SharedProps.Visible = false; ultraToolbarsManager1.Tools["维护二级工艺文件"].SharedProps.Visible = false; _isFilter = false; } _craftFileLv2Ctrl = new CraftFileLv2Ctrl(splitContainer1.Panel1, ob, _msc, _processCode); if (CustomInfo == "3") { _craftFileLv2Ctrl.UltraGrid1.DisplayLayout.Bands[0].Columns["Chk"].Hidden = true; } if (!splitContainer1.Panel2Collapsed) _craftFileLv2Ctrl.UltraGrid1.AfterRowActivate += _craftFileLv2Ctrl_AfterRowActivate; _craftFileLv2CCtrl = new CraftFileLv2CCtrl(splitContainer1.Panel2, ob); _craftFileLv2CCtrl.UltraGrid1.BeforeRowInsert += _craftFileLv2CCtrl_BeforeRowInsert; _craftFileLv2CCtrl.UltraGrid1.AfterRowInsert += _craftFileLv2CCtrl_AfterRowInsert; if (CustomInfo == "0" || CustomInfo == "1" || CustomInfo == "3") { _craftFileLv2Ctrl.UltraGrid1.DisplayLayout.Bands[0].Override.AllowAddNew = Infragistics.Win.UltraWinGrid.AllowAddNew.No; } _craftFileLv2BLL = new CraftFileLv2BLL(ob); Query(); } void _craftFileLv2CCtrl_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e) { e.Row.SetValue("FileLv2Pk", _craftFileLv2Ctrl.UltraGrid1.ActiveRow.GetValue("Pk")); } void _craftFileLv2CCtrl_BeforeRowInsert(object sender, Infragistics.Win.UltraWinGrid.BeforeRowInsertEventArgs e) { if (_craftFileLv2Ctrl.UltraGrid1.ActiveRow == null) { e.Cancel = true; return; } CraftFileLv2Entity fileLv2Entity = (CraftFileLv2Entity)_craftFileLv2Ctrl.UltraGrid1.ActiveRow.ListObject; if (fileLv2Entity.Validflag == "") { e.Cancel = true; return; } } public override void ToolBar_Click(object sender, string ToolbarKey) { base.ToolBar_Click(sender, ToolbarKey); switch (ToolbarKey) { case "Query": Query(); break; case "Save": Save(); break; case "Delete": Delete(); break; case "Resume": Resume(); break; case "Close": this.Close(); break; } } private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e) { switch (e.Tool.Key) { case "查询": Query(); break; case "保存": Save(); break; case "作废": Delete(); break; case "恢复": Resume(); break; case "确认": Submit(); break; case "维护二级工艺文件": ShowCraftFileLv2(); break; case "生成适用条件": CreateApplyCondition(); break; case "关闭": this.Close(); break; } } private void CreateApplyCondition() { var row = _craftFileLv2Ctrl.UltraGrid1.Rows.Where(a => a.GetValue("Chk") == "True").FirstOrDefault(); if (row == null) { MessageUtil.ShowWarning("请选择一条记录!"); return; } List parms = new List(); CraftFileLv2CEntity parm = new CraftFileLv2CEntity(); if(_isAddAsk) { parm.CraftNo = _craftNo; } parm.ModelCode = _modelCode; parm.ModelDesc = _modelDesc; parm.MinD = _dimater; parm.MaxD = _dimater; parm.MinDSign = ">="; parm.MaxDSign = "<="; parm.MinH = _height; parm.MaxH = _height; parm.MinHSign = ">="; parm.MaxHSign = "<="; parm.FileLv2Pk = _craftFileLv2Ctrl.UltraGrid1.ActiveRow.GetValue("Pk"); parms.Add(parm); string[] results = (string[])_craftFileLv2BLL.Save(new List(), parms); MessageUtil.ShowTips("生成成功!"); _craftFileLv2CCtrl.Relocate(results[1]); } private void Query() { if (CustomInfo == "0" || CustomInfo == "1") { string craftNoLv2 = labelTextBox1.Checked ? labelTextBox1.Text.Trim() : ""; string validflag = labelCheckBox1.Checked ? "0" : "1"; _craftFileLv2Ctrl.FilterCraftFileLv2(_designKey, _processCode, craftNoLv2, validflag, _craftFileLv2Pks, _craftNo, _msc); } else if (CustomInfo == "3") { _craftFileLv2Ctrl.QueryAll(); } else { string craftNoLv2 = labelTextBox1.Checked ? labelTextBox1.Text.Trim() : ""; string validflag = labelCheckBox1.Checked ? "0" : "1"; _craftFileLv2CCtrl.Clear(); _craftFileLv2Ctrl.Query(craftNoLv2, validflag); } } private void Save() { _craftFileLv2Ctrl.Save(_craftFileLv2CCtrl); } void _craftFileLv2Ctrl_AfterRowActivate(object sender, EventArgs e) { var craftFileLv2 = (CraftFileLv2Entity)_craftFileLv2Ctrl.UltraGrid1.ActiveRow.ListObject; string validflag = labelCheckBox1.Checked ? "0" : "1"; _craftFileLv2CCtrl.Query(craftFileLv2.Pk, validflag); } private void Delete() { _craftFileLv2Ctrl.UpdateValidflag("0", _craftFileLv2CCtrl); } private void Resume() { _craftFileLv2Ctrl.UpdateValidflag("1", _craftFileLv2CCtrl); } private void Submit() { _craftFileLv2Pks = ""; _craftFileLv2Nos = ""; List plineList = new List(); foreach (var row in _craftFileLv2Ctrl.UltraGrid1.Rows) { if (row.GetValue("Chk") == "True") { string[] plineArray = row.GetValue("PlineCode").Split(','); foreach (string pline in plineArray) { if (plineList.Contains(pline)) { MessageUtil.ShowWarning("选择的二级工艺文件中,存在重复产线!"); return; } else { plineList.Add(pline); } } if (_craftFileLv2Pks == "") { _craftFileLv2Pks = row.GetValue("Pk"); _craftFileLv2Nos = row.GetValue("CraftNoLv2"); } else { _craftFileLv2Pks += ";" + row.GetValue("Pk"); _craftFileLv2Nos += ";" + row.GetValue("CraftNoLv2"); } } } this.DialogResult = System.Windows.Forms.DialogResult.OK; } private void ShowCraftFileLv2() { FrmCraftFileLv2 frmCraftFileLv2 = new FrmCraftFileLv2(_designKey, _processCode, _craftFileLv2Pks, _craftNo, "2", ob, _msc, _isAddAsk, _modelCode, _modelDesc, _dimater, _height); frmCraftFileLv2.ob = ob; frmCraftFileLv2.ShowDialog(); Query(); } } }