using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Judge.Commons; using Core.StlMes.Client.Judge.Controls; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using Infragistics.Win.UltraWinTabControl; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Windows.Forms; namespace Core.StlMes.Client.Judge.Forms { public partial class RolledPhyPassApplyFrm : FrmBase { private QcmPhyPassApplyCtrl _phyPassApplyCtrl; private Dal _d; private QcmZgChemPhyCtrl _zgChemPhyCtrl; private QcmBcPassFlowCtrl _bcPassFlowCtrl; public RolledPhyPassApplyFrm() { InitializeComponent(); IsLoadUserView = true; } public override void ToolBar_Click(object sender, string ToolbarKey) { base.ToolBar_Click(sender, ToolbarKey); switch (ToolbarKey) { case "Query": Query(); break; case "Audite": Audite(); break; case "FoldQuery": FoldQuery(); break; case "Export": GridHelper.ulGridToExcel(_phyPassApplyCtrl.UltraGrid1, "放行信息"); break; } } protected override void OnLoad(EventArgs e) { base.OnLoad(e); if (_zgChemPhyCtrl == null) return; _zgChemPhyCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; //_zgChemPhyCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; //foreach (var tab in _zgChemPhyCtrl.UltraTabControl2.Tabs) //{ // if (tab.Key == "002001007010") // { // QcmJhyElementsCtrl jhyElementsCtrl = (QcmJhyElementsCtrl)((SplitContainer)tab.TabPage.Controls[0]).Panel2.Controls[0]; // jhyElementsCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; // } // else if (tab.Key == "002001007020" || tab.Key == "002001007013" || tab.Key == "002001007015" || tab.Key == "002001007014" // || tab.Key == "002001007009") // { // QcmJhyPhyResultCtrl jhyPhyResultCtrl = (QcmJhyPhyResultCtrl)((SplitContainer)tab.TabPage.Controls[0]).Panel2.Controls[0]; // jhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; // } //} } private string processCode = ""; private string passType = ""; private void SteelMakingPassApplyFrm_Load(object sender, EventArgs e) { processCode = CustomInfo; _d = new Dal(ob); _phyPassApplyCtrl = new QcmPhyPassApplyCtrl(splitContainer2.Panel1, ob, this.UserInfo.GetDeptid()); _phyPassApplyCtrl.UltraGrid1.AfterRowActivate += zgPassApplyCtrl_AfterRowActivate; _zgChemPhyCtrl = new QcmZgChemPhyCtrl(ultraExpandableGroupBoxPanel2, ob, false, "phy", processCode); labelComboBox1.ComboBox.Value = "2"; labelComboBox1.Checked = true; _bcPassFlowCtrl = new QcmBcPassFlowCtrl(ultraTabPageControl7, ob); _bcPassFlowCtrl.flag = "1"; if (passType == "Quality") { ClsBaseInfo.FillComBaseInfo(labelComboBox1.ComboBox, "4075", ob, false); //判定结果只显示内控合格和不合格。 40740101内控合格 40740102内控不合格 DataTable dt = (DataTable)labelComboBox1.ComboBox.DataSource; DataRow dr = dt.NewRow(); dr["BASECODE"] = "2"; dr["BASENAME"] = "未处置"; dt.Rows.InsertAt(dr, 0); dt.AcceptChanges(); dt.DefaultView.RowFilter = "BASECODE <> '407501'"; ClsBaseInfo.SetComboItemHeight(labelComboBox1.ComboBox); } labelComboBox1.SelecteValue = "2"; labelDateTimePicker6.Value = DateTime.Now.Date.AddDays(-3); labelDateTimePicker5.Value = DateTime.Now.Date.AddDays(1).AddSeconds(-1); } private void Audite() { var chkRows = _phyPassApplyCtrl.UltraGrid1.Rows.Where(a => a.GetValue("chk") == "True"); if (chkRows.Count() == 0) { MessageUtil.ShowWarning("没有需要审核的记录!"); return; } string passApplyNo = ""; List parms = new List(); foreach (var row in chkRows) { DataRow drPassApply = _d.GetRowByXmlId("JdgQcmBcPassApplyDAL.queryPhyPassApplyNo", row.GetValue("passApplyNo")); DataRow drCrtAuditStep = _d.GetRowByXmlId("JdgQcmBcPassFlow.getPhyAuditStep", row.GetValue("passApplyNo")); DataRow drMaxAuditStep = _d.GetRowByXmlId("JdgQcmBcPassFlow.getPhyMaxAuditStep", row.GetValue("passApplyNo")); DataRow drCheckApply = _d.GetRowByXmlId("JdgQcmBcPassApplyDAL.QueryPhyDetailByPassNo", row.GetValue("passApplyNo")); if (drCheckApply == null) { MessageUtil.ShowWarning("未找到该对应的理化信息,无法操作!", _phyPassApplyCtrl.UltraGrid1, row); return; } if (drPassApply["validflag"].ToString() == "0") { MessageUtil.ShowWarning("该放行申请记录已被删除,无法操作!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (int.Parse(row.GetValue("auditStep")) < int.Parse(drCrtAuditStep["auditStep"].ToString()) - 1) { MessageUtil.ShowWarning("第" + (int.Parse(drCrtAuditStep["auditStep"].ToString()) - 1) + "步骤审核完毕,不能修改第" + row.GetValue("auditStep") + "步骤审核结果!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (int.Parse(row.GetValue("auditStep")) == int.Parse(drCrtAuditStep["auditStep"].ToString()) - 1 && drCrtAuditStep["auditResult"].ToString() != "") { MessageUtil.ShowWarning("第" + drCrtAuditStep["auditStep"].ToString() + "步骤审核完毕,不能修改第" + row.GetValue("auditStep") + "步骤审核结果!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (int.Parse(row.GetValue("auditStep")) > int.Parse(drCrtAuditStep["auditStep"].ToString())) { MessageUtil.ShowWarning("第" + drCrtAuditStep["auditStep"].ToString() + "步骤审核未完成,不能提前操作第" + row.GetValue("auditStep") + "步骤审核!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if ( drCheckApply["validflag"].ToString() != "1") { MessageUtil.ShowWarning("此炉号已撤销理化,不能修改审核结果!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drCheckApply != null && (drCheckApply["nkResult"].ToString() == "1" && drCheckApply["jfResult"].ToString() == "1")) { MessageUtil.ShowWarning("此炉号已判定合格,不能修改审核结果!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if ( drPassApply["auditResult"].ToString() == "1") { MessageUtil.ShowWarning("此炉号已放行通过,不能修改审核结果!", _phyPassApplyCtrl.UltraGrid1, row); return; } passApplyNo = row.GetValue("passApplyNo"); string[] parm = new string[] { row.GetValue("passApplyNo"), row.GetValue("auditStep") }; parms.Add(parm); } PopupAudite popupAudit = new PopupAudite("审核", passType, true); popupAudit.CmbAuditType.Caption = "处置方式"; if (passType == "Quality") { ClsBaseInfo.FillComBaseInfo(popupAudit.CmbAuditType.ComboBox, "4075", ob, true); ((DataTable)popupAudit.CmbAuditType.ComboBox.DataSource).DefaultView.RowFilter = "BASECODE <> '407501' OR BASECODE IS NULL"; } string auditeResult = ""; string memo = ""; if (popupAudit.ShowDialog() != System.Windows.Forms.DialogResult.OK) { return; } else { memo = popupAudit.TxtAudit.Text.Trim(); auditeResult = popupAudit.CmbAuditType.ComboBox.Value.ToString2(); } var ccp = _d.Set("com.steering.pss.judge.Bll.BllRolledTubeColligatePassApply.Audite", parms, UserInfo.GetUserID(), UserInfo.GetUserName(), auditeResult, memo); if (ccp.ReturnInfo != "") { MessageUtil.ShowError(ccp.ReturnInfo); return; } else { MessageUtil.ShowTips("操作成功!"); } Relocate(passApplyNo); } private void Audite2() { var chkRows = _phyPassApplyCtrl.UltraGrid1.Rows.Where(a => a.GetValue("chk") == "True"); if (chkRows.Count() == 0) { MessageUtil.ShowWarning("没有需要审核的记录!"); return; } string passApplyNo = ""; List passApplyNos = new List(); foreach (var row in chkRows) { if (passApplyNos.Contains(row.GetValue("passApplyNo"))) continue; DataRow drPassApply = _d.GetRowByXmlId("QcmGpPassApplyDAL.queryByPassApplyNo", row.GetValue("passApplyNo")); DataRow drjudgeApply = _d.GetRowByXmlId("QcmGpJugdeApplyDAL.queryGpApplyByJudgeStoveNo", row.GetValue("jugdeApplyCode"), row.GetValue("jugdeApplySqe"), row.GetValue("judgeStoveNo")); if (drPassApply["validflag"].ToString() == "0") { MessageUtil.ShowWarning("该放行申请记录已被删除,无法操作!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drPassApply["auditResult"].ToString() == "") { MessageUtil.ShowWarning("没有进行一级审核,不能操作二级审核!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drPassApply["auditResult"].ToString() == "0") { MessageUtil.ShowWarning("一级审核不通过,不能操作二级审核!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drPassApply["type"].ToString() == "0" && drPassApply["judgeResultCode"].ToString() != "40740704") { MessageUtil.ShowWarning("只能审核综合判定结果不合格的炉号!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drjudgeApply == null || drjudgeApply["validflag"].ToString() != "20") { MessageUtil.ShowWarning("此炉号已撤销判定,不能审核!", _phyPassApplyCtrl.UltraGrid1, row); return; } else if (drPassApply["type"].ToString() == "1" && drPassApply["auditResult2"].ToString() != "") { MessageUtil.ShowWarning("已有二级审核结果,不能重复操作!", _phyPassApplyCtrl.UltraGrid1, row); return; } passApplyNo = row.GetValue("passApplyNo"); passApplyNos.Add(row.GetValue("passApplyNo")); } PopupAudite popupAudit = new PopupAudite("审核", passType, true); popupAudit.CmbAuditType.Caption = "处置方式"; if (CustomInfo.StartsWith("Quality")) { ClsBaseInfo.FillComBaseInfo(popupAudit.CmbAuditType.ComboBox, "4075", ob, false); ((DataTable)popupAudit.CmbAuditType.ComboBox.DataSource).DefaultView.RowFilter = "BASECODE <> '407501'"; } string auditeResult = ""; string memo = ""; if (popupAudit.ShowDialog() != System.Windows.Forms.DialogResult.OK) { return; } else { memo = popupAudit.TxtAudit.Text.Trim(); auditeResult = popupAudit.CmbAuditType.ComboBox.Value.ToString2(); } var ccp = _d.Set("com.steering.pss.judge.Bll.BllSteelMakingPassApply.Audite2", passApplyNos, UserInfo.GetUserName(), auditeResult, memo); if (ccp.ReturnInfo != "") { MessageUtil.ShowError(ccp.ReturnInfo); return; } else { MessageUtil.ShowTips("操作成功!"); } Relocate(passApplyNo); } private void labelDateTimePicker4_CheckBox_CheckedChanged(object sender, EventArgs e) { labelDateTimePicker5.DateTimeEnabled = labelDateTimePicker6.Checked; } private void Relocate(string passApplyNo) { Query(); var row = _phyPassApplyCtrl.UltraGrid1.Rows.Where(a => a.GetValue("passApplyNo") == passApplyNo).FirstOrDefault(); if (row != null) { row.Activate(); } } public void Query() { try { this.Cursor = Cursors.WaitCursor; _zgChemPhyCtrl.ClearData(true); //_zgJudgeApplyDtlCtrl.Clear(); //_bcPassFlowCtrl.Clear(); string batchNo = labelTextBox5.Checked ? labelTextBox5.Text.Trim() : ""; string checkNo = labelTextBox6.Checked ? labelTextBox6.Text.Trim() : ""; string auditState = labelComboBox1.Checked ? labelComboBox1.SelecteValue.ToString2() : ""; string timeB = labelDateTimePicker6.Checked ? labelDateTimePicker6.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; string timeE = labelDateTimePicker6.Checked ? labelDateTimePicker5.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; _phyPassApplyCtrl.AuditeQuery(checkNo, batchNo, timeB, timeE, passType, auditState, "1", processCode); } finally { this.Cursor = Cursors.Default; } } private string _ordLnPk = ""; void zgPassApplyCtrl_AfterRowActivate(object sender, EventArgs e) { if (_phyPassApplyCtrl.UltraGrid1.ActiveRow == null) return; try { this.Cursor = Cursors.WaitCursor; var groupRow = _phyPassApplyCtrl.UltraGrid1.ActiveRow; DataTable dtConsign = _d.GetTableByXmlId("JdgQcmZcCheckconsign.queryAllByCheckNo", groupRow.GetValue("checkNo")); DataRow drPlnSaleOrd = _d.GetRowByXmlId("JdgPlnSaleOrd.getOrdLnPkByDlyPk", dtConsign.Rows[0]["ordLnDlyPk"].ToString()); if (drPlnSaleOrd == null) return; string ordLnPk = drPlnSaleOrd["ordLnPk"].ToString(); _ordLnPk = ordLnPk; _zgChemPhyCtrl.Query(_zgChemPhyCtrl.GetParm(dtConsign, null, null, "", true)); _bcPassFlowCtrl.Query(groupRow.GetValue("passApplyNo")); } finally { this.Cursor = Cursors.Default; } } private void ultraTabControl2_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { try { this.Cursor = Cursors.WaitCursor; if (_phyPassApplyCtrl == null || _phyPassApplyCtrl.UltraGrid1 == null || _phyPassApplyCtrl.UltraGrid1.ActiveRow == null) return; var groupRow = _phyPassApplyCtrl.UltraGrid1.ActiveRow; DataTable consign = _d.GetTableByXmlId("JdgQcmZcCheckconsign.queryAllByCheckNo", groupRow.GetValue("checkNo")); string craftSource = consign.Rows[0]["craftSource"].ToString(); _zgChemPhyCtrl.Query(_zgChemPhyCtrl.GetParm(consign, null, null, "", true)); } finally { this.Cursor = Cursors.Default; } } private void labelTextBox6_TextBox_KeyDown(object sender, KeyEventArgs e) { if (e.KeyData == Keys.Enter) { Query(); } } private void ultraExpandableGroupBox2_ExpandedStateChanged(object sender, EventArgs e) { if (!ultraExpandableGroupBox2.Expanded) { ultraExpandableGroupBox2.Dock = DockStyle.Bottom; splitContainer2.Panel1.Controls.Add(ultraExpandableGroupBox2); ultraExpandableGroupBox2.BringToFront(); splitContainer2.Panel2Collapsed = true; } else { ultraExpandableGroupBox2.Dock = DockStyle.Fill; splitContainer2.Panel2.Controls.Add(ultraExpandableGroupBox2); splitContainer2.Panel2Collapsed = false; } } private void FoldQuery() { if (!this.toolMenu.Toolbars[0].Tools.Exists("FoldQuery")) return; panel5.Visible = !panel5.Visible; if (panel5.Visible) { this.toolMenu.Toolbars[0].Tools["FoldQuery"].SharedProps.Caption = "折叠查询区域"; //this.splitContainer2.SplitterDistance += 47; } else { this.toolMenu.Toolbars[0].Tools["FoldQuery"].SharedProps.Caption = "展开查询区域"; //this.splitContainer2.SplitterDistance -= 47; } } private void RolledTubePassApplyFrm_Shown(object sender, EventArgs e) { FoldQuery(); } } }