2025-03-27

main
sunhao 2 months ago
parent 7b15a6a284
commit dc7394c4c5

@ -16,6 +16,9 @@ public class GCalGrp {
//虚拟号
private String VirtualSlabNo;
//产线
private String MscLineNo;
//合同号
private int IDValue;
//宽度
@ -25,6 +28,51 @@ public class GCalGrp {
//长度
private int Len;
//全程热处理类型
private String WHOLE_HEAT_TREATMENT_TYPE;
//切断方式
private String CUT_MODE_CODE;
//缓冷代码
private String COOL_CODE;
//二次开坯母材合同标记
private BigDecimal TWO_ROLL_FLAG;
//见证要求 QE_TJ_WITNESS_PRO_ORDER
private String WITNESS_PRO_NO;
// AD控制模式第134位相等
private String AD_MODE_CODE;
// 控轧代码第134位相等
private String CTRL_ROLL_CODE;
//边部形态
private String PROD_SIDE_MARK;
//会检方式代码
private String CHECK_METHOD_CODE;
//验收机关代码
private String ACCP_AUTH_CODE;
//最终用户代码
private String FIN_CUST_CODE;
//超声探伤代码
private String ULT_CODE;
//四毛交货的合同单独组板
private String TRIM_CODE;
//厚度
private BigDecimal Order_Thk;
// 厚度公差上限

@ -21,6 +21,9 @@ public class GGrpCalRslt {
//虚拟板坯长度
private int VirtualSlab_Len;
//产线
private String MscLineNo;
//虚拟板坯宽度
private int VirtualSlab_Wid;

@ -23,6 +23,48 @@ public class GGrpOrderFir {
//内部钢种
private String ST_NO;
//全程热处理类型
private String WHOLE_HEAT_TREATMENT_TYPE;
//切断方式
private String CUT_MODE_CODE;
//缓冷代码
private String COOL_CODE;
//二次开坯母材合同标记
private BigDecimal TWO_ROLL_FLAG;
//见证要求 QE_TJ_WITNESS_PRO_ORDER
private String WITNESS_PRO_NO;
// AD控制模式第134位相等
private String AD_MODE_CODE;
// 控轧代码第134位相等
private String CTRL_ROLL_CODE;
//边部形态
private String PROD_SIDE_MARK;
//会检方式代码
private String CHECK_METHOD_CODE;
//验收机关代码
private String ACCP_AUTH_CODE;
//最终用户代码
private String FIN_CUST_CODE;
//超声探伤代码
private String ULT_CODE;
//四毛交货的合同单独组板
private String TRIM_CODE;
//合同产线
private String Line ;
//合同信息

@ -32,7 +32,7 @@ public class GPreOrder {
private String COOL_CODE;
//二次开坯母材合同标记
private String TWO_ROLL_FLAG;
private BigDecimal TWO_ROLL_FLAG;
//见证要求 QE_TJ_WITNESS_PRO_ORDER
private String WITNESS_PRO_NO;
@ -61,6 +61,7 @@ public class GPreOrder {
//合同产线
private String Line ;

@ -916,10 +916,10 @@ public class SubServiceImpl implements SubService {
return;
}
//产线相同 TODO同产线不同产线需更改后续产线规则
if (!SInfo.getMscLineNo().equals(f.getInfoPmContMscTechDO().getMscLineNo())) {
return;
}
// //产线相同 TODO同产线不同产线需更改后续产线规则
// if (!SInfo.getMscLineNo().equals(f.getInfoPmContMscTechDO().getMscLineNo())) {
// return;
// }
//不存在或者合格都是成功不合格返回false
if(plistChmChkRsult.stream().anyMatch(m -> m.getPono().equals(SInfo.getPono()) && m.getOrderNo().equals(f.getOrderNo())))
@ -967,6 +967,39 @@ public class SubServiceImpl implements SubService {
//存在订单,添加可计算分组
if (GCG.getLtInfoGPreOrder().size() > 0) {
//产线
GCG.setMscLineNo(GCG.getLtInfoGPreOrder().get(0).getLine());
//全程热处理类型
GCG.setWHOLE_HEAT_TREATMENT_TYPE(GCG.getLtInfoGPreOrder().get(0).getWHOLE_HEAT_TREATMENT_TYPE());
//切断方式
GCG.setCUT_MODE_CODE(GCG.getLtInfoGPreOrder().get(0).getCUT_MODE_CODE());
//缓冷代码
GCG.setCOOL_CODE(GCG.getLtInfoGPreOrder().get(0).getCOOL_CODE());
//二次开坯母材合同标记
GCG.setTWO_ROLL_FLAG(GCG.getLtInfoGPreOrder().get(0).getTWO_ROLL_FLAG() );
//见证要求 QE_TJ_WITNESS_PRO_ORDER TODO:QE_TJ_WITNESS_PRO_ORDER.WITNESS_PRO_NO 见证要求
//GGOF.setWITNESS_PRO_NO(p.getWITNESS_PRO_NO());
// AD控制模式第134位相等
GCG.setAD_MODE_CODE(GCG.getLtInfoGPreOrder().get(0).getAD_MODE_CODE());
// 控轧代码第134位相等
GCG.setCTRL_ROLL_CODE(GCG.getLtInfoGPreOrder().get(0).getCTRL_ROLL_CODE());
//边部形态
GCG.setPROD_SIDE_MARK(GCG.getLtInfoGPreOrder().get(0).getPROD_SIDE_MARK());
//会检方式代码
GCG.setCHECK_METHOD_CODE(GCG.getLtInfoGPreOrder().get(0).getCHECK_METHOD_CODE());
//验收机关代码
GCG.setACCP_AUTH_CODE(GCG.getLtInfoGPreOrder().get(0).getACCP_AUTH_CODE());
//最终用户代码
GCG.setFIN_CUST_CODE(GCG.getLtInfoGPreOrder().get(0).getFIN_CUST_CODE());
//超声探伤代码
GCG.setULT_CODE(GCG.getLtInfoGPreOrder().get(0).getULT_CODE());
//四毛交货的合同单独组板
GCG.setTRIM_CODE(GCG.getLtInfoGPreOrder().get(0).getTRIM_CODE());
//GCG.getLtInfoGPreOrder().stream().filter(e->e.)
//最大宽度
OptionalInt maxWidth = GCG.getLtInfoGPreOrder().stream()
@ -1024,7 +1057,7 @@ public class SubServiceImpl implements SubService {
strThkTolType = "*";
}
//存在数据,判断热处理模式
if (plistPmThickAddvBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmThickAddvBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
&& p.getPlateThickTo().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) >= 0
@ -1048,7 +1081,7 @@ public class SubServiceImpl implements SubService {
if (GCG.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType() != null
&& GCG.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType().contains("Q")) {
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getWholeHeatTreatmentType().equals("Q")
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
@ -1057,7 +1090,7 @@ public class SubServiceImpl implements SubService {
&& p.getCombinePlateWidthTo().compareTo(BigDecimal.valueOf(maxWidth.orElse(0) + maxAddWidth.orElse(0))) >= 0
).collect(Collectors.toList()).get(0).getThickAddv();
} else {
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getWholeHeatTreatmentType().equals("*")
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
@ -1091,7 +1124,7 @@ public class SubServiceImpl implements SubService {
}
//切边量
String finalStrWithSideFlag = strWithSideFlag;
if (plistPmPlateTrimBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmPlateTrimBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getPlateThickFrom().compareTo(decThk) <= 0
&& p.getPlateThickTo().compareTo(decThk) >= 0
&& p.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(GCG.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -1104,7 +1137,7 @@ public class SubServiceImpl implements SubService {
)) {
String finalStrWithSideFlag1 = strWithSideFlag;
intTrimWid = plistPmPlateTrimBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
intTrimWid = plistPmPlateTrimBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getPlateThickFrom().compareTo(decThk) <= 0
&& p.getPlateThickTo().compareTo(decThk) >= 0
&& p.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(GCG.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -1157,6 +1190,8 @@ public class SubServiceImpl implements SubService {
if (f.getWid()+e.getWid()<4980
&& e.getThk().compareTo(f.getThk())==0
&& e.getST_NO().equals(f.getST_NO())
&& e.getMscLineNo().equals(f.getMscLineNo())
&& ChkCombinationGrpFlag(e,f)
&& e.getThickTolMin().compareTo(f.getThickTolMin())==0
&& e.getThickTolMax().compareTo(f.getThickTolMax())==0
){
@ -1348,7 +1383,7 @@ public class SubServiceImpl implements SubService {
strThkTolType = "*";
}
//存在数据,判断热处理模式
if (plistPmThickAddvBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmThickAddvBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
&& p.getPlateThickTo().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) >= 0
@ -1373,7 +1408,7 @@ public class SubServiceImpl implements SubService {
if (GCG.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType()!=null &&
GCG.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType().contains("Q")) {
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getWholeHeatTreatmentType().equals("Q")
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
@ -1382,7 +1417,7 @@ public class SubServiceImpl implements SubService {
&& p.getCombinePlateWidthTo().compareTo(BigDecimal.valueOf(maxWidth + maxAddWidth.orElse(0))) >= 0
).collect(Collectors.toList()).get(0).getThickAddv();
} else {
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getTolTypeCode().equals(strThkTolType)
&& p.getWholeHeatTreatmentType().equals("*")
&& p.getPlateThickFrom().compareTo(GCG.getLtInfoGPreOrder().get(0).getThk()) <= 0
@ -1415,7 +1450,7 @@ public class SubServiceImpl implements SubService {
}
//切边量
String finalStrWithSideFlag = strWithSideFlag;
if (plistPmPlateTrimBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmPlateTrimBtDO.stream().anyMatch(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getPlateThickFrom().compareTo(decThk) <= 0
&& p.getPlateThickTo().compareTo(decThk) >= 0
&& p.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(GCG.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -1428,7 +1463,7 @@ public class SubServiceImpl implements SubService {
)) {
String finalStrWithSideFlag1 = strWithSideFlag;
intTrimWid = plistPmPlateTrimBtDO.stream().filter(p -> p.getMscLineNo().equals(SInfo.getMscLineNo())
intTrimWid = plistPmPlateTrimBtDO.stream().filter(p -> p.getMscLineNo().equals(GCG.getMscLineNo())
&& p.getPlateThickFrom().compareTo(decThk) <= 0
&& p.getPlateThickTo().compareTo(decThk) >= 0
&& p.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(GCG.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -2182,6 +2217,45 @@ public class SubServiceImpl implements SubService {
//产线
GPO.setLine(pcmt.getMscLineNo());
//全程热处理类型
GPO.setWHOLE_HEAT_TREATMENT_TYPE(pcmt.getWholeHeatTreatmentType());
//切断方式
GPO.setCUT_MODE_CODE(pcmt.getCutModeCode());
//缓冷代码
GPO.setCOOL_CODE(pcmt.getCoolCode());
//二次开坯母材合同标记
GPO.setTWO_ROLL_FLAG(BigDecimal.valueOf(ppcpa.getTwoRollFlag()) );
//见证要求 QE_TJ_WITNESS_PRO_ORDER TODO:QE_TJ_WITNESS_PRO_ORDER.WITNESS_PRO_NO 见证要求
//GPO.setWITNESS_PRO_NO(pcmt.getW);
// AD控制模式第134位相等
GPO.setAD_MODE_CODE(pcmt.getAdModeCode());
// 控轧代码第134位相等
GPO.setCTRL_ROLL_CODE(pcmt.getCtrlRollCode());
//边部形态
GPO.setPROD_SIDE_MARK(ppcpa.getProdSideMark());
//会检方式代码
GPO.setCHECK_METHOD_CODE(ppcpa.getCheckMethodCode());
//验收机关代码
GPO.setACCP_AUTH_CODE(ppcpa.getAccpAuthCode());
//最终用户代码
GPO.setFIN_CUST_CODE(ppcpa.getFinCustCode());
//超声探伤代码
GPO.setULT_CODE(pcmt.getUltCode());
//四毛交货的合同单独组板
GPO.setTRIM_CODE(ppcpa.getTrimCode());
// 将创建的订单对象添加到全局订单列表中
gltOrder.add(GPO);
}
@ -2275,16 +2349,18 @@ public class SubServiceImpl implements SubService {
gltOrder.forEach(p -> {
// 检查当前订单是否与已有的分组匹配
if (gltGrpOrderFir.stream().anyMatch(e -> e.getWid().equals(p.getInfoPmProContProdAttrDO().getOrderWidth()) &&
e.getThk().equals(p.getInfoPmProContProdAttrDO().getOrderThick()) &&
e.getST_NO().equals(p.getInfoPmContMscTechDO().getStNo()) &&
e.getLine().equals(p.getInfoPmContMscTechDO().getMscLineNo()))) {
if (gltGrpOrderFir.stream().anyMatch(e -> e.getWid().equals(p.getInfoPmProContProdAttrDO().getOrderWidth())
&& e.getThk().equals(p.getInfoPmProContProdAttrDO().getOrderThick())
&& e.getST_NO().equals(p.getInfoPmContMscTechDO().getStNo())
&& ChkCombinationOrderFlag(e,p)
&& e.getLine().equals(p.getInfoPmContMscTechDO().getMscLineNo()))) {
// 如果匹配成功,将订单添加到相应的分组中
GGrpOrderFir GGOF = gltGrpOrderFir.stream().filter(e -> e.getWid().equals(p.getInfoPmProContProdAttrDO().getOrderWidth())
&& e.getThk().equals(p.getInfoPmProContProdAttrDO().getOrderThick())
&& e.getST_NO().equals(p.getInfoPmContMscTechDO().getStNo())&&
e.getLine().equals(p.getInfoPmContMscTechDO().getMscLineNo())
&& e.getST_NO().equals(p.getInfoPmContMscTechDO().getStNo())
&& ChkCombinationOrderFlag(e,p)
&& e.getLine().equals(p.getInfoPmContMscTechDO().getMscLineNo())
).findFirst().orElse(null);
if (GGOF.getLtInfoGPreOrder() == null) {
GGOF.setLtInfoGPreOrder(new ArrayList<>()); // 确保列表已初始化
@ -2302,6 +2378,37 @@ public class SubServiceImpl implements SubService {
GGOF.setSG_STD(p.getInfoPmProContProdAttrDO().getSgStd());
GGOF.setST_NO(p.getInfoPmContMscTechDO().getStNo());
GGOF.setLine(p.getInfoPmContMscTechDO().getMscLineNo());
//全程热处理类型
GGOF.setWHOLE_HEAT_TREATMENT_TYPE(p.getWHOLE_HEAT_TREATMENT_TYPE());
//切断方式
GGOF.setCUT_MODE_CODE(p.getCUT_MODE_CODE());
//缓冷代码
GGOF.setCOOL_CODE(p.getCOOL_CODE());
//二次开坯母材合同标记
GGOF.setTWO_ROLL_FLAG(p.getTWO_ROLL_FLAG() );
//见证要求 QE_TJ_WITNESS_PRO_ORDER TODO:QE_TJ_WITNESS_PRO_ORDER.WITNESS_PRO_NO 见证要求
//GGOF.setWITNESS_PRO_NO(p.getWITNESS_PRO_NO());
// AD控制模式第134位相等
GGOF.setAD_MODE_CODE(p.getAD_MODE_CODE());
// 控轧代码第134位相等
GGOF.setCTRL_ROLL_CODE(p.getCTRL_ROLL_CODE());
//边部形态
GGOF.setPROD_SIDE_MARK(p.getPROD_SIDE_MARK());
//会检方式代码
GGOF.setCHECK_METHOD_CODE(p.getCHECK_METHOD_CODE());
//验收机关代码
GGOF.setACCP_AUTH_CODE(p.getACCP_AUTH_CODE());
//最终用户代码
GGOF.setFIN_CUST_CODE(p.getFIN_CUST_CODE());
//超声探伤代码
GGOF.setULT_CODE(p.getULT_CODE());
//四毛交货的合同单独组板
GGOF.setTRIM_CODE(p.getTRIM_CODE());
GGOF.setLtInfoGPreOrder(new ArrayList<>()); // 初始化列表
GGOF.getLtInfoGPreOrder().add(p);
gltGrpOrderFir.add(GGOF);
@ -2316,6 +2423,199 @@ public class SubServiceImpl implements SubService {
}
public boolean ChkCombinationOrderFlag(GGrpOrderFir GOF, GPreOrder GPO) {
try {
//全程热处理类型
if (!nvl(GOF.getWHOLE_HEAT_TREATMENT_TYPE(),"").equals(nvl(GPO.getWHOLE_HEAT_TREATMENT_TYPE(),""))) {
return false;
}
//切断方式
if (!nvl(GOF.getCUT_MODE_CODE(),"").equals(nvl(GPO.getCUT_MODE_CODE(),""))) {
return false;
}
//缓冷代码
// GGOF.setCOOL_CODE(p.getCOOL_CODE());
if (!nvl(GOF.getCOOL_CODE(),"").equals(nvl(GPO.getCOOL_CODE(),""))) {
return false;
}
//二次开坯母材合同标记
// GGOF.setTWO_ROLL_FLAG(p.getTWO_ROLL_FLAG() );
if (!nvl(GOF.getTWO_ROLL_FLAG(),"").equals(nvl(GPO.getTWO_ROLL_FLAG(),""))) {
return false;
}
//见证要求 QE_TJ_WITNESS_PRO_ORDER TODO:QE_TJ_WITNESS_PRO_ORDER.WITNESS_PRO_NO 见证要求
//GGOF.setWITNESS_PRO_NO(p.getWITNESS_PRO_NO());
// AD控制模式第134位相等
// GGOF.setAD_MODE_CODE(p.getAD_MODE_CODE());
if (!nvl(GOF.getAD_MODE_CODE(),"").equals(nvl(GPO.getAD_MODE_CODE(),""))) {
return false;
}
// AD控制模式第1位、第3位和第4位相等
if ((nvl(GOF.getAD_MODE_CODE(),"").length() != 0 && nvl(GPO.getAD_MODE_CODE(),"").length() == 0)
|| (nvl(GOF.getAD_MODE_CODE(),"").length() == 0 && nvl(GPO.getAD_MODE_CODE(),"").length() != 0)) {
return false;
} else {
if (nvl(GOF.getAD_MODE_CODE(),"").length() < 4 || nvl(GPO.getAD_MODE_CODE(),"").length() < 4 ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(0) != nvl(GPO.getAD_MODE_CODE(),"").charAt(0) ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(2) != nvl(GPO.getAD_MODE_CODE(),"").charAt(2) ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(3) != nvl(GPO.getAD_MODE_CODE(),"").charAt(3)) {
return false;
}
}
// 控轧代码第134位相等
// GGOF.setCTRL_ROLL_CODE(p.getCTRL_ROLL_CODE());
if ((nvl(GOF.getCTRL_ROLL_CODE(),"").length() != 0 && nvl(GPO.getCTRL_ROLL_CODE(),"").length() == 0)
|| (nvl(GOF.getCTRL_ROLL_CODE(),"").length() == 0 && nvl(GPO.getCTRL_ROLL_CODE(),"").length() != 0)) {
return false;
} else {
if (nvl(GOF.getCTRL_ROLL_CODE(),"").length() < 4 || nvl(GPO.getCTRL_ROLL_CODE(),"").length() < 4 ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(0) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(0) ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(2) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(2) ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(3) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(3)) {
return false;
}
}
//边部形态
// GGOF.setPROD_SIDE_MARK(p.getPROD_SIDE_MARK());
if (!nvl(GOF.getPROD_SIDE_MARK(),"").equals(nvl(GPO.getPROD_SIDE_MARK(),""))) {
return false;
}
//会检方式代码
// GGOF.setCHECK_METHOD_CODE(p.getCHECK_METHOD_CODE());
if (!nvl(GOF.getCHECK_METHOD_CODE(),"").equals(nvl(GPO.getCHECK_METHOD_CODE(),""))) {
return false;
}
//验收机关代码
// GGOF.setACCP_AUTH_CODE(p.getACCP_AUTH_CODE());
if (!nvl(GOF.getACCP_AUTH_CODE(),"").equals(nvl(GPO.getACCP_AUTH_CODE(),""))) {
return false;
}
//最终用户代码
// GGOF.setFIN_CUST_CODE(p.getFIN_CUST_CODE());
if (!nvl(GOF.getFIN_CUST_CODE(),"").equals(nvl(GPO.getFIN_CUST_CODE(),""))) {
return false;
}
//超声探伤代码
// GGOF.setULT_CODE(p.getULT_CODE());
if (!nvl(GOF.getULT_CODE(),"").equals(nvl(GPO.getULT_CODE(),""))) {
return false;
}
//四毛交货的合同单独组板
// GGOF.setTRIM_CODE(p.getTRIM_CODE());
if (!nvl(GOF.getTRIM_CODE(),"").equals(nvl(GPO.getTRIM_CODE(),""))) {
return false;
}
} catch (Exception ex1) {
logger.info("错误信息:合同-->" + ex1);
}
return true;
}
public boolean ChkCombinationGrpFlag(GCalGrp GOF, GCalGrp GPO) {
try {
//全程热处理类型
if (!nvl(GOF.getWHOLE_HEAT_TREATMENT_TYPE(),"").equals(nvl(GPO.getWHOLE_HEAT_TREATMENT_TYPE(),""))) {
return false;
}
//切断方式
if (!nvl(GOF.getCUT_MODE_CODE(),"").equals(nvl(GPO.getCUT_MODE_CODE(),""))) {
return false;
}
//缓冷代码
// GGOF.setCOOL_CODE(p.getCOOL_CODE());
if (!nvl(GOF.getCOOL_CODE(),"").equals(nvl(GPO.getCOOL_CODE(),""))) {
return false;
}
//二次开坯母材合同标记
// GGOF.setTWO_ROLL_FLAG(p.getTWO_ROLL_FLAG() );
if (!nvl(GOF.getTWO_ROLL_FLAG(),"").equals(nvl(GPO.getTWO_ROLL_FLAG(),""))) {
return false;
}
//见证要求 QE_TJ_WITNESS_PRO_ORDER TODO:QE_TJ_WITNESS_PRO_ORDER.WITNESS_PRO_NO 见证要求
//GGOF.setWITNESS_PRO_NO(p.getWITNESS_PRO_NO());
// AD控制模式第134位相等
// GGOF.setAD_MODE_CODE(p.getAD_MODE_CODE());
if (!nvl(GOF.getAD_MODE_CODE(),"").equals(nvl(GPO.getAD_MODE_CODE(),""))) {
return false;
}
// AD控制模式第1位、第3位和第4位相等
if ((nvl(GOF.getAD_MODE_CODE(),"").length() != 0 && nvl(GPO.getAD_MODE_CODE(),"").length() == 0)
|| (nvl(GOF.getAD_MODE_CODE(),"").length() == 0 && nvl(GPO.getAD_MODE_CODE(),"").length() != 0)) {
return false;
} else {
if (nvl(GOF.getAD_MODE_CODE(),"").length() < 4 || nvl(GPO.getAD_MODE_CODE(),"").length() < 4 ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(0) != nvl(GPO.getAD_MODE_CODE(),"").charAt(0) ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(2) != nvl(GPO.getAD_MODE_CODE(),"").charAt(2) ||
nvl(GOF.getAD_MODE_CODE(),"").charAt(3) != nvl(GPO.getAD_MODE_CODE(),"").charAt(3)) {
return false;
}
}
// 控轧代码第134位相等
// GGOF.setCTRL_ROLL_CODE(p.getCTRL_ROLL_CODE());
if ((nvl(GOF.getCTRL_ROLL_CODE(),"").length() != 0 && nvl(GPO.getCTRL_ROLL_CODE(),"").length() == 0)
|| (nvl(GOF.getCTRL_ROLL_CODE(),"").length() == 0 && nvl(GPO.getCTRL_ROLL_CODE(),"").length() != 0)) {
return false;
} else {
if (nvl(GOF.getCTRL_ROLL_CODE(),"").length() < 4 || nvl(GPO.getCTRL_ROLL_CODE(),"").length() < 4 ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(0) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(0) ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(2) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(2) ||
nvl(GOF.getCTRL_ROLL_CODE(),"").charAt(3) != nvl(GPO.getCTRL_ROLL_CODE(),"").charAt(3)) {
return false;
}
}
//边部形态
// GGOF.setPROD_SIDE_MARK(p.getPROD_SIDE_MARK());
if (!nvl(GOF.getPROD_SIDE_MARK(),"").equals(nvl(GPO.getPROD_SIDE_MARK(),""))) {
return false;
}
//会检方式代码
// GGOF.setCHECK_METHOD_CODE(p.getCHECK_METHOD_CODE());
if (!nvl(GOF.getCHECK_METHOD_CODE(),"").equals(nvl(GPO.getCHECK_METHOD_CODE(),""))) {
return false;
}
//验收机关代码
// GGOF.setACCP_AUTH_CODE(p.getACCP_AUTH_CODE());
if (!nvl(GOF.getACCP_AUTH_CODE(),"").equals(nvl(GPO.getACCP_AUTH_CODE(),""))) {
return false;
}
//最终用户代码
// GGOF.setFIN_CUST_CODE(p.getFIN_CUST_CODE());
if (!nvl(GOF.getFIN_CUST_CODE(),"").equals(nvl(GPO.getFIN_CUST_CODE(),""))) {
return false;
}
//超声探伤代码
// GGOF.setULT_CODE(p.getULT_CODE());
if (!nvl(GOF.getULT_CODE(),"").equals(nvl(GPO.getULT_CODE(),""))) {
return false;
}
//四毛交货的合同单独组板
// GGOF.setTRIM_CODE(p.getTRIM_CODE());
if (!nvl(GOF.getTRIM_CODE(),"").equals(nvl(GPO.getTRIM_CODE(),""))) {
return false;
}
} catch (Exception ex1) {
logger.info("错误信息:分组-->" + ex1);
}
return true;
}
/**
*
*
@ -2368,6 +2668,10 @@ public class SubServiceImpl implements SubService {
if (intMaxLen < intRollMinLen) {
return;
}
//产线
GGCR.setMscLineNo(e.getMscLineNo());
//轧制宽度
GGCR.setCal_Wid(intWid);
//轧制厚度
@ -2376,7 +2680,9 @@ public class SubServiceImpl implements SubService {
GGCR.setThk(e.getLtInfoGPreOrder().get(0).getThk());
//最大长度
GGCR.setCal_Len(intMaxLen);
GGCR.setLtInfoGPreOrder(e.getLtInfoGPreOrder());
gltGGrpCalRslt.add(GGCR);
} catch (Exception ex) {
logger.info("***计算结果异常:" + ex.getMessage());
@ -2408,6 +2714,8 @@ public class SubServiceImpl implements SubService {
&& Math.max(e.getWid(),f.getWid()) < 4900
&& e.getThk().compareTo(f.getThk()) == 0
&& e.getST_NO().equals(f.getST_NO())
&& e.getMscLineNo().equals(f.getMscLineNo())
&& ChkCombinationGrpFlag(e,f)
) {
//实例化计算结果数组
@ -2439,6 +2747,10 @@ public class SubServiceImpl implements SubService {
if (intMaxLen < intRollMinLen) {
return;
}
//产线
GGCR.setMscLineNo(e.getMscLineNo());
//轧制宽度
GGCR.setCal_Wid(intWid);
//轧制厚度
@ -2538,7 +2850,7 @@ public class SubServiceImpl implements SubService {
//TODO轧制方向轧制模式 没有其他值暂不考虑,之后数据完善后需要考虑
PmPlateCutLenBt PPCLB = plistPmPlateCutLenBtDO.stream().
filter(f -> f.getMscLineNo().equals(SInfo.getMscLineNo())
filter(f -> f.getMscLineNo().equals(p.getMscLineNo())
&& f.getBrrNeed().equals((p.getCal_Wid() > SInfo.getRemWid().intValue()) ? "1" : "0")
&& f.getPlateThickFrom().compareTo(p.getCal_Thk()) <= 0
&& f.getPlateThickTo().compareTo(p.getCal_Thk()) >= 0
@ -2621,7 +2933,7 @@ public class SubServiceImpl implements SubService {
}
//存在数据,判断热处理模式
if (plistPmThickAddvBtDO.stream().anyMatch(e -> e.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmThickAddvBtDO.stream().anyMatch(e -> e.getMscLineNo().equals(p.getMscLineNo())
&& e.getTolTypeCode().equals(strThkTolType)
// && e.getTolTypeCode().equals(p.getLtInfoGPreOrder().get(0).getInfoQdToPoOrderDO().getThkTolType())
&& e.getPlateThickFrom().compareTo(p.getLtInfoGPreOrder().get(0).getThk()) <= 0
@ -2631,7 +2943,7 @@ public class SubServiceImpl implements SubService {
)) {
if (p.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType()!=null &&
p.getLtInfoGPreOrder().get(0).getInfoPmContMscTechDO().getWholeHeatTreatmentType().contains("Q")) {
decThkAdd = plistPmThickAddvBtDO.stream().filter(e -> e.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(e -> e.getMscLineNo().equals(p.getMscLineNo())
&& e.getTolTypeCode().equals(strThkTolType)
// && e.getTolTypeCode().equals(p.getLtInfoGPreOrder().get(0).getInfoQdToPoOrderDO().getThkTolType())
&& e.getWholeHeatTreatmentType().equals("Q")
@ -2641,7 +2953,7 @@ public class SubServiceImpl implements SubService {
&& e.getCombinePlateWidthTo().compareTo(BigDecimal.valueOf(maxWidth.orElse(0) + maxAddWidth.orElse(0))) >= 0
).collect(Collectors.toList()).get(0).getThickAddv();
} else {
decThkAdd = plistPmThickAddvBtDO.stream().filter(e -> e.getMscLineNo().equals(SInfo.getMscLineNo())
decThkAdd = plistPmThickAddvBtDO.stream().filter(e -> e.getMscLineNo().equals(p.getMscLineNo())
&& e.getTolTypeCode().equals(strThkTolType)
// && e.getTolTypeCode().equals(p.getLtInfoGPreOrder().get(0).getInfoQdToPoOrderDO().getThkTolType())
&& e.getWholeHeatTreatmentType().equals("*")
@ -2673,7 +2985,7 @@ public class SubServiceImpl implements SubService {
//切边量
String finalStrWithSideFlag = strWithSideFlag;
//切边量
if (plistPmPlateTrimBtDO.stream().anyMatch(f -> f.getMscLineNo().equals(SInfo.getMscLineNo())
if (plistPmPlateTrimBtDO.stream().anyMatch(f -> f.getMscLineNo().equals(p.getMscLineNo())
&& f.getPlateThickFrom().compareTo(decThk) <= 0
&& f.getPlateThickTo().compareTo(decThk) >= 0
&& f.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(p.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -2684,7 +2996,7 @@ public class SubServiceImpl implements SubService {
&& f.getWidenTo().compareTo(decWidRate) >= 0
&& f.getWithSideFlag().equals(finalStrWithSideFlag)
)) {
intTrimWid = plistPmPlateTrimBtDO.stream().filter(f -> f.getMscLineNo().equals(SInfo.getMscLineNo())
intTrimWid = plistPmPlateTrimBtDO.stream().filter(f -> f.getMscLineNo().equals(p.getMscLineNo())
&& f.getPlateThickFrom().compareTo(decThk) <= 0
&& f.getPlateThickTo().compareTo(decThk) >= 0
&& f.getSmallPlateLenFrom().compareTo(BigDecimal.valueOf(p.getLtInfoGPreOrder().get(0).getLen())) <= 0
@ -2716,7 +3028,7 @@ public class SubServiceImpl implements SubService {
p.setEff_Len(intSumOrderLen + intSumPlateCutWid);
PmPlateCutLenBt PPCLB_Act = plistPmPlateCutLenBtDO.stream().
filter(f -> f.getMscLineNo().equals(SInfo.getMscLineNo())
filter(f -> f.getMscLineNo().equals(p.getMscLineNo())
&& f.getBrrNeed().equals((p.getCal_Wid() > SInfo.getRemWid().intValue()) ? "1" : "0")
&& f.getPlateThickFrom().compareTo(p.getCal_Thk()) <= 0
&& f.getPlateThickTo().compareTo(p.getCal_Thk()) >= 0
@ -2842,7 +3154,7 @@ public class SubServiceImpl implements SubService {
&& e.getSlabWidthFrom().compareTo(BigDecimal.valueOf(minWid)) <= 0
&& e.getSlabWidthTo().compareTo(BigDecimal.valueOf(minWid)) >= 0
&& e.getFurType().equals("C")
&& e.getRollLineNo().equals(SInfo.getMscLineNo().substring(SInfo.getMscLineNo().length() - 2))
&& e.getRollLineNo().equals(p.getMscLineNo().substring(p.getMscLineNo().length() - 2))
&& e.getCcType().equals("1")
).count() > 0) {
@ -2851,7 +3163,7 @@ public class SubServiceImpl implements SubService {
&& e.getSlabWidthFrom().compareTo(BigDecimal.valueOf(minWid)) <= 0
&& e.getSlabWidthTo().compareTo(BigDecimal.valueOf(minWid)) >= 0
&& e.getFurType().equals("C")
&& e.getRollLineNo().equals(SInfo.getMscLineNo().substring(SInfo.getMscLineNo().length() - 2))
&& e.getRollLineNo().equals(p.getMscLineNo().substring(p.getMscLineNo().length() - 2))
&& e.getCcType().equals("1")
).findFirst().orElse(null).getSlabMinLen().intValue();
@ -2860,7 +3172,7 @@ public class SubServiceImpl implements SubService {
&& e.getSlabWidthFrom().compareTo(BigDecimal.valueOf(minWid)) <= 0
&& e.getSlabWidthTo().compareTo(BigDecimal.valueOf(minWid)) >= 0
&& e.getFurType().equals("C")
&& e.getRollLineNo().equals(SInfo.getMscLineNo().substring(SInfo.getMscLineNo().length() - 2))
&& e.getRollLineNo().equals(p.getMscLineNo().substring(p.getMscLineNo().length() - 2))
&& e.getCcType().equals("1")
).findFirst().orElse(null).getSlabMaxLen().intValue();
@ -3155,7 +3467,7 @@ public class SubServiceImpl implements SubService {
SetPmPdSlab(SInfo,organizationId);//组板板坯表 命令板坯表 命令大板表 大板粗切位置表
SetPmPdBlockPos(organizationId);//组合子板位置表
SetPmPdContSum(organizationId);//组板合同总量表 命令参数表
SetPmSmallPltPos(SInfo.getMscLineNo(),organizationId);//组板小板位置表 命令小板表
SetPmSmallPltPos(organizationId);//组板小板位置表 命令小板表
// SetPmCmdSlab();//命令板坯表
// SetPmCmdLargePlt();//命令大板表
// SetPmCmdCont();//命令参数表
@ -3508,7 +3820,7 @@ public class SubServiceImpl implements SubService {
}
pmPdSlabDO.setOrderNoAxis(axleGPreOrder.getOrderNo());//TODO 轴合同号 暂时取第一个订单号
pmPdSlabDO.setMscLineNo(SInfo.getMscLineNo()); //TODO 产线号,暂时默认板坯产线号
pmPdSlabDO.setMscLineNo(ggcr.getMscLineNo()); //TODO 产线号,暂时默认板坯产线号
pmPdSlabDO.setTransFlag(BigDecimal.valueOf(0));
@ -3527,9 +3839,9 @@ public class SubServiceImpl implements SubService {
SetPmCmdSlab(pmPdSlabDO,resultPmProContProdAttrDO.get(),organizationId);//命令板坯表
SetPmCmdLargePlt(pmPdSlabDO, ggcr,resultPmContMscTechDO1.get(),resultPmProContProdAttrDO.get(),organizationId);//命令大板表
SetPmPdPlateCut(organizationId,formplateMode,SInfo.getMscLineNo().substring(SInfo.getMscLineNo().length()-2));//大板粗切位置表
SetPmPdPlateCut(organizationId,formplateMode,ggcr.getMscLineNo().substring(ggcr.getMscLineNo().length()-2));//大板粗切位置表
SetPmPdRecDTO(orderNoList,organizationId,SInfo.getMscLineNo(),ggcr.getVirtualSlabNo());//组板履历表
SetPmPdRecDTO(orderNoList,organizationId,ggcr.getMscLineNo(),ggcr.getVirtualSlabNo());//组板履历表
pmPdSlabDOList.add(pmPdSlabDO);
}
@ -3746,7 +4058,7 @@ public class SubServiceImpl implements SubService {
}
//组板小板位置表
public void SetPmSmallPltPos(String mscLineNo, Long organizationId) {
public void SetPmSmallPltPos( Long organizationId) {
for (int i = 0; i < gltSelGGrpCalRslt.size(); i++) {
GGrpCalRslt ggcr = gltSelGGrpCalRslt.get(i);
Integer smallPlateNum = 0;
@ -3789,7 +4101,7 @@ public class SubServiceImpl implements SubService {
pmSmallPltPosDO.setTenantId(organizationId);
// pmSmallPltPosDO.setObjectVersionNumber(1L);
SetPmCmdSmallPlt(pmSmallPltPosDO,resultPmProContProdAttrDO.get(),mscLineNo,organizationId);
SetPmCmdSmallPlt(pmSmallPltPosDO,resultPmProContProdAttrDO.get(),ggcr.getMscLineNo(),organizationId);
pmSmallPltPosDOList.add(pmSmallPltPosDO);
smallPlateNum += 1;
}
@ -3831,7 +4143,7 @@ public class SubServiceImpl implements SubService {
pmSmallPltPosDO.setTenantId(organizationId);
// pmSmallPltPosDO.setObjectVersionNumber(1L);
SetPmCmdSmallPlt(pmSmallPltPosDO,resultPmProContProdAttrDO.get(),mscLineNo,organizationId);
SetPmCmdSmallPlt(pmSmallPltPosDO,resultPmProContProdAttrDO.get(),ggcr.getMscLineNo(),organizationId);
pmSmallPltPosDOList.add(pmSmallPltPosDO);
smallPlateNum += 1;
}
@ -4561,46 +4873,46 @@ public class SubServiceImpl implements SubService {
public String SaveData(SlabInfoDO p, List<PmPdSlab> pmPdSlabDOList, List<PmPdPlateCut> pmPdPlateCutDOList, List<PmPdBlockPos> pmPdBlockPosDOList, List<PmPdContSum> pmPdContSumDOList, List<PmSmallPltPos> pmSmallPltPosDOList, List<PmCmdSlab> pmCmdSlabDOList, List<PmCmdLargePlt> pmCmdLargePltDOList, List<PmCmdCont> pmCmdContDOList, List<PmCmdSmallPlt> pmCmdSmallPltDOList, List<PmSubHis> plistpmSubHisDO, List<PmSubOrd> plistpmSubOrdDO, List<PmPdRecDTO> pmPdRecDTOList, Long organizationId) {
String strSubLog = "";
//抛合同事件
String bizId = pmPdRecDTOList.get(0).getKeyvalue1();
String key = String.format(PmPlateConstants.YIELD_EXEC_LOCK_KEY, organizationId.toString(), bizId);
if (redisHelper.hasKey(key)) {
throw new CommonException("pm.pm_pro_cont_043", bizId);
}
PdMatTypeStrategy pdMatTypeStrategy = PdMatTypeStrategyFactory.matchStrategy("S");
try {
// 抛合同组板事件
pmPdRecService.createEvent(organizationId, pmPdRecDTOList
, PdEventType.HP04, Constants.SYSTEM_PD_CODE, pdMatTypeStrategy.pdProgram());
redisHelper.strSet(key, "1", 30L, TimeUnit.SECONDS);
// 抛组板履历事件
List<PmPdRecDTO> pmPdRecs = new ArrayList<>();
CustomUserDetails userDetails = DetailsHelper.getUserDetails();
for (PmPdContSum contSum : pmPdContSumDOList) {
PmPdRecDTO pmPdRecDTO = new PmPdRecDTO();
pmPdRecDTO.setOrderNo(contSum.getOrderNo());
pmPdRecDTO.setEventMaker(userDetails == null ? "" : userDetails.getUserId().toString());
pmPdRecDTO.setMscLineNo(pmPdRecDTOList.get(0).getMscLineNo());
pmPdRecDTO.setKeyvalue1(bizId);
pmPdRecDTO.setKeyvalue1Desc(PmPdRecDTO.DESC_VIRTUAL_SLAB_NO);
pmPdRecDTO.setMatNo(bizId);
pmPdRecDTO.setQty(contSum.getOrderPlateNum());
pmPdRecs.add(pmPdRecDTO);
}
pmPdRecService.createEvent(organizationId, pmPdRecs, PdEventType.HP10,
Constants.SYSTEM_PD_CODE, "余材板坯组板");
System.out.println("抛合同组板事件 执行成功");
strSubLog = "-----抛合同组板事件 执行成功";
// 抛合同
} finally {
// 抛合同组板释放事件
pmPdRecService.createEvent(organizationId, pmPdRecDTOList
, PdEventType.HP05, Constants.SYSTEM_PD_CODE, pdMatTypeStrategy.pdProgram());
redisHelper.delKey(key);
}
// //抛合同事件
// String bizId = pmPdRecDTOList.get(0).getKeyvalue1();
// String key = String.format(PmPlateConstants.YIELD_EXEC_LOCK_KEY, organizationId.toString(), bizId);
// if (redisHelper.hasKey(key)) {
// throw new CommonException("pm.pm_pro_cont_043", bizId);
// }
//
// PdMatTypeStrategy pdMatTypeStrategy = PdMatTypeStrategyFactory.matchStrategy("S");
// try {
// // 抛合同组板事件
// pmPdRecService.createEvent(organizationId, pmPdRecDTOList
// , PdEventType.HP04, Constants.SYSTEM_PD_CODE, pdMatTypeStrategy.pdProgram());
// redisHelper.strSet(key, "1", 30L, TimeUnit.SECONDS);
// // 抛组板履历事件
// List<PmPdRecDTO> pmPdRecs = new ArrayList<>();
// CustomUserDetails userDetails = DetailsHelper.getUserDetails();
// for (PmPdContSum contSum : pmPdContSumDOList) {
// PmPdRecDTO pmPdRecDTO = new PmPdRecDTO();
// pmPdRecDTO.setOrderNo(contSum.getOrderNo());
// pmPdRecDTO.setEventMaker(userDetails == null ? "" : userDetails.getUserId().toString());
// pmPdRecDTO.setMscLineNo(pmPdRecDTOList.get(0).getMscLineNo());
// pmPdRecDTO.setKeyvalue1(bizId);
// pmPdRecDTO.setKeyvalue1Desc(PmPdRecDTO.DESC_VIRTUAL_SLAB_NO);
// pmPdRecDTO.setMatNo(bizId);
// pmPdRecDTO.setQty(contSum.getOrderPlateNum());
// pmPdRecs.add(pmPdRecDTO);
// }
// pmPdRecService.createEvent(organizationId, pmPdRecs, PdEventType.HP10,
// Constants.SYSTEM_PD_CODE, "余材板坯组板");
// System.out.println("抛合同组板事件 执行成功");
// strSubLog = "-----抛合同组板事件 执行成功";
// // 抛合同
//
//
// } finally {
// // 抛合同组板释放事件
// pmPdRecService.createEvent(organizationId, pmPdRecDTOList
// , PdEventType.HP05, Constants.SYSTEM_PD_CODE, pdMatTypeStrategy.pdProgram());
// redisHelper.delKey(key);
// }
if (plistpmSubHisDO.size() > 0) {
@ -4613,75 +4925,75 @@ public class SubServiceImpl implements SubService {
System.out.println("pmSubOrd表 保存成功");
strSubLog += "-----pmSubOrd表 保存成功";
}
////
if (pmPdSlabDOList.size() > 0) {
pmPdSlabRepository.batchInsertSelective(pmPdSlabDOList);
System.out.println("PmPdSlab表 保存成功");
strSubLog += "-----PmPdSlab表 保存成功";
}
if (pmPdPlateCutDOList.size() > 0) {
pmPdPlateCutRepository.batchInsertSelective(pmPdPlateCutDOList);
System.out.println("PmPdPlateCut 大板粗切位置 保存成功");
strSubLog += "-----PmPdPlateCut 大板粗切位置 保存成功";
}
if (pmPdBlockPosDOList.size() > 0) {
pmPdBlockPosRepository.batchInsertSelective(pmPdBlockPosDOList);
System.out.println("PmPdBlockPos 组合子板位置表 保存成功");
strSubLog += "-----PmPdBlockPos 组合子板位置表 保存成功";
}
if (pmPdContSumDOList.size() > 0) {
pmPdContSumRepository.batchInsertSelective(pmPdContSumDOList);
System.out.println("PmPdContSum 合同总量表 保存成功");
strSubLog += "-----PmPdContSum 合同总量表 保存成功";
}
if (pmSmallPltPosDOList.size() > 0) {
pmSmallPltPosRepository.batchInsertSelective(pmSmallPltPosDOList);
System.out.println("PmSmallPltPos 命令小板位置表 保存成功");
strSubLog += "-----PmSmallPltPos 命令小板位置表 保存成功";
}
if (pmCmdSlabDOList.size() > 0) {
pmCmdSlabRepository.batchInsertSelective(pmCmdSlabDOList);
System.out.println("PmCmdSlab 保存成功");
strSubLog += "-----PmCmdSlab 保存成功";
}
if (pmCmdLargePltDOList.size() > 0) {
pmCmdLargePltRepository.batchInsertSelective(pmCmdLargePltDOList);
System.out.println("pmCmdLargePltDO 命令大板 保存成功");
strSubLog += "-----pmCmdLargePltDO 命令大板 保存成功";
}
if (pmCmdContDOList.size() > 0) {
pmCmdContRepository.batchInsertSelective(pmCmdContDOList);
System.out.println("PmCmdCont 命令参数 保存成功");
strSubLog += "-----PmCmdCont 命令参数 保存成功";
}
if (pmCmdSmallPltDOList.size() > 0) {
pmCmdSmallPltRepository.batchInsertSelective(pmCmdSmallPltDOList);
System.out.println("PmCmdSmallPlt 命令小板表 保存成功");
strSubLog += "-----PmCmdSmallPlt 命令小板表 保存成功";
}
// 调用mm接口
// 查询MM_SLAB 信息获取板坯信息
PmPdSlabSplitDTO pmPdSlabSplitDTO = pmPdSlabRepository.selectMmSlabBySlabId(p.getSlabId(), p.getTenantId());
// 查询板坯信息表。第一次查询可能无值
PmPdSlabInfo pmPdSlabInfo = pmPdSlabInfoRepository.selectBySlabNo(p.getSlabNo(), p.getTenantId());
pmPdSlabInfo = buildPmPdSlabInfo(pmPdSlabSplitDTO, p.getSlabNo(), p.getMscLineNo(), p.getTenantId());
pmPdSlabInfoRepository.insertSelective(pmPdSlabInfo);
System.out.println("pmPdSlabInfo表 保存成功");
strSubLog += "-----pmPdSlabInfo表 保存成功";
// 轧钢模块“在制品材料管理封锁事件接口"
callMatStatusModify(pmPdSlabInfo);
System.out.println("mm模块接口 调用成功");
strSubLog += "-----mm模块接口 调用成功";
//抛合同
zbCtEventRec(organizationId, pmPdSlabDOList, pmCmdLargePltDOList, pmCmdSlabDOList, pmSmallPltPosDOList);
System.out.println("抛合同事件完成");
System.out.println("程序执行完成!");
strSubLog += "-----抛合同事件完成 -----程序执行完成!";
// if (pmPdSlabDOList.size() > 0) {
// pmPdSlabRepository.batchInsertSelective(pmPdSlabDOList);
// System.out.println("PmPdSlab表 保存成功");
// strSubLog += "-----PmPdSlab表 保存成功";
// }
// if (pmPdPlateCutDOList.size() > 0) {
// pmPdPlateCutRepository.batchInsertSelective(pmPdPlateCutDOList);
// System.out.println("PmPdPlateCut 大板粗切位置 保存成功");
// strSubLog += "-----PmPdPlateCut 大板粗切位置 保存成功";
// }
// if (pmPdBlockPosDOList.size() > 0) {
// pmPdBlockPosRepository.batchInsertSelective(pmPdBlockPosDOList);
// System.out.println("PmPdBlockPos 组合子板位置表 保存成功");
// strSubLog += "-----PmPdBlockPos 组合子板位置表 保存成功";
// }
// if (pmPdContSumDOList.size() > 0) {
// pmPdContSumRepository.batchInsertSelective(pmPdContSumDOList);
// System.out.println("PmPdContSum 合同总量表 保存成功");
// strSubLog += "-----PmPdContSum 合同总量表 保存成功";
// }
// if (pmSmallPltPosDOList.size() > 0) {
// pmSmallPltPosRepository.batchInsertSelective(pmSmallPltPosDOList);
// System.out.println("PmSmallPltPos 命令小板位置表 保存成功");
// strSubLog += "-----PmSmallPltPos 命令小板位置表 保存成功";
// }
// if (pmCmdSlabDOList.size() > 0) {
// pmCmdSlabRepository.batchInsertSelective(pmCmdSlabDOList);
// System.out.println("PmCmdSlab 保存成功");
// strSubLog += "-----PmCmdSlab 保存成功";
// }
// if (pmCmdLargePltDOList.size() > 0) {
// pmCmdLargePltRepository.batchInsertSelective(pmCmdLargePltDOList);
// System.out.println("pmCmdLargePltDO 命令大板 保存成功");
// strSubLog += "-----pmCmdLargePltDO 命令大板 保存成功";
// }
// if (pmCmdContDOList.size() > 0) {
// pmCmdContRepository.batchInsertSelective(pmCmdContDOList);
// System.out.println("PmCmdCont 命令参数 保存成功");
// strSubLog += "-----PmCmdCont 命令参数 保存成功";
// }
// if (pmCmdSmallPltDOList.size() > 0) {
// pmCmdSmallPltRepository.batchInsertSelective(pmCmdSmallPltDOList);
// System.out.println("PmCmdSmallPlt 命令小板表 保存成功");
// strSubLog += "-----PmCmdSmallPlt 命令小板表 保存成功";
// }
//
// // 调用mm接口
// // 查询MM_SLAB 信息获取板坯信息
// PmPdSlabSplitDTO pmPdSlabSplitDTO = pmPdSlabRepository.selectMmSlabBySlabId(p.getSlabId(), p.getTenantId());
// // 查询板坯信息表。第一次查询可能无值
// PmPdSlabInfo pmPdSlabInfo = pmPdSlabInfoRepository.selectBySlabNo(p.getSlabNo(), p.getTenantId());
//
// pmPdSlabInfo = buildPmPdSlabInfo(pmPdSlabSplitDTO, p.getSlabNo(), p.getMscLineNo(), p.getTenantId());
// pmPdSlabInfoRepository.insertSelective(pmPdSlabInfo);
// System.out.println("pmPdSlabInfo表 保存成功");
// strSubLog += "-----pmPdSlabInfo表 保存成功";
//
// // 轧钢模块“在制品材料管理封锁事件接口"
// callMatStatusModify(pmPdSlabInfo);
// System.out.println("mm模块接口 调用成功");
// strSubLog += "-----mm模块接口 调用成功";
//
//
// //抛合同
// zbCtEventRec(organizationId, pmPdSlabDOList, pmCmdLargePltDOList, pmCmdSlabDOList, pmSmallPltPosDOList);
// System.out.println("抛合同事件完成");
// System.out.println("程序执行完成!");
// strSubLog += "-----抛合同事件完成 -----程序执行完成!";
return strSubLog;
//

Loading…
Cancel
Save