From e42b643cdd5f851a4d272f149218b7c47374c1d2 Mon Sep 17 00:00:00 2001 From: BKGY_MYT <1536233200@qq.com> Date: Fri, 21 Feb 2025 14:19:38 +0800 Subject: [PATCH] =?UTF-8?q?9=E8=A1=A8=20=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shopmanager/controller/SubController.java | 34 ++++++---- .../src/main/resources/mapper/SubMapper.xml | 64 +++++++++---------- 2 files changed, 55 insertions(+), 43 deletions(-) diff --git a/1024shop-manager/1024shop-manager/src/main/java/net/xdclass/shopmanager/controller/SubController.java b/1024shop-manager/1024shop-manager/src/main/java/net/xdclass/shopmanager/controller/SubController.java index 9197ba1..87488b3 100644 --- a/1024shop-manager/1024shop-manager/src/main/java/net/xdclass/shopmanager/controller/SubController.java +++ b/1024shop-manager/1024shop-manager/src/main/java/net/xdclass/shopmanager/controller/SubController.java @@ -880,7 +880,7 @@ public class SubController { logger.info("*************************化学成分订单号:{}-{}-{}", GrpOrd.getOrderNo(), intOrd, intRX); } if (plistQdToLineupResultCheDO.stream().anyMatch(p -> p.getOrderNo().equals(GrpOrd.getOrderNo()) && p.getCheType().equals("RX"))) { - ltLrc = plistQdToLineupResultCheDO.stream().filter(p -> p.getOrderNo().equals(SInfo.getOrderNo()) && p.getCheType().equals("RX")).collect(Collectors.toList()); + ltLrc = plistQdToLineupResultCheDO.stream().filter(p -> p.getOrderNo().equals(GrpOrd.getOrderNo()) && p.getCheType().equals("RX")).collect(Collectors.toList()); } //信息不存在返回 @@ -2097,7 +2097,7 @@ public class SubController { pmPdSlabDO.setVirtualSlabNo(ggcr.getVirtualSlabNo()); pmPdSlabDO.setSlabNo(ggcr.getSlabNo()); pmPdSlabDO.setMatDesignKind("S"); - pmPdSlabDO.setPdStatusHp("12"); + pmPdSlabDO.setPdStatusHp("18"); pmPdSlabDO.setPdResp("781"); // TODO 组板责任者 未赋值 操作人id pmPdSlabDO.setFormPlateMode("A1"); //TODO 组板方式 需要判断 pmPdSlabDO.setPickModeLenDir(BigDecimal.ZERO); //TODO 取板方式_长度方向 未赋值 @@ -2217,7 +2217,7 @@ public class SubController { pmPdSlabDO.setPreCleanSlabLen(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())); pmPdSlabDO.setPreCleanSlabMaxLen(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())); pmPdSlabDO.setPreCleanSlabMinLen(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())); - BigDecimal weight = SInfo.getSlabActThk().multiply(SInfo.getSlabActWid()).multiply(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())).multiply(BigDecimal.valueOf(7.85)); + BigDecimal weight = SInfo.getSlabActThk().multiply(SInfo.getSlabActWid()).multiply(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())).multiply(BigDecimal.valueOf(7.85)).divide(BigDecimal.valueOf(1000000000),3,RoundingMode.HALF_UP); pmPdSlabDO.setPreCleanSlabWt(weight); pmPdSlabDO.setPreCleanSlabMaxWt(weight); pmPdSlabDO.setPreCleanSlabMinWt(weight); @@ -2231,6 +2231,9 @@ public class SubController { pmPdSlabDO.setInfurSlabMaxWt(weight); pmPdSlabDO.setInfurSlabMinWt(weight); + pmPdSlabDO.setNeedSlabLen(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())); + pmPdSlabDO.setNeedSlabWt(weight); + pmPdSlabDO.setAddSlabFlag("1"); //TODO 暂时写死 pmPdSlabDO.setFixSlabLenFlag(0); pmPdSlabDO.setFixSlabLen(BigDecimal.valueOf(ggcr.getVirtualSlab_Len())); @@ -2297,6 +2300,9 @@ public class SubController { pmPdSlabDO.setTransFlag(BigDecimal.valueOf(0)); + pmPdSlabDO.setSlabCleanWtLossRateSt(BigDecimal.valueOf(0)); + pmPdSlabDO.setSlabCleanWtLossRateFr(BigDecimal.valueOf(0)); + pmPdSlabDO.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY pmPdSlabDO.setLastUpdatedBy(781L); pmPdSlabDO.setCreationDate(now); @@ -2424,8 +2430,8 @@ public class SubController { } else { pmSmallPltPosDO.setSmallPlateDivNo(SMALL_PLATE_DIV_NO[j]); } - pmSmallPltPosDO.setPickModeLenDir(0);//TODO 取板方式 长度方向 不知道怎么取暂时默认为0 - pmSmallPltPosDO.setPickModeWidDir(0);//TODO 取板方式 宽度方向 不知道怎么取暂时默认为0 + pmSmallPltPosDO.setPickModeLenDir(j+1);//TODO 取板方式 长度方向 列数累加 + pmSmallPltPosDO.setPickModeWidDir(1);//TODO 取板方式 宽度方向 第一行 pmSmallPltPosDO.setOrderThick(gpo.getThk()); pmSmallPltPosDO.setOrderWidth(BigDecimal.valueOf(gpo.getWid())); pmSmallPltPosDO.setOrderLen(gpo.getLen()); //TODO 长度不确定用实际长度还是长度 @@ -2436,6 +2442,7 @@ public class SubController { pmSmallPltPosDO.setSmallPlateWidth(BigDecimal.valueOf(gpo.getWid())); pmSmallPltPosDO.setSmallPlateLen(gpo.getLen()); //TODO 长度不确定用实际长度还是长度 + pmSmallPltPosDO.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY pmSmallPltPosDO.setLastUpdatedBy(781L); pmSmallPltPosDO.setCreationDate(now); @@ -2469,7 +2476,7 @@ public class SubController { pmCmdSlabDO.setPreCleanSlabLen(pmPdSlabDO.getPreCleanSlabLen()); pmCmdSlabDO.setPreCleanSlabMaxLen(pmPdSlabDO.getPreCleanSlabMaxLen()); pmCmdSlabDO.setPreCleanSlabMinLen(pmPdSlabDO.getPreCleanSlabMinLen()); - pmCmdSlabDO.setPreCleanSlabWt(pmPdSlabDO.getPreCleanSlabWt().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP)); + pmCmdSlabDO.setPreCleanSlabWt(pmPdSlabDO.getPreCleanSlabWt()); pmCmdSlabDO.setPreCleanSlabMaxWt(pmPdSlabDO.getPreCleanSlabMaxWt()); pmCmdSlabDO.setPreCleanSlabMinWt(pmPdSlabDO.getPreCleanSlabMinWt()); Long slabPdQty = plistPmPdSlabInfoDO.stream() @@ -2482,18 +2489,20 @@ public class SubController { pmCmdSlabDO.setMoldThick(resultPmPdSlabInfoDO.get().getMatActThick().intValue()); pmCmdSlabDO.setMoldWid(resultPmPdSlabInfoDO.get().getMatActWidth().intValue()); } - + pmCmdSlabDO.setSlabCleanWtLossRateSt(pmPdSlabDO.getSlabCleanWtLossRateSt()); + pmCmdSlabDO.setSlabCleanWtLossRateFr(pmPdSlabDO.getSlabCleanWtLossRateFr()); + pmCmdSlabDO.setAddSlabFlag(pmPdSlabDO.getAddSlabFlag()); pmCmdSlabDO.setInfurSlabThick(pmPdSlabDO.getInfurSlabThick()); pmCmdSlabDO.setInfurSlabWid(pmPdSlabDO.getInfurSlabWid()); pmCmdSlabDO.setInfurSlabLen(pmPdSlabDO.getInfurSlabLen()); pmCmdSlabDO.setInfurSlabMaxLen(pmPdSlabDO.getInfurSlabMaxLen()); pmCmdSlabDO.setInfurSlabMinLen(pmPdSlabDO.getInfurSlabMinLen()); - pmCmdSlabDO.setInfurSlabWt(pmPdSlabDO.getInfurSlabWt().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP)); + pmCmdSlabDO.setInfurSlabWt(pmPdSlabDO.getInfurSlabWt()); pmCmdSlabDO.setInfurSlabMaxWt(pmPdSlabDO.getInfurSlabMaxWt()); pmCmdSlabDO.setInfurSlabMinWt(pmPdSlabDO.getInfurSlabLen()); pmCmdSlabDO.setNeedSlabLen(pmPdSlabDO.getInfurSlabLen()); - pmCmdSlabDO.setNeedSlabWt(pmPdSlabDO.getInfurSlabWt().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP)); + pmCmdSlabDO.setNeedSlabWt(pmPdSlabDO.getInfurSlabWt()); pmCmdSlabDO.setFixSlabLenFlag(String.valueOf(pmPdSlabDO.getFixSlabLenFlag())); pmCmdSlabDO.setFixSlabLen(pmPdSlabDO.getFixSlabLen().intValue()); pmCmdSlabDO.setSlabPlaceCode(pmPdSlabDO.getSlabPlaceCode()); @@ -2577,7 +2586,7 @@ public class SubController { pmCmdLargePltDO.setOrder1Thick(pmPdSlabDO.getOrderThickAxis()); pmCmdLargePltDO.setCombinePlateWidth(pmPdSlabDO.getCombinePlateWidth()); pmCmdLargePltDO.setCombinePlateLen(pmPdSlabDO.getCombinePlateLen()); - pmCmdLargePltDO.setRollWtHp(pmPdSlabDO.getRollWtHp().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP)); + pmCmdLargePltDO.setRollWtHp(pmPdSlabDO.getRollWtHp()); pmCmdLargePltDO.setNormYield(pmPdSlabDO.getNormYield()); pmCmdLargePltDO.setCommandYield(pmPdSlabDO.getCommandYield()); pmCmdLargePltDO.setRollYield(pmPdSlabDO.getRollYield()); @@ -2635,6 +2644,7 @@ public class SubController { .findFirst(); pmCmdContDO.setWholeBacklog(pmContMscTechDOItem.get().getWholeBacklog()); pmCmdContDO.setStNo(pmContMscTechDOItem.get().getStNo()); + pmCmdContDO.setRollMode(pmContMscTechDOItem.get().getRollMode()); Optional pmPdSlabDOItem = pmPdSlabDOList.stream() .filter(item -> pmPdContSumDO.getPdMatNo().equals(item.getVirtualSlabNo())) @@ -2714,6 +2724,8 @@ public class SubController { pmCmdContDO.setUrgOrderFlag(pmPdSlabDOItem.get().getUrgOrderFlag()); pmCmdContDO.setUltCode(pmPdSlabDOItem.get().getUltCode());//TODO 遍根据合同号从质量模块MES合同主档QD_TO_PO_ORDER读取超声探伤标准1、超声探伤标2、超声探伤标3、超声探伤标4、超声探伤标5,去重后所有数据用‘-’拼接成一条记录 pmCmdContDO.setMscLineNo(mscLineNo); + pmCmdContDO.setAxisFlag(0);//TODO 轴合同标记,暂时默认0 + pmCmdContDO.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY pmCmdContDO.setLastUpdatedBy(781L); pmCmdContDO.setCreationDate(now); @@ -2740,7 +2752,7 @@ public class SubController { pmCmdSmallPltDO.setSmallPlateThick(pmSmallPltPosDO.getSmallPlateThick()); pmCmdSmallPltDO.setSmallPlateWidth(pmSmallPltPosDO.getSmallPlateWidth()); pmCmdSmallPltDO.setSmallPlateLen(BigDecimal.valueOf(pmSmallPltPosDO.getSmallPlateLen())); - pmCmdSmallPltDO.setSampleLenGive(BigDecimal.valueOf(pmProContProdAttrDO.getSampleLenGive())); +// pmCmdSmallPltDO.setSampleLenGive(BigDecimal.valueOf(pmProContProdAttrDO.getSampleLenGive())); //TODO 对比数据手动组板为空 pmCmdSmallPltDO.setMscLineNo(mscLineNo); pmCmdSmallPltDO.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY pmCmdSmallPltDO.setLastUpdatedBy(781L); diff --git a/1024shop-manager/1024shop-manager/src/main/resources/mapper/SubMapper.xml b/1024shop-manager/1024shop-manager/src/main/resources/mapper/SubMapper.xml index b13282a..dc98a87 100644 --- a/1024shop-manager/1024shop-manager/src/main/resources/mapper/SubMapper.xml +++ b/1024shop-manager/1024shop-manager/src/main/resources/mapper/SubMapper.xml @@ -32,16 +32,16 @@ -- AND MS.SLAB_NO = 'C50015130500' -- AND MS.SLAB_NO = 'C50015130100' AND MS.SLAB_NO = #{slabNo} --- AND MS.SLAB_STATUS ='29' --在制余材 --- AND SUBSTR(MS.SLAB_NO,1,1) NOT IN ('F','E') --复合/叠轧坯,不能组板 --- AND NVL(MS.PONO,' ') != ' ' --- AND NVL(MS.ST_NO,' ') != ' ' --- AND NVL(MS.SLAB_ACT_THK,0.001) > 0.001 --- AND NVL(MS.SLAB_ACT_WID,0.001) > 0.001 --- AND NVL(MS.SLAB_ACT_LEN,0.001) > 0.001 --- AND (NVL(MS.SLAB_ACT_WGT,0.001) > 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) > 0.001) --- AND SUBSTR(NVL(MS.NEXT_WHOLE_BACKLOG_CODE,'123'),2,1) !='B' --全程工序代码第二位不能是B,不嫩是火切工序 TODO NEXT_WHOLE_BACKLOG_CODE字段值为null 用nvl处理 --- AND NVL(MS.COMPLEX_DECIDE_CODE,' ') !='4'--废品 TODO COMPLEX_DECIDE_CODE字段值为null 用nvl处理 + AND MS.SLAB_STATUS ='29' --在制余材 + AND SUBSTR(MS.SLAB_NO,1,1) NOT IN ('F','E') --复合/叠轧坯,不能组板 + AND NVL(MS.PONO,' ') != ' ' + AND NVL(MS.ST_NO,' ') != ' ' + AND NVL(MS.SLAB_ACT_THK,0.001) > 0.001 + AND NVL(MS.SLAB_ACT_WID,0.001) > 0.001 + AND NVL(MS.SLAB_ACT_LEN,0.001) > 0.001 + AND (NVL(MS.SLAB_ACT_WGT,0.001) > 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) > 0.001) + AND SUBSTR(NVL(MS.NEXT_WHOLE_BACKLOG_CODE,'123'),2,1) !='B' --全程工序代码第二位不能是B,不嫩是火切工序 TODO NEXT_WHOLE_BACKLOG_CODE字段值为null 用nvl处理 + AND NVL(MS.COMPLEX_DECIDE_CODE,' ') !='4'--废品 TODO COMPLEX_DECIDE_CODE字段值为null 用nvl处理 -- AND ((SELECT SUM(NVL(P1.NEED_SLAB_WT,0)) FROM PM_PD_SLAB P1 WHERE P1.SLAB_NO = MS.SLAB_NO)= MS.SLAB_ACT_WGT -- OR (SELECT SUM(NVl(P1.NEED_SLAB_WT,0)) FROM PM_PD_SLAB P1 WHERE P1.SLAB_NO = MS.SLAB_NO) = 0)--重量相同 TODO 此条件加上只能查到一条数据 @@ -58,16 +58,16 @@ -- AND MS.SLAB_NO = 'C50015130500' -- AND MS.SLAB_NO = 'C50015130100' AND MS.SLAB_NO = #{slabNo} --- AND MS.SLAB_STATUS ='29' --在制余材 --- AND SUBSTR(MS.SLAB_NO,1,1) NOT IN ('F','E') --复合/叠轧坯,不能组板 --- AND NVL(MS.PONO,' ') != ' ' --- AND NVL(MS.ST_NO,' ') != ' ' --- AND NVL(MS.SLAB_ACT_THK,0.001) > 0.001 --- AND NVL(MS.SLAB_ACT_WID,0.001) > 0.001 --- AND NVL(MS.SLAB_ACT_LEN,0.001) > 0.001 --- AND (NVL(MS.SLAB_ACT_WGT,0.001) > 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) > 0.001) --- AND SUBSTR(NVL(MS.NEXT_WHOLE_BACKLOG_CODE,'123'),2,1) !='B' --全程工序代码第二位不能是B,不嫩是火切工序 TODO NEXT_WHOLE_BACKLOG_CODE字段值为null 用nvl处理 --- AND NVL(MS.COMPLEX_DECIDE_CODE,' ') !='4'--废品 TODO COMPLEX_DECIDE_CODE字段值为null 用nvl处理 + AND MS.SLAB_STATUS ='29' --在制余材 + AND SUBSTR(MS.SLAB_NO,1,1) NOT IN ('F','E') --复合/叠轧坯,不能组板 + AND NVL(MS.PONO,' ') != ' ' + AND NVL(MS.ST_NO,' ') != ' ' + AND NVL(MS.SLAB_ACT_THK,0.001) > 0.001 + AND NVL(MS.SLAB_ACT_WID,0.001) > 0.001 + AND NVL(MS.SLAB_ACT_LEN,0.001) > 0.001 + AND (NVL(MS.SLAB_ACT_WGT,0.001) > 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) > 0.001) + AND SUBSTR(NVL(MS.NEXT_WHOLE_BACKLOG_CODE,'123'),2,1) !='B' --全程工序代码第二位不能是B,不嫩是火切工序 TODO NEXT_WHOLE_BACKLOG_CODE字段值为null 用nvl处理 + AND NVL(MS.COMPLEX_DECIDE_CODE,' ') !='4'--废品 TODO COMPLEX_DECIDE_CODE字段值为null 用nvl处理 -- AND ((SELECT SUM(NVL(P1.NEED_SLAB_WT,0)) FROM PM_PD_SLAB P1 WHERE P1.SLAB_NO = MS.SLAB_NO)= MS.SLAB_ACT_WGT -- OR (SELECT SUM(NVl(P1.NEED_SLAB_WT,0)) FROM PM_PD_SLAB P1 WHERE P1.SLAB_NO = MS.SLAB_NO) = 0)--重量相同 TODO 此条件加上只能查到一条数据 @@ -83,12 +83,12 @@ -- AND cm.MSC_LINE_NO = pcmt.MSC_LINE_NO --PM_PRO_CONT没有MSC_LINE_NO WHERE 1=1 -- AND ppc.ORDER_NO='522484Q020' --- AND PCMT.FUR_TYPE ='C' --加热炉类型 C 没有注解,C和S 都代表什么 --- AND ppcpa.ORDER_TYPE_CODE != 'QFH' --- AND PPC.ON_PD_FLAG != 1 --不用验证操作者 --- AND PPC.PD_HOLD_FLAG != 1 -- 不能封锁状态 --- AND pcmt.ROLL_DIRECT_CODE ='L' --轧制方向代码 --- AND NVL(cm.ORDER_STATUS,0) >= 40 AND NVL(cm.ORDER_STATUS,0) < 67 --TODO 添加nvl处理 表中无效数字 + AND PCMT.FUR_TYPE ='C' --加热炉类型 C 没有注解,C和S 都代表什么 + AND ppcpa.ORDER_TYPE_CODE != 'QFH' + AND PPC.ON_PD_FLAG != 1 --不用验证操作者 + AND PPC.PD_HOLD_FLAG != 1 -- 不能封锁状态 + AND pcmt.ROLL_DIRECT_CODE ='L' --轧制方向代码 + AND NVL(cm.ORDER_STATUS,0) >= 40 AND NVL(cm.ORDER_STATUS,0) < 67 --TODO 添加nvl处理 表中无效数字 -- AND PPC.PD_LACK_QTY > 0 --欠量大于0 TODO 存在欠量小于0的数据 @@ -103,12 +103,12 @@ -- AND cm.MSC_LINE_NO = pcmt.MSC_LINE_NO --PM_PRO_CONT没有MSC_LINE_NO WHERE 1=1 -- AND ppc.ORDER_NO='522484Q020' --- AND PCMT.FUR_TYPE ='C' --加热炉类型 C 没有注解,C和S 都代表什么 --- AND ppcpa.ORDER_TYPE_CODE != 'QFH' --- AND PPC.ON_PD_FLAG != 1 --不用验证操作者 --- AND PPC.PD_HOLD_FLAG != 1 -- 不能封锁状态 --- AND pcmt.ROLL_DIRECT_CODE ='L'--轧制方向代码 --- AND NVL(cm.ORDER_STATUS,0) >= 40 AND NVL(cm.ORDER_STATUS,0) < 67 --TODO 添加nvl处理 表中无效数字 + AND PCMT.FUR_TYPE ='C' --加热炉类型 C 没有注解,C和S 都代表什么 + AND ppcpa.ORDER_TYPE_CODE != 'QFH' + AND PPC.ON_PD_FLAG != 1 --不用验证操作者 + AND PPC.PD_HOLD_FLAG != 1 -- 不能封锁状态 + AND pcmt.ROLL_DIRECT_CODE ='L'--轧制方向代码 + AND NVL(cm.ORDER_STATUS,0) >= 40 AND NVL(cm.ORDER_STATUS,0) < 67 --TODO 添加nvl处理 表中无效数字 -- AND PPC.PD_LACK_QTY > 0 --欠量大于0 TODO 存在欠量小于0的数据