diff --git a/202403-北科大-金恒余坯、余材替代及堆冷详细接口.docx b/202403-北科大-金恒余坯、余材替代及堆冷详细接口.docx index e116213..d8520aa 100644 --- a/202403-北科大-金恒余坯、余材替代及堆冷详细接口.docx +++ b/202403-北科大-金恒余坯、余材替代及堆冷详细接口.docx @@ -61,6 +61,30 @@ MES BKDMES000 BKDMES005 2022.10.17新增 +取样 并样 非船板 +北科大 +MES +BKDMES000 +BKDMESMP +2024.05.18 +取样 并号 船板 +北科大 +MES +BKDMES000 +BKDMESMP01 +2024.05.18 +取样 并号关系 船板 +北科大 +MES +BKDMES000 +BKDMESMP02 +2024.05.18 +取样 反馈 +MES +北科大 +MESBKD000 +MESBKDMP01 +2024.05.18 余材替代处理结果 MES 北科大 @@ -86,6 +110,47 @@ MESBKD010 MESBKD011 +取样接口 +并样接口 非船板 (北科大-->MES接收) +电文定义:DATA 前10位记录FORMID +主要内容: + FORMID:10位 ,BKDMESMP 固定 + 业务ID号 NUMBER(12) 流水号,需要在应答中带回 + 钢板号:VARCHAR2(14) + 试样号:VARCHAR2(14) + +并样接口 船板 (北科大-->MES接收) +电文定义:DATA 前10位记录FORMID +主要内容: + FORMID:10位 ,BKDMESMP01 固定 + 业务ID号 NUMBER(12) 流水号,需要在应答中带回 + 钢板号:VARCHAR2(14) + 产品代码:VARCHAR2(2) + 实际标记:VARCHAR2(1) + 位置:VARCHAR2(1) + 长度:VARCHAR2(10) + 试样号:VARCHAR2(14) 注:倒数第二位(13位)是9 +并样 船板 关系 (北科大-->MES接收) +电文定义:DATA 前10位记录FORMID +主要内容: + FORMID:10位 ,BKDMESMP01 固定 + 业务ID号 NUMBER(12) 流水号,需要在应答中带回 + 钢板号:VARCHAR2(14) + 产品代码:VARCHAR2(2) + 实际标记:VARCHAR2(1) + 位置:VARCHAR2(1) + 长度:VARCHAR2(10) + 试样号:VARCHAR2(14) +并样 反馈 (MES-->北科大接收) +电文定义:DATA 前10位记录FORMID +主要内容: + FORMID:VARCHAR2(10),MESBKD011 固定 + 业务ID号 NUMBER(12) 流水号,需要在应答中带回 + 式样号: VARCHAR2(14) + 处理结果标识:VARCHAR2(1)(S-成功,F-失败) + 处理说明:VARCHAR2(200) + + 余材替代请求:XAC直接替代或退判替代(北科大-->ERP接收) 替代请求:替代系统直接发给ERP系统 替代结果:ERP通过内部接口发MES(XAA替代结果或退判结果),MES根据情况进行炼钢缓冲区退料、余材替代等处理。 diff --git a/余坯替代——中板/SlabHandle/.vs/SlabHandle/v17/.suo b/余坯替代——中板/SlabHandle/.vs/SlabHandle/v17/.suo index 4b1e41c..5e6df85 100644 Binary files a/余坯替代——中板/SlabHandle/.vs/SlabHandle/v17/.suo and b/余坯替代——中板/SlabHandle/.vs/SlabHandle/v17/.suo differ diff --git a/余坯替代——中板/SlabHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs b/余坯替代——中板/SlabHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs index e887d50..b6724db 100644 --- a/余坯替代——中板/SlabHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs +++ b/余坯替代——中板/SlabHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs @@ -79,6 +79,8 @@ namespace SlabHandle [Persistent("ZZ_PLT_DESP"), DisplayName("轧制工厂简称")] public string ZZ_PLT_DESP { get; set; } - + //分类 + [Persistent("CLASS_FL"), DisplayName("分类")] + public string CLASS_FL { get; set; } } } diff --git a/余坯替代——中板/SlabHandle/SlabHandle/SlabControler.cs b/余坯替代——中板/SlabHandle/SlabHandle/SlabControler.cs index 87dd8b1..df37406 100644 --- a/余坯替代——中板/SlabHandle/SlabHandle/SlabControler.cs +++ b/余坯替代——中板/SlabHandle/SlabHandle/SlabControler.cs @@ -7166,11 +7166,18 @@ namespace SlabHandle && p.THK_MIN <= TPF.Order.ORD_THK && p.THK_MAX >= TPF.Order.ORD_THK).Count() > 0) { + //同一个分组 int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD && p.STDSPEC == TPF.Order.STDSPEC && p.ZZ_PLT == "C3" && p.THK_MIN <= TPF.Order.ORD_THK - && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + && p.THK_MAX >= TPF.Order.ORD_THK + && p.CLASS_FL.Contains(glCpNiscoChmcSl.Where(e => e.STLGRD == TSCopy.STLGRD + && e.STDSPEC == TPF.Order.STDSPEC + && e.ZZ_PLT == "C3" + && e.THK_MIN <= TPF.Order.ORD_THK + && e.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().CLASS_FL) + ).FirstOrDefault().STL_SEQ; TSS.SORT = intSort; //替代工艺 if (ChkDiffStdl(TSCopy, TPF.Order)) @@ -8748,11 +8755,25 @@ namespace SlabHandle && p.THK_MIN <= TPF.Order.ORD_THK && p.THK_MAX >= TPF.Order.ORD_THK).Count() > 0) { + //int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD + // && p.STDSPEC == TPF.Order.STDSPEC + // && p.ZZ_PLT == "C3" + // && p.THK_MIN <= TPF.Order.ORD_THK + // && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + //同一个分组 int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD && p.STDSPEC == TPF.Order.STDSPEC && p.ZZ_PLT == "C3" && p.THK_MIN <= TPF.Order.ORD_THK - && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + && p.THK_MAX >= TPF.Order.ORD_THK + && p.CLASS_FL.Contains(glCpNiscoChmcSl.Where(e => e.STLGRD == TSCopy.STLGRD + && e.STDSPEC == TPF.Order.STDSPEC + && e.ZZ_PLT == "C3" + && e.THK_MIN <= TPF.Order.ORD_THK + && e.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().CLASS_FL) + ).FirstOrDefault().STL_SEQ; + + TSS.SORT = intSort; //替代工艺 if (ChkDiffStdl(TSCopy, TPF.Order)) @@ -9835,11 +9856,23 @@ namespace SlabHandle && p.THK_MIN <= TPF.Order.ORD_THK && p.THK_MAX >= TPF.Order.ORD_THK).Count() > 0) { + //int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD + // && p.STDSPEC == TPF.Order.STDSPEC + // && p.ZZ_PLT == "C3" + // && p.THK_MIN <= TPF.Order.ORD_THK + // && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + //同一个分组 int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD && p.STDSPEC == TPF.Order.STDSPEC && p.ZZ_PLT == "C3" && p.THK_MIN <= TPF.Order.ORD_THK - && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + && p.THK_MAX >= TPF.Order.ORD_THK + && p.CLASS_FL.Contains(glCpNiscoChmcSl.Where(e => e.STLGRD == TSCopy.STLGRD + && e.STDSPEC == TPF.Order.STDSPEC + && e.ZZ_PLT == "C3" + && e.THK_MIN <= TPF.Order.ORD_THK + && e.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().CLASS_FL) + ).FirstOrDefault().STL_SEQ; TSS.SORT = intSort; //替代工艺 if (ChkDiffStdl(TSCopy, TPF.Order)) @@ -11019,11 +11052,23 @@ namespace SlabHandle && p.THK_MIN <= TPF.Order.ORD_THK && p.THK_MAX >= TPF.Order.ORD_THK).Count() > 0) { + //int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD + // && p.STDSPEC == TPF.Order.STDSPEC + // && p.ZZ_PLT == "C3" + // && p.THK_MIN <= TPF.Order.ORD_THK + // && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + //同一个分组 int intSort = glCpNiscoChmcSl.Where(p => p.STLGRD == TSCopy.STLGRD && p.STDSPEC == TPF.Order.STDSPEC && p.ZZ_PLT == "C3" && p.THK_MIN <= TPF.Order.ORD_THK - && p.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().STL_SEQ; + && p.THK_MAX >= TPF.Order.ORD_THK + && p.CLASS_FL.Contains(glCpNiscoChmcSl.Where(e => e.STLGRD == TSCopy.STLGRD + && e.STDSPEC == TPF.Order.STDSPEC + && e.ZZ_PLT == "C3" + && e.THK_MIN <= TPF.Order.ORD_THK + && e.THK_MAX >= TPF.Order.ORD_THK).FirstOrDefault().CLASS_FL) + ).FirstOrDefault().STL_SEQ; TSS.SORT = intSort; //替代工艺 if (ChkDiffStdl(TSCopy, TPF.Order)) @@ -14955,6 +15000,25 @@ namespace SlabHandle return false; } + //获取分类 + string strClass = glCpNiscoChmcSl.Where(p => p.STLGRD == tSlab.STLGRD + && p.STDSPEC == strSTD1 + && p.ZZ_PLT == "C3" + && p.THK_MIN <= decThk + && p.THK_MAX >= decThk).FirstOrDefault().CLASS_FL; + + //一坯多标准要在同一个分类中 + if (glCpNiscoChmcSl.Where(p => p.STLGRD == tSlab.STLGRD + && p.STDSPEC == strSTD2 + && p.ZZ_PLT == "C3" + && p.THK_MIN <= decThk + && p.THK_MAX >= decThk + && p.CLASS_FL.Contains(strClass)).Count()<0) + { + return false; + } + + return true; } diff --git a/余坯替代——中板/SlabHandle/SlabHandle/SlabService.cs b/余坯替代——中板/SlabHandle/SlabHandle/SlabService.cs index 4d7c98b..6d30f58 100644 --- a/余坯替代——中板/SlabHandle/SlabHandle/SlabService.cs +++ b/余坯替代——中板/SlabHandle/SlabHandle/SlabService.cs @@ -1048,7 +1048,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——中板/SlabHandle/SlabHandle/SlabServiceTest.cs b/余坯替代——中板/SlabHandle/SlabHandle/SlabServiceTest.cs index 171747b..b1de437 100644 --- a/余坯替代——中板/SlabHandle/SlabHandle/SlabServiceTest.cs +++ b/余坯替代——中板/SlabHandle/SlabHandle/SlabServiceTest.cs @@ -1067,7 +1067,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.exe b/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.exe index d2656b4..a9a2ec0 100644 Binary files a/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.exe and b/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.exe differ diff --git a/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.pdb b/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.pdb index c17b638..461ed2c 100644 Binary files a/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.pdb and b/余坯替代——中板/SlabHandle/SlabHandle/bin/Debug/SlabHandle.pdb differ diff --git a/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.exe b/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.exe index d2656b4..a9a2ec0 100644 Binary files a/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.exe and b/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.exe differ diff --git a/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.pdb b/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.pdb index c17b638..461ed2c 100644 Binary files a/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.pdb and b/余坯替代——中板/SlabHandle/SlabHandle/obj/Debug/SlabHandle.pdb differ diff --git a/余坯替代——宽板/SlabWidThkHandle/.vs/SlabHandle/v17/.suo b/余坯替代——宽板/SlabWidThkHandle/.vs/SlabHandle/v17/.suo index 42012d9..6590623 100644 Binary files a/余坯替代——宽板/SlabWidThkHandle/.vs/SlabHandle/v17/.suo and b/余坯替代——宽板/SlabWidThkHandle/.vs/SlabHandle/v17/.suo differ diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs index e887d50..b6724db 100644 --- a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs +++ b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs @@ -79,6 +79,8 @@ namespace SlabHandle [Persistent("ZZ_PLT_DESP"), DisplayName("轧制工厂简称")] public string ZZ_PLT_DESP { get; set; } - + //分类 + [Persistent("CLASS_FL"), DisplayName("分类")] + public string CLASS_FL { get; set; } } } diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkControler.cs b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkControler.cs index 8e3e6a3..0ffa910 100644 --- a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkControler.cs +++ b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkControler.cs @@ -4330,18 +4330,24 @@ namespace SlabHandle { flag = true; } - if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).Count() > 0) + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).Count() > 0) { - int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ; + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).FirstOrDefault().CLASS_FL; + } + if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL ).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL== strCLASS_FL).Count() > 0) + { + int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; foreach (TB_PLATE_FIC tpf in tpg.CRU_PIEs) { - ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; + ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; } - if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") + if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") { flag = true; } - if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) + if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) { flag = true; } @@ -4528,6 +4534,13 @@ namespace SlabHandle && glt.THK + ConverDataToDecimal(0.6) >= lt.THK && tpf2.ORD_LEN >= tpf1.ORD_LEN - 2000&& tpf2.ORD_LEN<=tpf1.ORD_LEN) { + //获取分类 + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).Count() > 0) + { + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).FirstOrDefault().CLASS_FL; + } bool flag = false; if ( @@ -4536,20 +4549,20 @@ namespace SlabHandle { flag = true; } - if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).Count() > 0) + if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) { - int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ; + int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; foreach (TB_PLATE_FIC tpf in tpg.CRU_PIEs) { - ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; + ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; } - if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") + if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") { flag = true; } - if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) + if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) { flag = true; } @@ -4682,6 +4695,13 @@ namespace SlabHandle glt.THK - ConverDataToDecimal(0.6) <= lt.THK && glt.THK + ConverDataToDecimal(0.6) >= lt.THK) { + //获取分类 + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).Count() > 0) + { + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == glt.STDSPEC).FirstOrDefault().CLASS_FL; + } bool flag = false; if ((tpg.CRU_PIEs.Where(p => p.STLGRD != tSlab.STLGRD).Count() == 0 && lt.STLGRD == tSlab.STLGRD) || @@ -4689,18 +4709,18 @@ namespace SlabHandle { flag = true; } - if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).Count() > 0) + if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) { - int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ; + int ints = cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; foreach (TB_PLATE_FIC tpf in tpg.CRU_PIEs) { - ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; + ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; } - if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") + if (ints == cP_NISCOs.Where(q => q.STDSPEC == lt.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ && lt.ChkDiffStdl == "1") { flag = true; } - if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) + if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) { flag = true; } @@ -6234,48 +6254,44 @@ namespace SlabHandle //if (tpg.GRP_ID >= 10000) //{ - // if (tpg.CRU_PIEs_ACT.GroupBy(p => p.Order.STLGRD).Count() == 1 && tpg.CRU_PIEs_ACT.FirstOrDefault().STLGRD == iSlab.STLGRD) - //{ - // tpg.ChkDiffStdl = "1"; - // } - //else - //{ + // if (tpg.CRU_PIEs_ACT.GroupBy(p => p.Order.STLGRD).Count() == 1 && tpg.CRU_PIEs_ACT.FirstOrDefault().STLGRD == iSlab.STLGRD) + //{ + // tpg.ChkDiffStdl = "1"; + // } + //else + //{ - if (tpg.CRU_PIEs_ACT.GroupBy(p => p.Order.STDSPEC).Count() == 1 && ChkDiffStdl(iSlab, tpg.CRU_PIEs_ACT[0].Order)) + if (tpg.CRU_PIEs_ACT.GroupBy(p => p.Order.STDSPEC).Count() == 1 && ChkDiffStdl(iSlab, tpg.CRU_PIEs_ACT[0].Order)) + { + tpg.ChkDiffStdl = "1"; + } + else + { + IList cP_NISCOs = glCpNiscoChmcSl.Where(p => p.ZZ_PLT == "C2" + && p.STLGRD == iSlab.STLGRD + && p.THK_MIN < tpg.THK + && p.THK_MAX >= tpg.THK).ToList(); + if (tpg.CRU_PIEs_ACT.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() == 0).Count() > 0) + { + tpg.ChkDiffStdl = "0"; + } + else + { + TB_PLATE_FIC tpf = tpg.CRU_PIEs_ACT.OrderBy(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ).FirstOrDefault(); + int STL_SEQ = cP_NISCOs.Where(q => q.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; + if (tpg.CRU_PIEs_ACT.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == STL_SEQ && ChkDiffStdl(iSlab, p.Order)).Count() > 0) { tpg.ChkDiffStdl = "1"; } else { - IList cP_NISCOs = glCpNiscoChmcSl.Where(p => p.ZZ_PLT == "C2" - && p.STLGRD == iSlab.STLGRD - && p.THK_MIN < tpg.THK - && p.THK_MAX >= tpg.THK).ToList(); - if (tpg.CRU_PIEs_ACT.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() == 0).Count() > 0) - { - tpg.ChkDiffStdl = "0"; - } - else - { - TB_PLATE_FIC tpf = tpg.CRU_PIEs_ACT.OrderBy(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ).FirstOrDefault(); - int STL_SEQ = cP_NISCOs.Where(q => q.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; - if (tpg.CRU_PIEs_ACT.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == STL_SEQ && ChkDiffStdl(iSlab, p.Order)).Count() > 0) - { - tpg.ChkDiffStdl = "1"; - } - else - { - tpg.ChkDiffStdl = "0"; - } - } + tpg.ChkDiffStdl = "0"; } - // } + } + } + // } //} - - - - decimal YIELD_WGT = 0; if (glYIElD_CONTROL.Where(p => p.STLGRD == tpg.STLGRD && p.PLT == "C2").Count() > 0) { diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService - 复制.cs b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService - 复制.cs index 18c2f26..b2d2f18 100644 --- a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService - 复制.cs +++ b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService - 复制.cs @@ -966,7 +966,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService.cs b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService.cs index 2909d5a..bbf5497 100644 --- a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService.cs +++ b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/SlabWidThkService.cs @@ -999,7 +999,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.exe b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.exe index 276ed6e..48e18bb 100644 Binary files a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.exe and b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.exe differ diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.pdb b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.pdb index 417cd40..49362c1 100644 Binary files a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.pdb and b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/bin/Debug/SlabHandle.pdb differ diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.exe b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.exe index 276ed6e..48e18bb 100644 Binary files a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.exe and b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.exe differ diff --git a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.pdb b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.pdb index 417cd40..49362c1 100644 Binary files a/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.pdb and b/余坯替代——宽板/SlabWidThkHandle/SlabHandle/obj/Debug/SlabHandle.pdb differ diff --git a/余坯替代——板卷/SlabCoilHandle/.vs/SlabHandle/v17/.suo b/余坯替代——板卷/SlabCoilHandle/.vs/SlabHandle/v17/.suo index 791e3f7..1ee88d5 100644 Binary files a/余坯替代——板卷/SlabCoilHandle/.vs/SlabHandle/v17/.suo and b/余坯替代——板卷/SlabCoilHandle/.vs/SlabHandle/v17/.suo differ diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs b/余坯替代——板卷/SlabCoilHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs index e887d50..a62b43a 100644 --- a/余坯替代——板卷/SlabCoilHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs +++ b/余坯替代——板卷/SlabCoilHandle/SlabHandle/Enity/CP_NISCO_CHMC_SL.cs @@ -80,5 +80,8 @@ namespace SlabHandle public string ZZ_PLT_DESP { get; set; } + //分类 + [Persistent("CLASS_FL"), DisplayName("分类")] + public string CLASS_FL { get; set; } } } diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilControler.cs b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilControler.cs index 9adb9fe..9d09ebf 100644 --- a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilControler.cs +++ b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilControler.cs @@ -1713,18 +1713,24 @@ namespace SlabHandle { flag = true; } - if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).Count() > 0) + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp.STDSPEC).Count() > 0) { - int ints = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).FirstOrDefault().STL_SEQ; + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp.STDSPEC).FirstOrDefault().CLASS_FL; + } + if (tpg.CRU_PIEs.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) + { + int ints = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; foreach (TB_PLATE_FIC tpf in tpg.CRU_PIEs) { - ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC).FirstOrDefault().STL_SEQ; + ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.Order.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; } - if (ints == cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).FirstOrDefault().STL_SEQ && iTbPlateGrp_S.ChkDiffStdl == "1") + if (ints == cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ && iTbPlateGrp_S.ChkDiffStdl == "1") { flag = true; } - if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) + if (tpg.CRU_PIEs.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.Order.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.Order)).Count() > 0) { flag = true; } @@ -1866,18 +1872,24 @@ namespace SlabHandle { flag = true; } - if (tB_PLATE_GRP_THKGRP.THK_GRP.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.STDSPEC).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).Count() > 0) + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp.STDSPEC).Count() > 0) + { + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp.STDSPEC).FirstOrDefault().CLASS_FL; + } + if (tB_PLATE_GRP_THKGRP.THK_GRP.All(p => cP_NISCOs.Where(q => q.STDSPEC == p.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) && cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).Count() > 0) { - int ints = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).FirstOrDefault().STL_SEQ; + int ints = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; foreach (TB_PLATE_GRP tpf in tB_PLATE_GRP_THKGRP.THK_GRP) { - ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.STDSPEC).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.STDSPEC).FirstOrDefault().STL_SEQ; + ints = cP_NISCOs.Where(p => p.STDSPEC == tpf.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ > ints ? ints : cP_NISCOs.Where(p => p.STDSPEC == tpf.STDSPEC && p.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ; } - if (ints == cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC).FirstOrDefault().STL_SEQ && iTbPlateGrp_S.ChkDiffStdl == "1") + if (ints == cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_S.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ && iTbPlateGrp_S.ChkDiffStdl == "1") { flag = true; } - if (tB_PLATE_GRP_THKGRP.THK_GRP.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.STDSPEC).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.CRU_PIEs.FirstOrDefault().Order)).Count() > 0) + if (tB_PLATE_GRP_THKGRP.THK_GRP.Where(p => cP_NISCOs.Where(q => q.STDSPEC == p.STDSPEC && q.CLASS_FL == strCLASS_FL).FirstOrDefault().STL_SEQ == ints && ChkDiffStdl(tSlab, p.CRU_PIEs.FirstOrDefault().Order)).Count() > 0) { flag = true; } @@ -4567,7 +4579,14 @@ namespace SlabHandle { continue; } - if (iTbPlateGrp_F.STDSPEC != iTbPlateGrp_S.STDSPEC && cP_NISCOs.Where(p => p.STDSPEC == iTbPlateGrp_S.STDSPEC || p.STDSPEC == iTbPlateGrp_F.STDSPEC).Count() < 2) + //获取分类 + string strCLASS_FL = string.Empty; + if (cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_F.STDSPEC).Count() > 0) + { + strCLASS_FL = cP_NISCOs.Where(q => q.STDSPEC == iTbPlateGrp_F.STDSPEC).FirstOrDefault().CLASS_FL; + } + + if (iTbPlateGrp_F.STDSPEC != iTbPlateGrp_S.STDSPEC && cP_NISCOs.Where(p => p.STDSPEC == iTbPlateGrp_S.STDSPEC || p.STDSPEC == iTbPlateGrp_F.STDSPEC && (p.CLASS_FL==strCLASS_FL)).Count() < 2) { continue; } diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService - 复制.cs b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService - 复制.cs index b8025e5..225e8e6 100644 --- a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService - 复制.cs +++ b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService - 复制.cs @@ -944,7 +944,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService.cs b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService.cs index 187fd7e..bee8e35 100644 --- a/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService.cs +++ b/余坯替代——板卷/SlabCoilHandle/SlabHandle/SlabCoilService.cs @@ -961,7 +961,7 @@ namespace SlabHandle DataTable dtCheck = new DataTable(); IList ltCP_NISCO_CHMC_SL = new List(); - strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL"); + strSql.AppendLine("SELECT * FROM NISCO.CP_NISCO_CHMC_SL CNCS WHERE NVL( CNCS.CLASS_FL , ' ')<>' '"); try { diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.exe b/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.exe index 933fb30..15ec07e 100644 Binary files a/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.exe and b/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.exe differ diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.pdb b/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.pdb index a3247d7..9e2d9fd 100644 Binary files a/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.pdb and b/余坯替代——板卷/SlabCoilHandle/SlabHandle/bin/Debug/SlabHandle.pdb differ diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.exe b/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.exe index 933fb30..15ec07e 100644 Binary files a/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.exe and b/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.exe differ diff --git a/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.pdb b/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.pdb index a3247d7..9e2d9fd 100644 Binary files a/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.pdb and b/余坯替代——板卷/SlabCoilHandle/SlabHandle/obj/Debug/SlabHandle.pdb differ diff --git a/取样并样程序/SubResult/.vs/SubResult/v17/.suo b/取样并样程序/SubResult/.vs/SubResult/v17/.suo index 12ad3e0..83ea4a1 100644 Binary files a/取样并样程序/SubResult/.vs/SubResult/v17/.suo and b/取样并样程序/SubResult/.vs/SubResult/v17/.suo differ diff --git a/后端接口/ipd-server/.vs/iBkLinker-IPD/v17/.suo b/后端接口/ipd-server/.vs/iBkLinker-IPD/v17/.suo index 34ae6ab..76364e1 100644 Binary files a/后端接口/ipd-server/.vs/iBkLinker-IPD/v17/.suo and b/后端接口/ipd-server/.vs/iBkLinker-IPD/v17/.suo differ