From cb035f3f0de1a4e656ca1090ec377db6de346cb2 Mon Sep 17 00:00:00 2001
From: BKGY_MYT <1536233200@qq.com>
Date: Thu, 20 Feb 2025 19:27:04 +0800
Subject: [PATCH] =?UTF-8?q?=E5=91=BD=E4=BB=A4=E8=A1=A8=20=E4=BF=AE?=
=?UTF-8?q?=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../shopmanager/controller/SubController.java | 24 ++++---
.../src/main/resources/mapper/SubMapper.xml | 64 +++++++++----------
2 files changed, 48 insertions(+), 40 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 72e220c..9197ba1 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
@@ -320,6 +320,7 @@ public class SubController {
SetGroupCalRslt(p);
logger.info("结果数据板坯号:{};数量:{}", p.getSlabNo(), gltGGrpCalRslt.size());
+ logger.info("结果数据板坯号:{};数量:{}", p.getSlabNo(), gltSelGGrpCalRslt.size());
}
if (gltSelGGrpCalRslt.size() > 0) {
now = new Date();
@@ -2079,7 +2080,7 @@ public class SubController {
SetPmPdPlateCut();//大板粗切位置表
SetPmPdBlockPos();//组合子板位置表
SetPmPdContSum();//组板合同总量表 命令参数表
- SetPmSmallPltPos();//组板小板位置表 命令小板表
+ SetPmSmallPltPos(SInfo.getMscLineNo());//组板小板位置表 命令小板表
// SetPmCmdSlab();//命令板坯表
// SetPmCmdLargePlt();//命令大板表
// SetPmCmdCont();//命令参数表
@@ -2098,7 +2099,7 @@ public class SubController {
pmPdSlabDO.setMatDesignKind("S");
pmPdSlabDO.setPdStatusHp("12");
pmPdSlabDO.setPdResp("781"); // TODO 组板责任者 未赋值 操作人id
- pmPdSlabDO.setFormPlateMode(""); //TODO 组板方式 未赋值
+ pmPdSlabDO.setFormPlateMode("A1"); //TODO 组板方式 需要判断
pmPdSlabDO.setPickModeLenDir(BigDecimal.ZERO); //TODO 取板方式_长度方向 未赋值
pmPdSlabDO.setPickModeWidDir(BigDecimal.ZERO); //TODO 取板方式_宽度方向 未赋值
pmPdSlabDO.setFurType("C");// TODO 加热炉类型 暂时赋值为C
@@ -2304,7 +2305,7 @@ public class SubController {
pmPdSlabDO.setTwoRollInterimFlag(1);
SetPmCmdSlab(pmPdSlabDO);//命令板坯表
- SetPmCmdLargePlt(pmPdSlabDO, ggcr);//命令大板表
+ SetPmCmdLargePlt(pmPdSlabDO, ggcr,resultPmContMscTechDO1.get());//命令大板表
pmPdSlabDOList.add(pmPdSlabDO);
}
@@ -2403,11 +2404,12 @@ public class SubController {
}
//组板小板位置表
- public void SetPmSmallPltPos() {
+ public void SetPmSmallPltPos(String mscLineNo) {
for (int i = 0; i < gltSelGGrpCalRslt.size(); i++) {
GGrpCalRslt ggcr = gltSelGGrpCalRslt.get(i);
for (int j = 0; j < ggcr.getLtActInfoGPreOrder().size(); j++) {
GPreOrder gpo = ggcr.getLtActInfoGPreOrder().get(j);
+
PmSmallPltPosDO pmSmallPltPosDO = new PmSmallPltPosDO();
pmSmallPltPosDO.setPdMatNo(ggcr.getVirtualSlabNo());
pmSmallPltPosDO.setOrderNo(gpo.getOrderNo());
@@ -2439,7 +2441,7 @@ public class SubController {
pmSmallPltPosDO.setCreationDate(now);
pmSmallPltPosDO.setLastUpdateDate(now);
- SetPmCmdSmallPlt(pmSmallPltPosDO);
+ SetPmCmdSmallPlt(pmSmallPltPosDO,resultPmProContProdAttrDO.get(),mscLineNo);
pmSmallPltPosDOList.add(pmSmallPltPosDO);
}
}
@@ -2490,7 +2492,7 @@ public class SubController {
pmCmdSlabDO.setInfurSlabWt(pmPdSlabDO.getInfurSlabWt().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP));
pmCmdSlabDO.setInfurSlabMaxWt(pmPdSlabDO.getInfurSlabMaxWt());
pmCmdSlabDO.setInfurSlabMinWt(pmPdSlabDO.getInfurSlabLen());
- pmCmdSlabDO.setNeedSlabLen(pmPdSlabDO.getNeedSlabLen());
+ pmCmdSlabDO.setNeedSlabLen(pmPdSlabDO.getInfurSlabLen());
pmCmdSlabDO.setNeedSlabWt(pmPdSlabDO.getInfurSlabWt().divide(BigDecimal.valueOf(1000000000), 3, RoundingMode.HALF_UP));
pmCmdSlabDO.setFixSlabLenFlag(String.valueOf(pmPdSlabDO.getFixSlabLenFlag()));
pmCmdSlabDO.setFixSlabLen(pmPdSlabDO.getFixSlabLen().intValue());
@@ -2518,8 +2520,10 @@ public class SubController {
}
//命令大板表
- public void SetPmCmdLargePlt(PmPdSlabDO pmPdSlabDO, GGrpCalRslt gGrpCalRslt) {
+ public void SetPmCmdLargePlt(PmPdSlabDO pmPdSlabDO, GGrpCalRslt gGrpCalRslt, PmContMscTechDO pmContMscTechDO) {
PmCmdLargePltDO pmCmdLargePltDO = new PmCmdLargePltDO();
+ pmCmdLargePltDO.setRollMode(pmContMscTechDO.getRollMode());
+ pmCmdLargePltDO.setHotRectifyFlag(pmContMscTechDO.getHotChargeFlag());
pmCmdLargePltDO.setPonoSlabNo(pmPdSlabDO.getVirtualSlabNo());
pmCmdLargePltDO.setTmpSlabNo(pmPdSlabDO.getVirtualSlabNo());
pmCmdLargePltDO.setSlabNo(pmPdSlabDO.getSlabNo());
@@ -2591,6 +2595,7 @@ public class SubController {
pmCmdLargePltDO.setSampleLenGive(resultPmProContProdAttrDO.get().getSampleLenGive());
pmCmdLargePltDO.setProdDensity(resultPmProContProdAttrDO.get().getProdDensity());
pmCmdLargePltDO.setPlateDtCode(resultPmProContProdAttrDO.get().getProjectCode());
+ pmCmdLargePltDO.setWithSideFlag(resultPmProContProdAttrDO.get().getProdSideMark());
pmCmdLargePltDO.setRsCode(pmPdSlabDO.getRsCode());
pmCmdLargePltDO.setBroadFlag(pmPdSlabDO.getBroadFlag());
@@ -2706,6 +2711,7 @@ public class SubController {
}
pmCmdContDO.setHeatTreatMode(pmContMscTechDOItem.get().getHeatTreatMode());
pmCmdContDO.setUltDetectMethodCode(pmContMscTechDOItem.get().getUltDetectMethodCode());
+ 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.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY
@@ -2716,7 +2722,7 @@ public class SubController {
}
//命令小板表
- public void SetPmCmdSmallPlt(PmSmallPltPosDO pmSmallPltPosDO) {
+ public void SetPmCmdSmallPlt(PmSmallPltPosDO pmSmallPltPosDO, PmProContProdAttrDO pmProContProdAttrDO, String mscLineNo) {
PmCmdSmallPltDO pmCmdSmallPltDO = new PmCmdSmallPltDO();
pmCmdSmallPltDO.setPonoSlabNo(pmSmallPltPosDO.getPdMatNo());
pmCmdSmallPltDO.setTmpSlabNo(pmSmallPltPosDO.getPdMatNo());
@@ -2734,6 +2740,8 @@ public class SubController {
pmCmdSmallPltDO.setSmallPlateThick(pmSmallPltPosDO.getSmallPlateThick());
pmCmdSmallPltDO.setSmallPlateWidth(pmSmallPltPosDO.getSmallPlateWidth());
pmCmdSmallPltDO.setSmallPlateLen(BigDecimal.valueOf(pmSmallPltPosDO.getSmallPlateLen()));
+ pmCmdSmallPltDO.setSampleLenGive(BigDecimal.valueOf(pmProContProdAttrDO.getSampleLenGive()));
+ pmCmdSmallPltDO.setMscLineNo(mscLineNo);
pmCmdSmallPltDO.setCreatedBy(781L);//TODO 创建人修改人,暂时默认781 BKGY
pmCmdSmallPltDO.setLastUpdatedBy(781L);
pmCmdSmallPltDO.setCreationDate(now);
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 dc98a87..b13282a 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的数据