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 CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Comm.Tool; using System.Collections; using Core.Mes.Client.Comm.Control; namespace Core.StlMes.Client.Lims.Data.PipeAndOutdec { public partial class FrmCheckConsignQuery : FrmBase { private string[] plineCodes = { }; public FrmCheckConsignQuery() { InitializeComponent(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); publicUltraGridDetail1.Ug.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 publicUltraGridChemDetail1.Ug.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False; ultraGrid3.DisplayLayout.Override.RowSelectors = Infragistics.Win.DefaultableBoolean.False;//不显示行头 ultraGrid3.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False; pipeQueryBase1.EnterHandler += QueryCheckConsignBase; plineCodes = comm.GetPlineCode(ValidDataPurviewIds, ob); } private void FrmCheckConsignQuery_Load(object sender, EventArgs e) { InitColumns(); } private void InitColumns() { publicUltraGridBase1.PublicUltraGridBaseActive += new EventHandler(outdecUltraGridBase1_PublicUltraGridBaseActive);//调用委托事件 publicUltraGridBase1.InitColumnsPipeBase(new string[] { "CHECK_NO", "CRAFT_SOURCE", "CIC", "PROCESS_CODE" }, true, null); //string[] arrColumnsBase = new string[] { "CHECK_NO", "HEAT_NO", "STEEL_GRADE", "STEEL_NO", "PRODUCT_STD", "CONTRACT_NO", "DIMATER", "HEIGHT", "CONSIGN_DEPT", "CONSIGN_NAME", "CONSIGN_TIME", "ISPRODUCER", "SPEC_REQ", "FLAG", "FLAG_DESC", "REMARK", "IS_RUSH" }; //string[] arrCaptionBase = new string[] { "检验编号", "炉号", "钢级", "钢号", "技术标准", "合同号", "外径", "壁厚", "委托单位", "委托人", "委托时间", "是否监制", "特殊要求", "标志位", "标志位", "备注", "加急" }; //publicUltraGridBase1.InitColumns(arrColumnsBase, arrCaptionBase); //publicUltraGridBase1.setColumnShowOrHidden(new string[] { "CHECK_NO" }, true); //publicUltraGridBase1.setOtherColumnReadOnly(null);//可编辑列 string[] arrColumns = new string[] { "BATCH_NO","HEAD_MAT_NO","SAMPLE_NO", "HX", "ONH" };//"FLAG","CHK", string[] arrCaption = new string[] { "批号", "样管编号", "试样号", "化学", "ONH" };//"试样状态","选择", publicUltraGridDetail1.InitColumns(arrColumns, arrCaption); //publicUltraGridDetail1.setOtherColumnReadOnly(null);//可编辑列 //publicUltraGridDetail1.setColumnShowOrHidden(new string[] { "FLAG" }, false);//不需要显示的行 //publicUltraGridDetail1.Ug.DisplayLayout.Bands[0].Override.AllowAddNew = AllowAddNew.TemplateOnBottom; string[] arrColumnsBaseDetail = new string[] { "PHY_CODE_MAX", "PHY_NAME_MAX", "PHY_CODE", "PHY_NAME", "ITEM_CODE_F", "ITEM_NAME_F", "ITEM_CODE_W", "ITEM_NAME_W", "ITEM_CODE_S", "ITEM_NAME_S", "ISRCL" }; string[] arrCaptionBaseDetail = new string[] { "检验项代码", "检验项名称", "检验基础项代码", "检验基础项名称", "方向代码", "方向", "温度代码", "温度", "尺寸代码", "尺寸", "是否小样热处理" }; PublicPipeAndOutdec.InitColumns(arrColumnsBaseDetail, arrCaptionBaseDetail, dataTable3); PublicPipeAndOutdec.setColumnShowOrHidden(ultraGrid3, new string[] { "PHY_CODE_MAX", "PHY_CODE", "ITEM_CODE_F", "ITEM_NAME_F", "ITEM_CODE_W", "ITEM_NAME_W", "ITEM_CODE_S", "ITEM_NAME_S" }, false); PublicPipeAndOutdec.setOtherColumnReadOnly(ultraGrid3, null); //PublicPipeAndOutdec.setOtherColumnReadOnly(publicUltraGridChemDetail1.Ug, null); } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { //新增、修改修约值、审核、删除、退出 switch (ToolbarKey) { case "Query": QueryCheckConsignBase(); break; case "Update": UpdateCheckConsignBase(); break; case "Cancel": CancelCheckConsignBase(); break; case "Producer": UpdateProducer(); break; case "NoProducer": CancelNoProducer(); break; case "Send": UpdateCheckConsignDetail(); break; case "Print": RepLimsPipeJGCheckTaskOrder(); break; case"AddPhy": addPhyCodeMaxPhy(); break; case "Close": if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes) { this.Close(); } break; } } /// /// 增加检验项 /// private void addPhyCodeMaxPhy() { UltraGridRow row = publicUltraGridBase1.Ur; if(row == null)return; if (!row.Cells["CHECK_NO"].Text.Contains("K") && !row.Cells["CHECK_NO"].Text.Contains("Y") && !row.Cells["CHECK_NO"].Text.Contains("N") && !row.Cells["CHECK_NO"].Text.Contains("L")) { if (!checkFileNew(row)) { return; } } FrmAddPhy addPhy = new FrmAddPhy(this.ob,row.Cells["CHECK_NO"].Text); addPhy.ShowDialog(); } /// /// 验证该炉计划工艺序号是否是最新版本 /// /// /// private bool checkFileNew(UltraGridRow row) { string planCraftSeq = ""; string craftSeq = ""; //查询炉计划工艺版本序号 DataTable dsPlan = PublicServer.GetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.doQueryPlanCraftSeq", new object[] { row.Cells["HEAT_NO"].Text, row.Cells["PROCESS_CODE"].Text }, ob); if (dsPlan.Rows.Count > 0) { planCraftSeq = dsPlan.Rows[0][0].ToString(); } //查询工艺最新版本号 DataTable dsCraft = PublicServer.GetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.doQueryCraftSeq", new object[] { row.Cells["CRAFT_FILE_NO"].Text }, ob); if (dsCraft.Rows.Count > 0) { craftSeq = dsCraft.Rows[0][0].ToString(); } else { craftSeq = "0"; } if (planCraftSeq == craftSeq) { return true; } else { MessageUtil.ShowTips("炉计划未获取最新工艺版本,不允许增加理化项!"); return false; } } //查询检验委托基本信息 private void QueryCheckConsignBase() { try { ArrayList arrayList = new ArrayList(); arrayList = pipeQueryBase1.GetQueryInfo("012345"); arrayList.Add(""); arrayList.Add(plineCodes); arrayList.Add(this.CustomInfo.ToString()); publicUltraGridBase1.QueryCheckConsignBase("pipe.PublicPipeBase", arrayList, this.ob); if (publicUltraGridBase1.Ug.Rows.Count == 0) { ClearCheckConsign(); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); return; } } void outdecUltraGridBase1_PublicUltraGridBaseActive(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; pipeShowBase1.ShowBaseInfo(publicUltraGridBase1.Ur); QueryCheckConsignDetail(); QueryCheckConsignChemDetail(); QueryCheckConsignPhyDetail(); } finally { this.Cursor = Cursors.Default; } } //查询检验委托项目明细信息 /// /// 查询检验委托项目明细信息 /// private void QueryCheckConsignPhyDetail() { try { DataTable dt = PublicServer.GetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.QueryCheckConsignPhyDetail", new Object[] { publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim() }, ob); if (dt == null || dt.Rows.Count == 0) { dataTable3.Rows.Clear(); ultraExpandableGroupBox1.Hide(); return; } ultraExpandableGroupBox1.Show(); GridHelper.CopyDataToDatatable(dt, dataTable3, true);//把dt复制给dataTable4 GridHelper.RefreshAndAutoSize(ultraGrid3);//刷新Grid } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); return; } } //查询检验委托明细信息 /// /// 查询检验委托明细信息 /// private void QueryCheckConsignDetail() { try { ArrayList al = new ArrayList(); al.Add(""); al.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); publicUltraGridDetail1.QueryCheckConsignDetail("pipe.PublicPipeBase", al, this.ob, 4); string strHide = "HX,ONH"; PublicPipeAndOutdec.HideNullColumn(strHide, publicUltraGridDetail1.Ug); publicUltraGridDetail1.setOtherColumnReadOnly(null);//可编辑列 //RefreshAutoSize();//自适应 if (publicUltraGridDetail1.DataTable != null) { pipeShowBase1.ShowValue(publicUltraGridDetail1.DataTable.Rows.Count.ToString()); } } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); return; } } //查询检验委托化学明细信息 /// /// 查询检验委托化学明细信息 /// private void QueryCheckConsignChemDetail() { try { ArrayList al = new ArrayList(); al.Add(""); al.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); publicUltraGridChemDetail1.QueryCheckConsignChemDetail("pipe.PublicPipeBase", al, this.ob); //PublicPipeAndOutdec.setOtherColumnReadOnly(publicUltraGridChemDetail1.Ug, null); //RefreshAutoSize();//自适应 } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); return; } } /// /// 监制 /// private void UpdateProducer() { try { if (publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认监制?") == DialogResult.Yes) { ArrayList alBase = new ArrayList(); alBase.Add("1"); alBase.Add("0"); alBase.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); PublicServer.SetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.UpdateProducer", new Object[] { alBase }, ob); QueryCheckConsignBase(); MessageUtil.ShowTips("检验监制!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } /// /// 取消监制 /// private void CancelNoProducer() { try { if (publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认取消监制?") == DialogResult.Yes) { ArrayList alBase = new ArrayList(); alBase.Add("0"); alBase.Add("1"); alBase.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); PublicServer.SetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.UpdateProducer", new Object[] { alBase }, ob); QueryCheckConsignBase(); MessageUtil.ShowTips("检验取消监制!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } //加急 /// /// 加急 /// private void UpdateCheckConsignBase() { try { if (publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认加急?") == DialogResult.Yes) { ArrayList alBase = new ArrayList(); alBase.Add("1"); alBase.Add(UserInfo.GetUserName()); alBase.Add(DateTime.Now.ToString()); alBase.Add("0"); alBase.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); PublicServer.SetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.UpdateCheckConsignBase", new Object[] { alBase }, ob); QueryCheckConsignBase(); MessageUtil.ShowTips("检验加急成功!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } //取消加急 /// /// 取消加急 /// private void CancelCheckConsignBase() { try { if (publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认取消加急?") == DialogResult.Yes) { ArrayList alBase = new ArrayList(); alBase.Add("0"); alBase.Add(""); alBase.Add(""); alBase.Add("1"); alBase.Add(publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim()); PublicServer.SetData("com.steering.lims.data.pipe.FrmCheckConsignQuery.UpdateCheckConsignBase", new Object[] { alBase }, ob); QueryCheckConsignBase(); MessageUtil.ShowTips("取消加急成功!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } /// /// 调整试验室 /// private void UpdateCheckConsignDetail() { try { if (publicUltraGridBase1.Ur == null || publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认调整权限?") == DialogResult.Yes) { WinLabItemsSend pc = new WinLabItemsSend(); pc.Ob = this.ob; pc.StrCheck = publicUltraGridBase1.Ur.Cells["CHECK_NO"].Text.Trim(); pc.StrPath = "pipe.FrmCheckConsignQuery"; pc.ShowDialog(); if (pc.DialogResult != DialogResult.OK) { return; } MessageUtil.ShowTips("调整权限成功!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } //清空检验委托 private void ClearCheckConsign() { publicUltraGridDetail1.DataTable.Rows.Clear(); PublicPipeAndOutdec.ReMoveColumns(publicUltraGridDetail1.DataTable, 3);//清除列 dataTable3.Rows.Clear(); publicUltraGridChemDetail1.DataTable.Rows.Clear(); } private void RepLimsPipeJGCheckTaskOrder() { try { this.Cursor = Cursors.WaitCursor; UltraGridRow ugr = publicUltraGridBase1.Ur; if (ugr == null) { MessageUtil.ShowWarning("请选择您要打印的检验任务单!"); return; } string strCHECK_NO = ugr.Cells["CHECK_NO"].Value.ToString(); string strurl = ""; //if (ob.MainUrl.StartsWith("http://127.0.0.1")) //{ // strurl = "http://localhost:8075/webroot/decision/view/report?viewlet=RepLimsPipeJGCheckTaskOrder.cpt&bypagesize=false&CHECK_NO=" + strCHECK_NO; //} //else //{ strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLimsPipeJGCheckTaskOrder.cpt&bypagesize=false&CHECK_NO=" + strCHECK_NO; //} FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "检验任务单"; fBug.Show(); } finally { this.Cursor = Cursors.Default; } } } }