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.CA03; using CoreFS.CA04; using CoreFS.CA06; using System.Collections; using Infragistics.Win.UltraWinGrid; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Tool; //可以根据登录人所属部门来确认试验项目权限 namespace Core.StlMes.Client.Lims.Data.PipeAndOutdec { public partial class FrmOutdecSampleSend : FrmBase { public FrmOutdecSampleSend() { InitializeComponent(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); publicUltraGridBase1.Ug.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框 publicUltraGridBase2.Ug.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False; } private void FrmOutdecSampleSend_Load(object sender, EventArgs e) { InitColumns(); } private void InitColumns() { string[] arrColumnsBase = new string[] { "CHK", "FLAG", "FLAG_DESC", "CHECK_NO", "CONTROL_NO", "SAMPLE_NAME", "STEEL_GRADE_NO", "TOTAL_LARGE_SAMPLE_SIZE", "LARGE_SAMPLE_COUNT", "HEAT_NO", "TOTAL_SAMPLE_NO", "OTHER_DESC", "LARGE_SAMPLE_STATE", "CHECK_TYPE", "CHECK_BASE", "SURPLUS", "SURPLUS_STATE", "PROMISE_FINISH_TIME", "CHECK_PRICE", "REPORT_TYPE", "GET_REPORT_WAY", "CONSIGN_DEPT", "CONSIGN_ADDRESS", "POSTCODE", "PHONE", "FAX", "CHECK_DEPT", "CHECK_ADDRESS", "CONSIGN_NAME", "CONSIGN_TIME", "JC_RECEIVE_NAME", "JC_RECEIVE_TIME", "CONSIGNDEPT_SEND_NAME", "CONSIGNDEPT_SEND_TIME", "JG_RECEIVE_NAME", "JG_RECEIVE_NAME", "SAMPLE_REMARK", "IS_JG", "IS_JG_DESC" }; string[] arrCaptionBase = new string[] { "选择", "状态", "状态", "检验编号", "受控编号", "样品名称", "钢号/钢级", "规格", "数量(个数)", "炉号", "样品编号", "其他说明", "样品状态", "检验类别", "检验依据", "余样处理方式", "余样情况", "检验完成时间约定", "检验费用", "报告类型", "取报告方式", "委托方全称", "通信地址", "邮编", "电话", "传真", "主检单位", "地址", "委托方授权人签字", "委托时间", "检验单位接受人", "接受日期", "送样人", "送样时间", "加工接样人", "加工接样时间", "样品备注", "是否加工", "是否加工" }; publicUltraGridBase1.InitColumns(arrColumnsBase, arrCaptionBase); publicUltraGridBase1.setColumnShowOrHidden(new string[] { "FLAG", "FLAG_DESC", "CONSIGNDEPT_SEND_NAME", "CONSIGNDEPT_SEND_TIME", "JG_RECEIVE_NAME", "JG_RECEIVE_NAME", "IS_JG" }, false);//隐藏列 publicUltraGridBase1.setOtherColumnReadOnly(new string[] { "CHK" });//可编辑列 publicUltraGridBase2.InitColumns(arrColumnsBase, arrCaptionBase); publicUltraGridBase2.setColumnShowOrHidden(new string[] { "FLAG", "IS_JG" }, false); publicUltraGridBase2.setOtherColumnReadOnly(new string[] { "CHK" });//可编辑列 } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { //查询、确认、退出 switch (ToolbarKey) { case "Query": if (ultraTabControl1.SelectedTab.Index == 0) { QueryCheckConsignBase(publicUltraGridBase1, "0"); } else if (ultraTabControl1.SelectedTab.Index == 1) { QueryCheckConsignBase(publicUltraGridBase2, "12"); } break; case "Send": UpdateCheckConsignBase(); break; case "Cancel": CancelUpdateCheckConsignBase(); break; case "Print": if (ultraTabControl1.SelectedTab.Index == 0) { RepLimsOutdecJGCheckTaskOrder(publicUltraGridBase1); } else if (ultraTabControl1.SelectedTab.Index == 1) { RepLimsOutdecJGCheckTaskOrder(publicUltraGridBase2); } break; case "Close": if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes) { this.Close(); } break; } } //查询检验委托基本信息 private void QueryCheckConsignBase(PublicUltraGridBase publicUltraGridBase, string strFlag) { publicUltraGridBase.QueryCheckConsignBase("outdec.PublicOutdecBase", outdecQueryBase1.GetQueryInfo(strFlag), this.ob); } #region 未下发 //void outdecUltraGridBase1_PublicUltraGridBaseActive(object sender, EventArgs e) //{ // QueryCheckConsignJGDetail(outdecUltraGridBase1.Ur, "2"); //} //确认来样,更新检验委托加工信息2015-08-03修改为一个检验编号确认 private void UpdateCheckConsignBase() { try { if (publicUltraGridBase1.Ug == null || publicUltraGridBase1.Ug.Rows.Count == 0) { return; } if (ultraTabControl1.SelectedTab.Index != 0) { MessageUtil.ShowTips("只有选择了未确认页才能进行来样确认操作!"); return; } publicUltraGridBase1.Ug.UpdateData(); DataRow[] arrBase = publicUltraGridBase1.DataTable.Select("CHK = 'True' AND FLAG = '0'"); if (arrBase == null || arrBase.Length == 0) { MessageUtil.ShowTips("请勾选状态为未下发的检验信息!"); return; } if (MessageUtil.ShowYesNoAndQuestion("是否确认样品下发?") == DialogResult.Yes) { string user = UserInfo.GetUserName(); string strDate = DateTime.Now.ToString(); publicUltraGridBase1.UpdateCheckConsignBase("outdec.FrmOutdecSampleSend", this.ob, arrBase, "1", user, strDate, "0", ""); QueryCheckConsignBase(publicUltraGridBase1, "0"); QueryCheckConsignBase(publicUltraGridBase2, "12"); MessageUtil.ShowTips("样品下发成功!"); } } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } #endregion #region 已确认任务单 //void outdecUltraGridBase2_PublicUltraGridBaseActive(object sender, EventArgs e) //{ // QueryCheckConsignJGDetail(outdecUltraGridBase2.Ur, "4"); // //赋值给全局变量 //} private void CancelUpdateCheckConsignBase() { try { if (publicUltraGridBase2.Ug == null || publicUltraGridBase2.Ug.Rows.Count == 0) { return; } if (ultraTabControl1.SelectedTab.Index != 1) { MessageUtil.ShowTips("只有选择了已下发页才能进行来样确认操作!"); return; } publicUltraGridBase2.Ug.UpdateData(); DataRow[] arrBase = publicUltraGridBase2.DataTable.Select("CHK = 'True' AND FLAG = '1'"); if (arrBase == null || arrBase.Length == 0) { MessageUtil.ShowTips("请勾选至少一条状态为检测中心已下发的检验信息!"); return; } //if (MessageUtil.ShowYesNoAndQuestion("是否取消下发?") == DialogResult.Yes) //{ string user = UserInfo.GetUserName(); string strDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); WinCancelSampleComfirm pc = new WinCancelSampleComfirm(); pc.ShowDialog(); if (pc.DialogResult != DialogResult.OK) { return; } string strSample_Remark = pc.StrRemark; strSample_Remark = this.Text + "取消下发由于" + strSample_Remark + "(" + user + " " + strDate + ")"; publicUltraGridBase2.UpdateCheckConsignBase("outdec.FrmOutdecSampleSend", this.ob, arrBase, "0", "", "", "1", strSample_Remark); QueryCheckConsignBase(publicUltraGridBase2, "12"); QueryCheckConsignBase(publicUltraGridBase1, "0"); MessageUtil.ShowTips("取消下发成功!"); //} } catch (Exception e) { MessageUtil.ShowWarning(e.Message); } } #endregion private void RepLimsOutdecJGCheckTaskOrder(PublicUltraGridBase publicUltraGridBase) { try { this.Cursor = Cursors.WaitCursor; UltraGridRow ugr = publicUltraGridBase.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=RepLimsOutdecJGCheckTaskOrder.cpt&bypagesize=false" + "&CHECK_NO=" + strCHECK_NO; //} //else //{ strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepLimsOutdecJGCheckTaskOrder.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; } } } }