using Core.StlMes.Client.Judge.Commons; using Core.StlMes.Client.Judge.Models; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using Infragistics.Win.UltraWinTabControl; using System; using System.Collections.Generic; using System.Data; using System.Windows.Forms; namespace Core.StlMes.Client.Judge.Controls { public partial class QcmZcAllChemPhyCtrl : UserControl { private QcmZgJudgeApplyDtlCtrl _applyDtlCtrl; private QcmZcPassFlowCtrl _zcPassFlowCtrl; private QcmBcPassFlowCtrl _bcPassFlowCtrl; public QcmZgChemPhyCtrl ZgChemPhyLgCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyZgCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyDbkCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyRclCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyJgxCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyJgCtrl { get; set; } public QcmZgChemPhyCtrl ZgChemPhyCtrl { get; set; } private Dal _d; private UltraGrid _mainGrid = null; private string _frmFlag; public QcmZcAllChemPhyCtrl(Control container, OpeBase ob, UltraGrid mainGrid, string processCode, string frmFlag) { InitializeComponent(); _d = new Dal(ob); _mainGrid = mainGrid; _frmFlag = frmFlag; ZgChemPhyLgCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl1, ob, false, "zc", "A"); _applyDtlCtrl = new QcmZgJudgeApplyDtlCtrl(ultraTabPageControl6, ob); _zcPassFlowCtrl = new QcmZcPassFlowCtrl(ultraTabPageControl7, ob); _bcPassFlowCtrl = new QcmBcPassFlowCtrl(ultraTabPageControl7, ob); ZgChemPhyZgCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl2, ob, false, "zc", "D"); ZgChemPhyDbkCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl3, ob, false, "zc", "E"); ZgChemPhyRclCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl4, ob, false, "zc", "F"); ZgChemPhyJgxCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl8, ob, false, "zc", "G"); ZgChemPhyJgCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl9, ob, false, "zc", "H"); ZgChemPhyCtrl = new QcmZgChemPhyCtrl(ultraTabPageControl5, ob, false, "bc", processCode); container.Controls.Add(this); this.Dock = DockStyle.Fill; if (frmFlag != "zcPass" && frmFlag != "bcPass") { ultraTabControl2.Tabs["flow"].Visible = false; } if (_frmFlag == "bcJudge") { ZgChemPhyCtrl.BringToFront(); } if (_frmFlag == "zcPass") { _bcPassFlowCtrl.Visible = false; } else { _zcPassFlowCtrl.Visible = false; } } public void SetChemPhyResultError() { if (ZgChemPhyCtrl == null) return; 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; } } ZgChemPhyLgCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyLgCtrl.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; } } ZgChemPhyZgCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyZgCtrl.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; } } ZgChemPhyDbkCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyDbkCtrl.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; } } ZgChemPhyRclCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyRclCtrl.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; } } ZgChemPhyJgxCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyJgxCtrl.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; } } ZgChemPhyJgCtrl.JhyPhyResultCtrl.UltraGrid1.DisplayLayout.Override.SupportDataErrorInfo = SupportDataErrorInfo.RowsAndCells; foreach (var tab in ZgChemPhyJgCtrl.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 DataRow _sti = null; private Dictionary> _applyDic = new Dictionary>(); private DataRow _drZcApply = null; private string _ordLnPk = ""; public void UltraTabControl2_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { try { this.Cursor = Cursors.WaitCursor; if (_mainGrid == null || _mainGrid.ActiveRow == null) return; ClearChemPhyData(); var mainRow = _mainGrid.ActiveRow; _drZcApply = _d.GetRowByXmlId("QcmZgJugdeApplyDAL.QueryByBatchNo", mainRow.GetValue("jugdeApplyCode"), mainRow.GetValue("judgeStoveNo"), mainRow.GetValue("batchNo")); string ordLnPk = ""; if (_drZcApply["ordLnDlyPk"].ToString() != "") { ordLnPk = QcmZgChemPhyCtrl.getOrdLnPkByDlyPk(_drZcApply["ordLnDlyPk"].ToString(), _d); } DataRow drEndProcess = _d.GetRowByXmlId("JdgCraftOrdDesignMscPlPrc.getEndProcessByOrdLnPk", ordLnPk, _drZcApply["craftSeq"].ToString(), _drZcApply["indexSeq"].ToString()); if (_frmFlag == "bcJudge" || _frmFlag == "bcPass") { if (ordLnPk.StartsWith("BL") && drEndProcess["processCode"].ToString() == _drZcApply["processCode"].ToString()) { ZgChemPhyCtrl.Visible = false; ultraTabControl1.Visible = true; } else { ZgChemPhyCtrl.Visible = true; ultraTabControl1.Visible = false; } } else { ZgChemPhyCtrl.Visible = false; ultraTabControl1.Visible = true; } string applyCode = mainRow.GetValue("jugdeApplyCode"); string judgeStoveNo = mainRow.GetValue("judgeStoveNo"); string batchNo = mainRow.GetValue("batchNo"); string passApplyNo = mainRow.GetValue("passApplyNo"); switch (ultraTabControl2.ActiveTab.Key) { case "judge": if (_drZcApply["ordLnDlyPk"].ToString() == "") return; if (ZgChemPhyCtrl.Visible == true) { ZgChemPhyCtrl.Query(ZgChemPhyCtrl.GetParm(null, _drZcApply, _drZcApply, "", true)); } else { _ordLnPk = ordLnPk; _sti = _d.GetRowByXmlId("CraftOrdDesignMscPlSti.getPhyProcess", _ordLnPk, _drZcApply["craftSeq"].ToString(), _drZcApply["indexSeq"].ToString()); Dictionary tmpApplyDic = GetAllJudgeApply(_drZcApply["jugdeApplyCode"].ToString(), _drZcApply["judgeStoveNo"].ToString(), _drZcApply["batchNo"].ToString(), _drZcApply["processCode"].ToString(), _drZcApply["heatPlanNo"].ToString(), _sti["processCode"].ToString(), null, null, _d); _applyDic.Clear(); foreach (string key in tmpApplyDic.Keys) { List tmpApplys = new List(); tmpApplys.Add(tmpApplyDic[key]); _applyDic.Add(key, tmpApplys); } DataRow drWholeBacklog = _d.GetRowByXmlId("JdgCraftOrdDesignMscPl.getWholeBacklog", ordLnPk, _drZcApply["craftSeq"].ToString(), _drZcApply["indexSeq"].ToString()); if (drWholeBacklog == null) { return; } string whole = drWholeBacklog["wholeBacklog"].ToString(); ClearTabTag(); HiddenTab(whole, _applyDic); //短节 DataTable djBlStoveNo = _d.GetTableByXmlId("JdgPlnZyJgxMC.queryByHeatPlanNoNew", _drZcApply["heatPlanNo"].ToString()); //DataTable jgBlStoveNo = _d.GetTableByXmlId("JdgMchTwistinglyResult.getResultDInfoByBatchNoHeatPlanNo", // _drZcApply["judgeStoveNo"].ToString(), _drZcApply["batchNo"].ToString(), _drZcApply["heatPlanNo"].ToString()); if (djBlStoveNo.Rows.Count > 0) { foreach (DataRow drBlStoveNo in djBlStoveNo.Rows) { string blStoveNo = drBlStoveNo["judgeStoveNo"].ToString(); string blBatchNo = drBlStoveNo["batchNo"].ToString(); QueryBLApply(blStoveNo, blBatchNo); } } //if (jgBlStoveNo.Rows.Count > 0) //{ // foreach (DataRow drBlStoveNo in jgBlStoveNo.Rows) // { // string blStoveNo = drBlStoveNo["couplingStoveNo"].ToString(); // string blBatchNo = drBlStoveNo["lotNo"].ToString(); // QueryBLApply(blStoveNo, blBatchNo); // } //} SetTabTag(); //JudgeCraftParam zzbParam = null; //foreach (List apps in _applyDic.Values) //{ // foreach (DataRow app in apps) // { // if (app["zzbFlag"].ToString() == "1") // { // zzbParam = QcmZgChemPhyCtrl.GetCraftParam(app, _drZcApply, null, _d); // } // } //} QueryZgChemPhy(); } break; case "apply": _applyDtlCtrl.Query(applyCode, judgeStoveNo, batchNo); break; case "flow": if (_frmFlag == "zcPass") { _zcPassFlowCtrl.Query(passApplyNo); } else { _bcPassFlowCtrl.Query(passApplyNo); } break; } } finally { this.Cursor = Cursors.Default; } } private void QueryBLApply(string blStoveNo, string blBatchNo) { DataRow drBlApply = _d.GetRowByXmlId("QcmZgJugdeApplyDAL.QueryBLByBatchNo", blStoveNo, blBatchNo); if (drBlApply == null) return; string blOrdLnPk = ""; DataRow drPlnSaleOrd = _d.GetRowByXmlId("JdgPlnSaleOrd.getOrdLnPkByDlyPk", drBlApply["ordLnDlyPk"].ToString()); blOrdLnPk = drPlnSaleOrd["ordLnPk"].ToString(); DataRow drBlSti = _d.GetRowByXmlId("CraftOrdDesignMscPlSti.getPhyProcess", blOrdLnPk, drBlApply["craftSeq"].ToString(), drBlApply["indexSeq"].ToString()); DataRow blWholeBacklog = _d.GetRowByXmlId("JdgCraftOrdDesignMscPl.getWholeBacklog", blOrdLnPk, _drZcApply["craftSeq"].ToString(), _drZcApply["indexSeq"].ToString()); if (blWholeBacklog == null) return; string blWhole = blWholeBacklog["wholeBacklog"].ToString(); Dictionary blApplyDic = GetAllJudgeApply(drBlApply["jugdeApplyCode"].ToString(), drBlApply["judgeStoveNo"].ToString(), drBlApply["batchNo"].ToString(), drBlApply["processCode"].ToString(), drBlApply["heatPlanNo"].ToString(), drBlSti["processCode"].ToString(), null, null, _d); foreach (string key in blApplyDic.Keys) { if (_applyDic.ContainsKey(key)) { _applyDic[key].Add(blApplyDic[key]); } else { List tmpApplys = new List(); tmpApplys.Add(blApplyDic[key]); _applyDic.Add(key, tmpApplys); } } HiddenTab(blWhole, _applyDic); } private void ClearTabTag() { ultraTabControl1.Tabs["A"].Tag = null; ultraTabControl1.Tabs["D"].Tag = null; ultraTabControl1.Tabs["E"].Tag = null; ultraTabControl1.Tabs["F"].Tag = null; ultraTabControl1.Tabs["G"].Tag = null; ultraTabControl1.Tabs["H"].Tag = null; } private bool _isSetTab = false; public void SetTabTag() { try { _isSetTab = true; foreach (UltraTab tab in ultraTabControl1.Tabs) { if (tab.Tag == null) { tab.Visible = false; } else { tab.Visible = true; } } } finally { _isSetTab = false; } } private void HiddenTab(string whole, Dictionary> applyDic) { //if (whole != "H") //{ // ultraTabControl1.Tabs["A"].Tag = "1"; // ultraTabControl1.Tabs["D"].Tag = "1"; //} ultraTabControl1.Tabs["A"].Tag = "1"; if (whole.Contains("D") || applyDic.ContainsKey("D")) { ultraTabControl1.Tabs["D"].Tag = "1"; } if (whole.Contains("E") || applyDic.ContainsKey("E")) { ultraTabControl1.Tabs["E"].Tag = "1"; } if (whole.Contains("F") || applyDic.ContainsKey("F")) { ultraTabControl1.Tabs["F"].Tag = "1"; } if (whole.Contains("G") || applyDic.ContainsKey("G")) { ultraTabControl1.Tabs["G"].Tag = "1"; } if (whole.Contains("H") || applyDic.ContainsKey("H")) { ultraTabControl1.Tabs["H"].Tag = "1"; } } public void QueryZgChemPhy() { if (ultraTabControl1.ActiveTab == null) return; if (ZgChemPhyLgCtrl == null) return; if (_drZcApply == null) return; if (_mainGrid.ActiveRow == null) return; if (_applyDic.Count == 0) return; string passApplyNo = _mainGrid.GetActiveRowValue("passApplyNo"); string key = ultraTabControl1.ActiveTab.Key; switch (ultraTabControl1.ActiveTab.Key) { case "A": ZgChemPhyLgCtrl.ClearData(true); if (_applyDic.ContainsKey("D")) { ZgChemPhyLgCtrl.QueryLg(_applyDic["D"], _drZcApply, _sti["processCode"].ToString(), ""); } else { if (!_applyDic.ContainsKey(_drZcApply["processCode"].ToString())) return; ZgChemPhyLgCtrl.QueryLg(_applyDic[_drZcApply["processCode"].ToString()], _drZcApply, _sti["processCode"].ToString(), ""); } break; case "D": ZgChemPhyZgCtrl.ClearData(true); if (_applyDic.ContainsKey(key)) { ZgChemPhyZgCtrl.QueryZc(_applyDic[key], _drZcApply, ""); } break; case "E": ZgChemPhyDbkCtrl.ClearData(true); if (_applyDic.ContainsKey(key)) { ZgChemPhyDbkCtrl.QueryZc(_applyDic[key], _drZcApply, ""); } break; case "F": ZgChemPhyRclCtrl.ClearData(true); if (_applyDic.ContainsKey(key)) { ZgChemPhyRclCtrl.QueryZc(_applyDic[key], _drZcApply, ""); } break; case "G": ZgChemPhyJgxCtrl.ClearData(true); if (_applyDic.ContainsKey(key)) { ZgChemPhyJgxCtrl.QueryZc(_applyDic[key], _drZcApply, ""); } break; case "H": ZgChemPhyJgCtrl.ClearData(true); if (_applyDic.ContainsKey(key)) { ZgChemPhyJgCtrl.QueryZc(_applyDic[key], _drZcApply, ""); } break; } } public QcmZgChemPhyCtrl GetActiveChemPhyCtrl() { switch (ultraTabControl1.ActiveTab.Key) { case "A": return ZgChemPhyLgCtrl; case "D": return ZgChemPhyZgCtrl; case "E": return ZgChemPhyDbkCtrl; case "F": return ZgChemPhyRclCtrl; case "G": return ZgChemPhyJgxCtrl; case "H": return ZgChemPhyJgCtrl; default: return null; } } public void ClearChemPhyData() { ZgChemPhyLgCtrl.ClearData(true); ZgChemPhyZgCtrl.ClearData(true); ZgChemPhyDbkCtrl.ClearData(true); ZgChemPhyRclCtrl.ClearData(true); ZgChemPhyJgxCtrl.ClearData(true); ZgChemPhyJgCtrl.ClearData(true); ZgChemPhyCtrl.ClearData(true); _bcPassFlowCtrl.Clear(); _zcPassFlowCtrl.Clear(); } public void ClearChemPhyParms() { ZgChemPhyLgCtrl.ClearParms(); ZgChemPhyZgCtrl.ClearParms(); ZgChemPhyDbkCtrl.ClearParms(); ZgChemPhyRclCtrl.ClearParms(); ZgChemPhyJgxCtrl.ClearParms(); ZgChemPhyJgCtrl.ClearParms(); ZgChemPhyCtrl.ClearParms(); } private void UltraTabControl1_SelectedTabChanged(object sender, SelectedTabChangedEventArgs e) { try { if (_isSetTab) return; this.Cursor = Cursors.WaitCursor; ClearChemPhyParms(); QueryZgChemPhy(); } finally { this.Cursor = Cursors.Default; } } public static Dictionary GetAllJudgeApply(string judgeApplyCode, string judgeStoveNo, string batchNo, string processCode, string heatPlanNo, string phyProcess, Dictionary dic, JudgeCraftParam zzbCp, Dal d) { if (dic == null) { dic = new Dictionary(); } DataRow drApply = null; if (judgeApplyCode == "") { drApply = d.GetRowByXmlId("QcmZgJugdeApplyDAL.QueryByBatchNo2", judgeStoveNo, batchNo, processCode, heatPlanNo); } else { drApply = d.GetRowByXmlId("QcmZgJugdeApplyDAL.QueryByBatchNo", judgeApplyCode, judgeStoveNo, batchNo); } if (drApply != null) { if (zzbCp != null)//合同管转备料管 { drApply["ordLnDlyPk"] = zzbCp.OrdLnDlyPk; drApply["craftSeq"] = zzbCp.CraftSeq; drApply["indexSeq"] = zzbCp.MscPline; drApply["cic"] = zzbCp.Cic; DataRow stdMinPic = d.GetRowByXmlId("CraftOrdDesignStdPic.getNkMinPic", zzbCp.OrdLnPk, zzbCp.CraftSeq, zzbCp.MscPline, drApply["processCode"].ToString()); drApply["pic"] = stdMinPic["pic"].ToString(); } dic.Add(drApply["processCode"].ToString(), drApply); if (drApply["ordLnDlyPk"].ToString().StartsWith("ZZB")) { //DataRow drChemCnt = d.GetRowByXmlId("CraftOrdDesignStdCic.getChemCnt", ordLnPk, craftSeq, "", mscPline, processCode); //DataRow drPhyCnt = d.GetRowByXmlId("CraftOrdDesignStdPic.getPhyCnt", ordLnPk, craftSeq, processCode, "", mscPline); zzbCp = QcmZgChemPhyCtrl.GetCraftParam(drApply, null, d); } } if (drApply != null) { if ("6".Equals(drApply["isAllScrap"].ToString()) && !"".Equals(drApply["loadBatchNo"].ToString())) { return GetAllJudgeApply("", drApply["loadJudgeStoveNo"].ToString(), drApply["loadBatchNo"].ToString(), "H", getUpperPlanId(drApply["heatPlanNo"].ToString(), processCode, d), phyProcess, null, zzbCp, d); } } if (processCode.ToCharArray()[0] <= 'D') { return dic; } else { string loadJudgeStoveNo = ""; string loadBatchNo = ""; string upHeatPlanNo = ""; if (drApply == null) { loadJudgeStoveNo = judgeStoveNo; loadBatchNo = batchNo; upHeatPlanNo = heatPlanNo; } else { loadJudgeStoveNo = drApply["loadJudgeStoveNo"].ToString(); loadBatchNo = drApply["loadBatchNo"].ToString(); upHeatPlanNo = getUpperPlanId(drApply["heatPlanNo"].ToString(), processCode, d); } char cProcessCode = (char)(processCode.ToCharArray()[0] - 1); return GetAllJudgeApply("", loadJudgeStoveNo, loadBatchNo, cProcessCode.ToString(), upHeatPlanNo, phyProcess, dic, zzbCp, d); } } private static string getUpperPlanId(string heatPlanNo, string processCode, Dal d) { DataRow drUpper = null; if (processCode == "D") { drUpper = d.GetRowByXmlId("JdgPlnZyZgM.queryUpperByPk", heatPlanNo); } else if (processCode == "E") { drUpper = d.GetRowByXmlId("JdgPlnZyDbkM.queryUpperByPk", heatPlanNo); } else if (processCode == "F") { drUpper = d.GetRowByXmlId("JdgPlnZyRclM.queryUpperByPk", heatPlanNo); } else if (processCode == "G") { drUpper = d.GetRowByXmlId("JdgPlnZyJgxM.queryUpperByPk", heatPlanNo); } else if (processCode == "H") { drUpper = d.GetRowByXmlId("JdgPlnZyJgM.queryUpperByPk", heatPlanNo); } else { return heatPlanNo; } if (drUpper == null) return ""; if (drUpper["upperProcessCode"].ToString() == processCode) { return getUpperPlanId(drUpper["upperHeatplanId"].ToString(), processCode, d); } else { return drUpper["upperHeatplanId"].ToString(); } } } }