using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.YdmStuffManage.Entity; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; 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.YdmStuffManage { public partial class FrmGpJudge : FrmBase { public FrmGpJudge() { InitializeComponent(); } private void FrmGpJudge_Load(object sender, EventArgs e) { EntityHelper.ShowGridCaption(ultraGrid1.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid3.DisplayLayout.Bands[0]); } /// /// 重写基类方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": if (!CheckQuery()) return; doQueryData(); break; case "ApplyJudge": applyJudge(); break; case "Query1": doQueryApply(); break; case "cancelGpData": cancelGpData(); break; case"Print": printJudge(); break; case "Export": GridHelper.ulGridToExcel(ultraGrid2, "管坯申请改判信息"); break; case "Close": close(); break; } } /// /// 打印 /// private void printJudge() { this.ultraGrid2.UpdateData(); UltraGridRow uRow = this.ultraGrid2.ActiveRow; if (uRow == null) { return; } string judgeId = uRow.Cells["JudgeId"].Text;//改判ID string strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepGpJudgeId.cpt&format=pdf&OUTSTOCK_DOC=" + judgeId; FrmExcel fre = new FrmExcel(this.ob, strurl); fre.AutoSize = true; fre.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fre.WindowState = FormWindowState.Maximized; fre.Show(); } /// /// 查询余材信息 /// private void doQueryData() { string stoveNo = ""; string judgeNo = ""; string gradeCode = ""; string dimter = ""; if (chkStoveNo.Checked && txtStoveNo.Text.Trim() != "") { stoveNo = this.txtStoveNo.Text.Trim(); } if (chkjudgeNo.Checked && txtjudgeNo.Text.Trim() != "") { judgeNo = this.txtjudgeNo.Text.Trim(); } if (chkGrade.Checked && txtGrade.Tag.ToString() != "") { gradeCode = txtGrade.Tag.ToString(); } if (chkDimter.Checked && txtDimter.Text.Trim() != "") { if (txtDimter.Text.Trim().Contains(".")) { int dex = txtDimter.Text.Trim().IndexOf("."); dimter = txtDimter.Text.Trim().Substring(0, dex); } else { dimter = txtDimter.Text.Trim(); } } ArrayList parmList = new ArrayList(); parmList.Add(stoveNo); parmList.Add(judgeNo); parmList.Add(gradeCode); parmList.Add(dimter); List listSource = EntityHelper.GetData( "Core.LgMes.Server.Stuffmanage.FrmMatGroupManage.doQueryMatData", new object[] { parmList,this.CustomInfo }, this.ob); MatGpMEntity3bindingSource.DataSource = listSource; } /// /// 查询申请改判信息 /// private void doQueryApply() { string stoveNo = ""; string judgeNo = ""; string gradeCode = ""; string dimter = ""; if (chkStoveNo.Checked && txtStoveNo.Text.Trim() != "") { stoveNo = this.txtStoveNo.Text.Trim(); } if (chkjudgeNo.Checked && txtjudgeNo.Text.Trim() != "") { judgeNo = this.txtjudgeNo.Text.Trim(); } if (chkGrade.Checked && txtGrade.Tag.ToString() != "") { gradeCode = txtGrade.Tag.ToString(); } if (chkDimter.Checked && txtDimter.Text.Trim() != "") { if (txtDimter.Text.Trim().Contains(".")) { int dex = txtDimter.Text.Trim().IndexOf("."); dimter = txtDimter.Text.Trim().Substring(0, dex); } else { dimter = txtDimter.Text.Trim(); } } ArrayList parmList = new ArrayList(); parmList.Add(stoveNo); parmList.Add(judgeNo); parmList.Add(gradeCode); parmList.Add(dimter); List listSource = EntityHelper.GetData( "Core.LgMes.Server.Stuffmanage.FrmGpJudge.doQueryApply", new object[] { parmList,this.CustomInfo }, this.ob); QcmGpJudgeChangeEntitybindingSource.DataSource = listSource; } /// /// 申请改判 /// private void applyJudge() { this.ultraGrid1.UpdateData(); UltraGridRow uRow = this.ultraGrid3.ActiveRow; UltraGridRow cicRow = this.ultraGrid4.ActiveRow; if (uRow == null || cicRow == null) { MessageUtil.ShowTips("改判物料无对应排产合同/钢种索引码,不能进行改判!"); return; } string gpJudgeNo = this.gpJudgeNo.Text.Trim(); if (gpJudgeNo == "") { MessageUtil.ShowTips("改判炉号不能为空!"); return; } IQueryable checkMagRow = this.ultraGrid1.Rows.AsQueryable().Where(" CHK = True"); if (checkMagRow.Count() == 0) { return; } ArrayList parmList = new ArrayList(); foreach(UltraGridRow row in checkMagRow) { MatGpMEntity3 matGpEntity = (MatGpMEntity3)row.ListObject; matGpEntity.ProPlanIdZg = uRow.Cells["ProPlanId"].Text; matGpEntity.GxPlanNoZg = uRow.Cells["GxPlanNo"].Text; matGpEntity.Cic = cicRow.Cells["CIC"].Text; string matGpTity = JSONFormat.Format(matGpEntity); if (matGpEntity.HangingFlag.Equals("1")) { MessageUtil.ShowTips("已生成实际炉计划,不能改判!"); return; } if (matGpEntity.InputMaterialNo.Equals("")) { MessageUtil.ShowTips("请选择改判后物料!"); return; } if (matGpEntity.CreateMemo.Equals("")) { MessageUtil.ShowTips("请填写申请改判原因!"); return; } parmList.Add(matGpTity); } int judgeNoGp = checkMagRow.Select(a => a.Cells["JudgeStoveNo"].Text).Distinct().Count(); if (judgeNoGp > 1) { MessageUtil.ShowTips("同一判定炉号才可做同一改判单!"); return; } int gpMaterialNo = checkMagRow.Select(a => a.Cells["InputMaterialNo"].Text).Distinct().Count(); if (gpMaterialNo > 1) { MessageUtil.ShowTips("同一判定炉号下改判物料需一致!"); return; } CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "Core.LgMes.Server.Stuffmanage.FrmGpJudge"; ccp.MethodName = "applyJudge"; ccp.ServerParams = new object[] { parmList, this.UserInfo.GetUserName(), gpJudgeNo }; ccp = ob.ExecuteNonQuery(ccp,CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("申请改判成功!")) { doQueryData(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } /// /// 撤销改判申请 /// private void cancelGpData() { UltraGridRow uRow = this.ultraGrid2.ActiveRow; if (uRow == null) { return; } QcmGpJudgeChangeEntity qcmGpJudgeTity = (QcmGpJudgeChangeEntity)uRow.ListObject; string qcmGpEntity = JSONFormat.Format(qcmGpJudgeTity); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "Core.LgMes.Server.Stuffmanage.FrmGpJudge"; ccp.MethodName = "cancelGpData"; ccp.ServerParams = new object[] { qcmGpEntity }; ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("撤销成功!")) { doQueryApply(); MessageUtil.ShowTips(ccp.ReturnInfo); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } private void close() { this.Close(); } /// /// 检查基础数据 /// /// private bool CheckQuery() { if (this.chkStoveNo.Checked && string.IsNullOrEmpty(this.txtStoveNo.Text.Trim())) { MessageBox.Show("请输入熔炼炉号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } if (this.chkjudgeNo.Checked && string.IsNullOrEmpty(this.txtjudgeNo.Text.Trim())) { MessageBox.Show("请输入判定炉号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } if (this.chkGrade.Checked && string.IsNullOrEmpty(this.txtGrade.Tag.ToString())) { MessageBox.Show("请输入钢种!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } if (this.chkDimter.Checked && string.IsNullOrEmpty(this.txtDimter.Text.Trim())) { MessageBox.Show("请输入直径!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return false; } return true; } private void chkStoveNo_CheckedChanged(object sender, EventArgs e) { this.txtStoveNo.Enabled = this.chkStoveNo.Checked; } private void chkjudgeNo_CheckedChanged(object sender, EventArgs e) { this.txtjudgeNo.Enabled = this.chkjudgeNo.Checked; } private void chkGrade_CheckedChanged(object sender, EventArgs e) { this.txtGrade.Enabled = this.chkGrade.Checked; } private void chkDimter_CheckedChanged(object sender, EventArgs e) { this.txtDimter.Enabled = this.chkDimter.Checked; } private void txtGrade_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { DataTable dt = ServerHelper.GetData("Core.LgMes.Server.Stuffmanage.FrmBaseInformation.doQueryGradeAll", new object[] { }, ob); dt.Columns["GRADENAME"].Caption = "钢种"; BaseInfoPopup baseInfo = new BaseInfoPopup(dt, "GRADENAME", "GRADECODE"); baseInfo.Shown += new EventHandler((a, b) => { var actRow = baseInfo.UltraGrid1.Rows.AsQueryable().Where( c => c.GetValue("GRADECODE") == this.txtGrade.Tag.ToString2()).FirstOrDefault(); if (actRow != null) actRow.Activate(); }); if (baseInfo.ShowDialog() == System.Windows.Forms.DialogResult.OK) { txtGrade.Tag = baseInfo.ChoicedRow.GetValue("GRADECODE"); txtGrade.Text = baseInfo.ChoicedRow.GetValue("GRADENAME"); } } private void txtDimter_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { DataTable dt = ServerHelper.GetData("Core.LgMes.Server.Stuffmanage.FrmBaseInformation.doQueryDimaterAll", new object[] { }, ob); dt.Columns["SPEC_NAME"].Caption = "直径"; BaseInfoPopup baseInfo = new BaseInfoPopup(dt, "SPEC_NAME", "SPEC_CODE"); baseInfo.Shown += new EventHandler((a, b) => { var actRow = baseInfo.UltraGrid1.Rows.AsQueryable().Where( c => c.GetValue("SPEC_NAME") == this.txtDimter.Tag.ToString2()).FirstOrDefault(); if (actRow != null) actRow.Activate(); }); if (baseInfo.ShowDialog() == System.Windows.Forms.DialogResult.OK) { txtDimter.Tag = baseInfo.ChoicedRow.GetValue("SPEC_NAME"); txtDimter.Text = baseInfo.ChoicedRow.GetValue("SPEC_NAME"); } } private void txtMateriaName_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { this.ultraGrid1.UpdateData(); DataTable dt = ServerHelper.GetData("Core.LgMes.Server.Stuffmanage.FrmBaseInformation.doQueryMaterial", new object[] { }, ob); dt.Columns["BASENAME"].Caption = "物料名称"; BaseInfoPopup baseInfo = new BaseInfoPopup(dt, "BASENAME", "BASECODE"); baseInfo.Shown += new EventHandler((a, b) => { var actRow = baseInfo.UltraGrid1.Rows.AsQueryable().Where( c => c.GetValue("BASECODE") == this.txtMateriaName.Tag.ToString2()).FirstOrDefault(); if (actRow != null) actRow.Activate(); }); if (baseInfo.ShowDialog() == System.Windows.Forms.DialogResult.OK) { //cmbLocationNo.Tag = baseInfo.ChoicedRow.GetValue("LOCATION_NO"); //cmbLocationNo.Text = baseInfo.ChoicedRow.GetValue("LOCATION_NAME"); this.ultraGrid1.ActiveCell.Value = baseInfo.ChoicedRow.GetValue("BASENAME"); this.ultraGrid1.ActiveCell.Row.Cells["InputMaterialNo"].Value = baseInfo.ChoicedRow.GetValue("BASECODE"); this.ultraGrid1.ActiveCell.Row.Cells["InputMaterialName"].Value = baseInfo.ChoicedRow.GetValue("BASENAME"); string[]a = this.ultraGrid1.ActiveRow.Cells["InputMaterialName"].Text.Split(','); string gradeName = a[1].ToString(); List listSource = EntityHelper.GetData( "Core.LgMes.Server.Stuffmanage.FrmGpJudge.doQueryPlanOrderNoZs", new object[] { gradeName }, this.ob); PlnOrderZgSEntitybindingSource.DataSource = listSource;; } } private void FrmGpJudge_Shown(object sender, EventArgs e) { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("Query1")) { toolMenu.Toolbars[0].Tools["Query1"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("cancelGpData")) { toolMenu.Toolbars[0].Tools["cancelGpData"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } } private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (ultraTabControl1.SelectedTab.Key == "0") { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("Query1")) { toolMenu.Toolbars[0].Tools["Query1"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("cancelGpData")) { toolMenu.Toolbars[0].Tools["cancelGpData"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("ApplyJudge")) { toolMenu.Toolbars[0].Tools["ApplyJudge"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.False; } } else if (ultraTabControl1.SelectedTab.Key == "1") { if (toolMenu == null) return; if (toolMenu.Toolbars[0].Tools.Exists("Query1")) { toolMenu.Toolbars[0].Tools["Query1"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("cancelGpData")) { toolMenu.Toolbars[0].Tools["cancelGpData"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Query")) { toolMenu.Toolbars[0].Tools["Query"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("ApplyJudge")) { toolMenu.Toolbars[0].Tools["ApplyJudge"].InstanceProps.Visible = DefaultableBoolean.False; } if (toolMenu.Toolbars[0].Tools.Exists("Print")) { toolMenu.Toolbars[0].Tools["Print"].InstanceProps.Visible = DefaultableBoolean.True; } if (toolMenu.Toolbars[0].Tools.Exists("Export")) { toolMenu.Toolbars[0].Tools["Export"].InstanceProps.Visible = DefaultableBoolean.True; } } } private void txtMemo_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { UltraTextEditor textEditor = (UltraTextEditor)sender; PopupTextBox popupText = new PopupTextBox(textEditor.Text, 500); if (popupText.ShowDialog() == System.Windows.Forms.DialogResult.OK) { textEditor.Text = popupText.TextInfo.Trim(); } this.ultraGrid1.ActiveCell.Value = textEditor.Text; this.ultraGrid1.ActiveRow.Update(); } private void txtStoveNo_KeyDown(object sender, KeyEventArgs e) { if (e.KeyValue == 13) { if (ultraTabControl1.SelectedTab.Key == "0") { doQueryData(); } else { doQueryApply(); } } } private void txtjudgeNo_KeyDown(object sender, KeyEventArgs e) { if (e.KeyValue == 13) { if (ultraTabControl1.SelectedTab.Key == "0") { doQueryData(); } else { doQueryApply(); } } } private void txtGrade_KeyDown(object sender, KeyEventArgs e) { if (e.KeyValue == 13) { if (ultraTabControl1.SelectedTab.Key == "0") { doQueryData(); } else { doQueryApply(); } } } private void txtDimter_KeyDown(object sender, KeyEventArgs e) { if (e.KeyValue == 13) { if (ultraTabControl1.SelectedTab.Key == "0") { doQueryData(); } else { doQueryApply(); } } } private void ultraGrid3_AfterRowActivate(object sender, EventArgs e) { UltraGridRow row = this.ultraGrid3.ActiveRow; if (row == null) { return; } string[] arr = (row.Cells["CicGroupGp"].Text + ',' + row.Cells["CicGroupLk"].Text).Split(','); DataTable ds = ServerHelper.GetData("Core.LgMes.Server.Stuffmanage.FrmGpJudge.doQueryCic", new object[] { arr }, ob); GridHelper.CopyDataToDatatable(ref ds, ref dataTable1, true); GridHelper.RefreshAndAutoSize(ultraGrid4); } } }