命令表 修复

main^2
BKGY_MYT 2 days ago
parent 6c8e0b68bf
commit cb035f3f0d

@ -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);

@ -32,16 +32,16 @@
-- AND MS.SLAB_NO = 'C50015130500'
-- AND MS.SLAB_NO = 'C50015130100'
<if test="slabNo != null and slabNo != ''">AND MS.SLAB_NO = #{slabNo}</if>
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) &gt; 0.001
AND NVL(MS.SLAB_ACT_WID,0.001) &gt; 0.001
AND NVL(MS.SLAB_ACT_LEN,0.001) &gt; 0.001
AND (NVL(MS.SLAB_ACT_WGT,0.001) &gt; 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) &gt; 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) &gt; 0.001
-- AND NVL(MS.SLAB_ACT_WID,0.001) &gt; 0.001
-- AND NVL(MS.SLAB_ACT_LEN,0.001) &gt; 0.001
-- AND (NVL(MS.SLAB_ACT_WGT,0.001) &gt; 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) &gt; 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'
<if test="slabNo != null and slabNo != ''">AND MS.SLAB_NO = #{slabNo}</if>
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) &gt; 0.001
AND NVL(MS.SLAB_ACT_WID,0.001) &gt; 0.001
AND NVL(MS.SLAB_ACT_LEN,0.001) &gt; 0.001
AND (NVL(MS.SLAB_ACT_WGT,0.001) &gt; 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) &gt; 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) &gt; 0.001
-- AND NVL(MS.SLAB_ACT_WID,0.001) &gt; 0.001
-- AND NVL(MS.SLAB_ACT_LEN,0.001) &gt; 0.001
-- AND (NVL(MS.SLAB_ACT_WGT,0.001) &gt; 0.001 OR NVL(MS.SLAB_GROSS_WGT,0.001) &gt; 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) &gt;= 40 AND NVL(cm.ORDER_STATUS,0) &lt; 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) &gt;= 40 AND NVL(cm.ORDER_STATUS,0) &lt; 67 --TODO 添加nvl处理 表中无效数字
-- AND PPC.PD_LACK_QTY &gt; 0 --欠量大于0 TODO 存在欠量小于0的数据
</select>
@ -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) &gt;= 40 AND NVL(cm.ORDER_STATUS,0) &lt; 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) &gt;= 40 AND NVL(cm.ORDER_STATUS,0) &lt; 67 --TODO 添加nvl处理 表中无效数字
-- AND PPC.PD_LACK_QTY &gt; 0 --欠量大于0 TODO 存在欠量小于0的数据
</select>

Loading…
Cancel
Save