2025-02-17

main
sunhao 6 days ago
parent db3d3124c6
commit de859d312a

@ -156,25 +156,25 @@ public class SubController {
//region ***配置项参数***
//不可自动组板订单信息
private static List<PmIrsubableContDO> plistpmIrsubableContDO=new ArrayList<>();
private static List<PmIrsubableContDO> plistpmIrsubableContDO = new ArrayList<>();
//不可自动组板板坯信息
private static List<PmIrsubableSlabDO> plistpmIrsubableSlabDO=new ArrayList<>();
private static List<PmIrsubableSlabDO> plistpmIrsubableSlabDO = new ArrayList<>();
//自动替代配置参数
private static List<PmAutoSubSettingDO> plistpmAutoSubSettingDO=new ArrayList<>();
private static List<PmAutoSubSettingDO> plistpmAutoSubSettingDO = new ArrayList<>();
//钢种信息配置
private static List<PmRetainStDO> plistpmRetainStDO=new ArrayList<>();
private static List<PmRetainStDO> plistpmRetainStDO = new ArrayList<>();
//仓库信息配置
private static List<PmRetainStackDO> plistpmRetainStackDO=new ArrayList<>();
private static List<PmRetainStackDO> plistpmRetainStackDO = new ArrayList<>();
//自动替代日志
private static List<PmSubLogDO> plistpmSubLogDO=new ArrayList<>();
private static List<PmSubLogDO> plistpmSubLogDO = new ArrayList<>();
//记录已被使用的订单号
private static List<GPreOrder> plistOrdHis=new ArrayList<>();
private static List<GPreOrder> plistOrdHis = new ArrayList<>();
//endregion
@ -197,7 +197,7 @@ public class SubController {
System.out.println(ltInt.get(i));
}
JsonData xx= new JsonData();
JsonData xx = new JsonData();
xx.setCode(0);
xx.setData(ltInt);
xx.setMsg("成功");
@ -229,47 +229,47 @@ public class SubController {
logger.info("***初次分组数量*** " + gltGrpOrderFir.size());
//被使用的订单数据实例化
plistOrdHis=new ArrayList<>();
plistOrdHis = new ArrayList<>();
//循环板坯
plistSlab.forEach(p -> {
logger.info("*************板坯开始{}************* ", p.getSlabNo());
logger.info("***板坯信息:{} 厚宽长:{}*{}*{} ", p.getSlabNo(), p.getSlabActThk(), p.getSlabActWid(), p.getSlabActLen());
logger.info("*************板坯开始{}************* ", p.getSlabNo());
logger.info("***板坯信息:{} 厚宽长:{}*{}*{} ", p.getSlabNo(), p.getSlabActThk(), p.getSlabActWid(), p.getSlabActLen());
// 判断板坯的长度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActLen().compareTo(plistpmAutoSubSettingDO.get(0).getMatLenMin()) < 0 && p.getSlabActLen().compareTo(plistpmAutoSubSettingDO.get(0).getMatLenMax()) > 0) {
logger.info("***板坯信息被排除:{} 长度不在范围内 ", p.getSlabNo() );
return;
}
// 判断板坯的长度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActLen().compareTo(plistpmAutoSubSettingDO.get(0).getMatLenMin()) < 0 && p.getSlabActLen().compareTo(plistpmAutoSubSettingDO.get(0).getMatLenMax()) > 0) {
logger.info("***板坯信息被排除:{} 长度不在范围内 ", p.getSlabNo());
return;
}
// 判断板坯的宽度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActWid().compareTo(plistpmAutoSubSettingDO.get(0).getMatWidthMin()) < 0 && p.getSlabActWid().compareTo(plistpmAutoSubSettingDO.get(0).getMatWidthMax()) > 0) {
logger.info("***板坯信息被排除:{} 宽度不在范围内 ", p.getSlabNo() );
return;
}
// 判断板坯的宽度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActWid().compareTo(plistpmAutoSubSettingDO.get(0).getMatWidthMin()) < 0 && p.getSlabActWid().compareTo(plistpmAutoSubSettingDO.get(0).getMatWidthMax()) > 0) {
logger.info("***板坯信息被排除:{} 宽度不在范围内 ", p.getSlabNo());
return;
}
// 判断板坯的厚度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActThk().compareTo(plistpmAutoSubSettingDO.get(0).getMatThickMin()) < 0 && p.getSlabActThk().compareTo(plistpmAutoSubSettingDO.get(0).getMatThickMax()) > 0) {
logger.info("***板坯信息被排除:{} 厚度不在范围内 ", p.getSlabNo() );
return;
}
// 判断板坯的厚度是否在plistpmAutoSubSettingDO配置的范围内
if (p.getSlabActThk().compareTo(plistpmAutoSubSettingDO.get(0).getMatThickMin()) < 0 && p.getSlabActThk().compareTo(plistpmAutoSubSettingDO.get(0).getMatThickMax()) > 0) {
logger.info("***板坯信息被排除:{} 厚度不在范围内 ", p.getSlabNo());
return;
}
//判断plistpmIrsubableSlabDO是否包含P.SlabNO范围内
if (plistpmIrsubableSlabDO.stream().anyMatch(x -> x.getSlabNo().equals(p.getSlabNo()))) {
logger.info("***板坯信息被排除:{} 不可组板 ", p.getSlabNo() );
return;
}
//判断plistpmIrsubableSlabDO是否包含P.SlabNO范围内
if (plistpmIrsubableSlabDO.stream().anyMatch(x -> x.getSlabNo().equals(p.getSlabNo()))) {
logger.info("***板坯信息被排除:{} 不可组板 ", p.getSlabNo());
return;
}
//判断plistpmRetainStDO是否包含P的钢种判断这个板坯的钢种是否可组板
if (plistpmRetainStDO.stream().anyMatch(x -> x.getStNo().equals(p.getStNo()))) {
logger.info("***板坯信息被排除:{} 不可组板 ", p.getSlabNo() );
return;
}
//判断plistpmRetainStDO是否包含P的钢种判断这个板坯的钢种是否可组板
if (plistpmRetainStDO.stream().anyMatch(x -> x.getStNo().equals(p.getStNo()))) {
logger.info("***板坯信息被排除:{} 不可组板 ", p.getSlabNo());
return;
}
try {
gltGCalGrp = new ArrayList<>();
//二次分组
SetGrpDataBySlab(p);
try {
gltGCalGrp = new ArrayList<>();
//二次分组
SetGrpDataBySlab(p);
logger.info("***二次分组数量*** " + gltGCalGrp.size());
@ -289,21 +289,22 @@ public class SubController {
gltSelGGrpCalRslt = new ArrayList<>();
SetGroupCalRslt(p);
//存储数据,组板结果
SaveHisData(p);
SetGroupCalRslt(p);
logger.info("结果数据板坯号:{};数量:{}", p.getSlabNo(), gltGGrpCalRslt.size());
}
if (gltSelGGrpCalRslt.size() > 0) {
now = new Date();
//数据整理
SetSaveDate(p);
//开启事务
TransactionStatus transactionStatus = transactionService.begin();
try {
//存储数据,组板结果
SaveHisData(p);
//保存数据
SaveData();
// bOffTaskLineService.saveOffTask(bPlanHeadAndLineVos);
//bOffTaskLineService.saveOffTask(bPlanHeadAndLineVos);
transactionService.commit(transactionStatus);
} catch (Exception e) {
logger.error("保存事务回滚:" + p.getSlabNo(), e);
@ -330,12 +331,13 @@ public class SubController {
//存储数据,组板结果
plistpmSubHisDO.forEach(e -> {
String strMaxSeq = subService.GetMaxSeq(SInfo.getPono());
//TODO:未获取轧制命令最大序号
int intSeq = 1;//Integer.parseInt(subService.GetMaxSeq().substring(subService.GetMaxSeq().length() - 4));
int intSeq = Integer.parseInt(strMaxSeq.substring(strMaxSeq.length() - 3));
String virtualSlabNo = generateVirtualSlabNoSave(e.getVirtualSlabNo(), intSeq);
String strGuid = e.getVirtualSlabNo();
String strGuid = e.getRelKey();
//获取虚拟板坯号
e.setVirtualSlabNo(virtualSlabNo);
@ -343,11 +345,11 @@ public class SubController {
subService.InsertPmSubHisDO(e);
//删选plistpmSubOrdDO中虚拟板坯号等于strGuid的信息
plistpmSubOrdDO.stream()
.filter(f -> !f.getVirtualSlabNo().equals(strGuid))
.filter(f -> !f.getRelKey().equals(strGuid))
.collect(Collectors.toList()).forEach(m -> {
m.setVirtualSlabNo(virtualSlabNo);
subService.InsertPmSubOrdDO(m);
});
});
});
@ -623,8 +625,7 @@ public class SubController {
logger.info("30:订单合约信息信息:" + plistQdToPoOrderDO.size());
logger.info("获取基础数据完成");
if (plistpmAutoSubSettingDO.size()>0)
{
if (plistpmAutoSubSettingDO.size() > 0) {
logger.info("配置信息-》 是否启动 {}", plistpmAutoSubSettingDO.get(0).getIsStartFlag());
logger.info("配置信息-》 启动时间范围 {}~{}", plistpmAutoSubSettingDO.get(0).getStartTime(), plistpmAutoSubSettingDO.get(0).getEndTime());
logger.info("配置信息-》 优先模式 {}", plistpmAutoSubSettingDO.get(0).getPriMode());
@ -659,9 +660,9 @@ public class SubController {
public void SetPreData() {
//实例化订单列表
gltOrder =new ArrayList<>();
gltOrder = new ArrayList<>();
//实例化订单分组
gltGrpOrderFir=new ArrayList<>();
gltGrpOrderFir = new ArrayList<>();
//订单数据处理
SetOrderLackData();
@ -1359,13 +1360,12 @@ public class SubController {
PmProContProdAttrDO finalPpcpa = ppcpa;
if (plistpmAutoSubSettingDO.stream().filter(p ->
p.getOrderWidthMin().intValue() <= finalPpcpa.getOrderWidth().intValue()
&& finalPpcpa.getOrderWidth().intValue() <= p.getOrderWidthMax().intValue()
&& p.getOrderThickMin().intValue() <= finalPpcpa.getOrderThick().intValue()
&& finalPpcpa.getOrderThick().intValue() <= p.getOrderThickMax().intValue()
&& p.getDelivyDateFrom().compareTo(finalPpcpa.getDelivyDate())<= 0
&& finalPpcpa.getDelivyDate().compareTo(p.getDelivyDateTo())<=0).count()<=0)
{
logger.info("订单:{} 不可自动组板,尺寸厚度{},宽度{},交货期{} 不在范围内", i.getOrderNo(),finalPpcpa.getOrderThick(), finalPpcpa.getOrderWidth(),new SimpleDateFormat("yyyy-MM-dd").format(finalPpcpa.getDelivyDate()));
&& finalPpcpa.getOrderWidth().intValue() <= p.getOrderWidthMax().intValue()
&& p.getOrderThickMin().intValue() <= finalPpcpa.getOrderThick().intValue()
&& finalPpcpa.getOrderThick().intValue() <= p.getOrderThickMax().intValue()
&& p.getDelivyDateFrom().compareTo(finalPpcpa.getDelivyDate()) <= 0
&& finalPpcpa.getDelivyDate().compareTo(p.getDelivyDateTo()) <= 0).count() <= 0) {
logger.info("订单:{} 不可自动组板,尺寸厚度{},宽度{},交货期{} 不在范围内", i.getOrderNo(), finalPpcpa.getOrderThick(), finalPpcpa.getOrderWidth(), new SimpleDateFormat("yyyy-MM-dd").format(finalPpcpa.getDelivyDate()));
return;
}
@ -1504,7 +1504,7 @@ public class SubController {
GGCR.setCal_Len(intMaxLen);
GGCR.setLtInfoGPreOrder(e.getLtInfoGPreOrder());
gltGGrpCalRslt.add(GGCR);
}catch (Exception ex){
} catch (Exception ex) {
logger.info("***计算结果异常:" + ex.getMessage());
}
});
@ -1534,19 +1534,19 @@ public class SubController {
int intOrdCount = p.getCal_Len() / e.getLen();
if (ltOrder.stream().filter(f -> f.equals(e.getOrderNo())).count() == intOrdCount) {
return;
}
if (ltOrder.stream().filter(f -> f.equals(e.getOrderNo())).count() == intOrdCount) {
return;
}
//被使用过的订单ID排除在外
if (plistOrdHis.stream().filter(f -> f.getIDValue()==e.getIDValue()).count()>0) {
return;
}
//被使用过的订单ID排除在外
if (plistOrdHis.stream().filter(f -> f.getIDValue() == e.getIDValue()).count() > 0) {
return;
}
ltOrder.add(e.getOrderNo());//添加订单号
ltValues.add(e.getIDValue());//价值
ltweights.add(e.getLen());//长度
});
ltOrder.add(e.getOrderNo());//添加订单号
ltValues.add(e.getIDValue());//价值
ltweights.add(e.getLen());//长度
});
// 生成 values 和 weights 数组
long[] values = new long[ltValues.size()];
@ -1742,75 +1742,75 @@ public class SubController {
}
//判断结算结果长度和成材率是否可用
gltGGrpCalRslt.parallelStream().forEach(p -> {
try {
//没有成材率
if (p.getRate() == null) {
p.setIntUseFlg(0);
return;
}
//成材率大于90%
if (p.getRate().compareTo(BigDecimal.valueOf(0.9)) <= 0) {
p.setIntUseFlg(0);
return;
}
int minWid = Math.min(p.getVirtualSlab_Wid(), p.getVirtualSlab_Len());
int maxLen = Math.max(p.getVirtualSlab_Wid(), p.getVirtualSlab_Len());
// 板坯厚度起止SLAB_THICK_FROM/TO包含余坯实际厚度;
// 板坯宽度起止SLAB_WIDTH_FROM/TO包含余坯实际宽度;
// 加热炉类型为C轧制产线号等于产线号后两位连铸机类型等于1
if (plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).count() > 0) {
int intSlanLenMin = plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).findFirst().orElse(null).getSlabMinLen().intValue();
int intSlanLenMax = plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).findFirst().orElse(null).getSlabMaxLen().intValue();
//不能小于最小值
if (maxLen <= intSlanLenMin) {
p.setIntUseFlg(0);
return;
}
//不能大于最大值
if (maxLen >= intSlanLenMax) {
p.setIntUseFlg(0);
return;
}
} else {
//数据不可用
p.setIntUseFlg(0);
return;
}
//数据可用
p.setIntUseFlg(1);
} catch (Exception e){
log.error("new2", e);
return;
}
try {
//没有成材率
if (p.getRate() == null) {
p.setIntUseFlg(0);
return;
}
//成材率大于90%
if (p.getRate().compareTo(BigDecimal.valueOf(0.9)) <= 0) {
p.setIntUseFlg(0);
return;
}
int minWid = Math.min(p.getVirtualSlab_Wid(), p.getVirtualSlab_Len());
int maxLen = Math.max(p.getVirtualSlab_Wid(), p.getVirtualSlab_Len());
// 板坯厚度起止SLAB_THICK_FROM/TO包含余坯实际厚度;
// 板坯宽度起止SLAB_WIDTH_FROM/TO包含余坯实际宽度;
// 加热炉类型为C轧制产线号等于产线号后两位连铸机类型等于1
if (plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).count() > 0) {
int intSlanLenMin = plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).findFirst().orElse(null).getSlabMinLen().intValue();
int intSlanLenMax = plistPmSlabSpecBtDO.stream().filter(e -> e.getSlabThickFrom().compareTo(p.getVirtualSlab_Thk()) <= 0
&& e.getSlabThickTo().compareTo(p.getVirtualSlab_Thk()) >= 0
&& 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.getCcType().equals("1")
).findFirst().orElse(null).getSlabMaxLen().intValue();
//不能小于最小值
if (maxLen <= intSlanLenMin) {
p.setIntUseFlg(0);
return;
}
//不能大于最大值
if (maxLen >= intSlanLenMax) {
p.setIntUseFlg(0);
return;
}
} else {
//数据不可用
p.setIntUseFlg(0);
return;
}
//数据可用
p.setIntUseFlg(1);
} catch (Exception e) {
log.error("new2", e);
return;
}
});
//选择最优结果
@ -1909,6 +1909,7 @@ public class SubController {
// 生成虚拟板坯号
pmSubOrdDO.setVirtualSlabNo(virtualSlabNo); // 虚拟板坯号
pmSubOrdDO.setRelKey(virtualSlabNo); // 关系号
pmSubOrdDO.setSlabNo(SInfo.getSlabNo()); // 板坯号
// 手动为每个字段赋值
@ -1988,14 +1989,13 @@ public class SubController {
}
// 生成虚拟板坯号的方法保存
private String generateVirtualSlabNoSave(String pono ,int i) {
private String generateVirtualSlabNoSave(String pono, int i) {
return pono + "S9" + String.format("%03d", i+1);
return pono + "S9" + String.format("%03d", i + 1);
}
//设置保存数据
public void SetSaveDate(SlabInfoDO SInfo) {
SetPmPdSlab(SInfo);//组板板坯表 命令板坯表 命令大板表
@ -2054,20 +2054,20 @@ public class SubController {
String erpUtSpec2 = "";
String erpUtSpec3 = "";
if (resultQdToPoOrderDO.isPresent()) {
erpUtSpec1 = nvl(resultQdToPoOrderDO.get().getErpUtSpec1(),"");
erpUtSpec2 = nvl(resultQdToPoOrderDO.get().getErpUtSpec2(),"");
erpUtSpec3 = nvl(resultQdToPoOrderDO.get().getErpUtSpec3(),"");
if(!erpUtSpec1.isEmpty()){
erpUtSpec1 = nvl(resultQdToPoOrderDO.get().getErpUtSpec1(), "");
erpUtSpec2 = nvl(resultQdToPoOrderDO.get().getErpUtSpec2(), "");
erpUtSpec3 = nvl(resultQdToPoOrderDO.get().getErpUtSpec3(), "");
if (!erpUtSpec1.isEmpty()) {
if (!ultDetectMethodCodeBuilder.toString().contains(erpUtSpec1)) {
ultDetectMethodCodeBuilder.append(erpUtSpec1).append("-");
}
}
if(!erpUtSpec2.isEmpty()){
if (!erpUtSpec2.isEmpty()) {
if (!ultDetectMethodCodeBuilder.toString().contains(erpUtSpec2)) {
ultDetectMethodCodeBuilder.append(erpUtSpec2).append("-");
}
}
if(!erpUtSpec3.isEmpty()){
if (!erpUtSpec3.isEmpty()) {
if (!ultDetectMethodCodeBuilder.toString().contains(erpUtSpec3)) {
ultDetectMethodCodeBuilder.append(erpUtSpec3).append("-");
}
@ -2165,7 +2165,7 @@ public class SubController {
Long slabPdQty = plistPmPdSlabInfoDO.stream()
.filter(item -> item != null && ggcr != null && ggcr.getSlabNo() != null && ggcr.getSlabNo().equals(item.getSlabNo()))
.count();
if(slabPdQty > 0){
if (slabPdQty > 0) {
Optional<PmPdSlabInfoDO> resultPmPdSlabInfoDO = plistPmPdSlabInfoDO.stream()
.filter(item -> ggcr.getSlabNo().equals(item.getSlabNo()))
.findFirst();
@ -2396,7 +2396,7 @@ public class SubController {
Long slabPdQty = plistPmPdSlabInfoDO.stream()
.filter(item -> item != null && pmPdSlabDO != null && pmPdSlabDO.getSlabNo() != null && pmPdSlabDO.getSlabNo().equals(item.getSlabNo()))
.count();
if(slabPdQty>0){
if (slabPdQty > 0) {
Optional<PmPdSlabInfoDO> resultPmPdSlabInfoDO = plistPmPdSlabInfoDO.stream()
.filter(item -> pmPdSlabDO.getSlabNo().equals(item.getSlabNo()))
.findFirst();
@ -2611,19 +2611,19 @@ public class SubController {
pmCmdContDO.setHeadCut(pmPdSlabDOItem.get().getHeadCut().intValue());
pmCmdContDO.setTailCut(pmPdSlabDOItem.get().getTailCut().intValue());
pmCmdContDO.setCutModeCode(pmContMscTechDOItem.get().getAdModeCode());
if(pmContMscTechDOItem.get().getGFlag() != null){
if (pmContMscTechDOItem.get().getGFlag() != null) {
pmCmdContDO.setGFlag(String.valueOf(pmContMscTechDOItem.get().getGFlag()));
}
if(pmContMscTechDOItem.get().getCsFlag() != null){
if (pmContMscTechDOItem.get().getCsFlag() != null) {
pmCmdContDO.setCsFlag(String.valueOf(pmContMscTechDOItem.get().getCsFlag()));
}
if(pmContMscTechDOItem.get().getDssFlag() != null){
if (pmContMscTechDOItem.get().getDssFlag() != null) {
pmCmdContDO.setDssFlag(String.valueOf(pmContMscTechDOItem.get().getDssFlag()));
}
if(pmContMscTechDOItem.get().getDsFlag() != null){
if (pmContMscTechDOItem.get().getDsFlag() != null) {
pmCmdContDO.setDsFlag(String.valueOf(pmContMscTechDOItem.get().getDsFlag()));
}
if(pmContMscTechDOItem.get().getSsFlag() != null){
if (pmContMscTechDOItem.get().getSsFlag() != null) {
pmCmdContDO.setSsFlag(String.valueOf(pmContMscTechDOItem.get().getSsFlag()));
}
pmCmdContDO.setHeatTreatMode(pmContMscTechDOItem.get().getHeatTreatMode());
@ -2668,8 +2668,8 @@ public class SubController {
System.out.println("PmPdSlab表一保存成功");
subService.batchInsertPmCmdSlab(pmCmdSlabDOList);
System.out.println("PmCmdSlab表二保存成功");
subService.batchInsertPmCmdLargePlt(pmCmdLargePltDOList);
System.out.println("pmCmdLargePltDO 命令大板 保存成功");
subService.batchInsertPmCmdLargePlt(pmCmdLargePltDOList);
System.out.println("pmCmdLargePltDO 命令大板 保存成功");
subService.batchInsertPmPdPlateCut(pmPdPlateCutDOList);
System.out.println("PmPdPlateCut 大板粗切位置表 保存成功");
subService.batchInsertPmPdBlockPos(pmPdBlockPosDOList);

@ -141,4 +141,6 @@ public interface SubMapper extends BaseMapper<Map> {
BigDecimal getMaxPmCmdContId();
void insertPmCmdCont(PmCmdContDO pmCmdContDO);
String GetMaxSeq(String pono);
}

@ -119,4 +119,6 @@ public interface SubService {
void batchInsertPmCmdSmallPlt(List<PmCmdSmallPltDO> pmCmdSmallPltDOList);
void batchInsertPmCmdCont(List<PmCmdContDO> pmCmdContDOList);
String GetMaxSeq(String pono);
}

@ -355,5 +355,10 @@ public class SubServiceImpl implements SubService {
}
}
@Override
public String GetMaxSeq(String pono) {
return subMapper.GetMaxSeq(pono);
}
}

@ -277,6 +277,12 @@
</select>
<select id="GetMaxSeq" resultType="java.lang.String" parameterType="java.lang.String">
SELECT NVL(MAX(VIRTUAL_SLAB_NO), 0)
FROM PM_PD_SLAB
WHERE PONO=#{pono}
</select>
<insert id="InsertPmSubOrdDO" parameterType="net.xdclass.shopmanager.model.PmSubOrdDO" keyProperty="id">
INSERT INTO PM_SUB_ORD (ORDER_NO, VIRTUAL_SLAB_NO, SG_SIGN, ST_NO, ORDER_THICK, ORDER_WIDTH,
LEN_AIM, POS_X, POS_Y, DELIVY_DATE, AXIS_ORD, LACK_NUM, OVER_NUM,

Loading…
Cancel
Save