修改计划

liweidong
liweidong-hj 1 day ago
parent b696e0750c
commit eee551485c
  1. 21
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderServiceImpl.java

@ -311,15 +311,16 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
return false;
}
String roamNoText = yieldOrder.getRoamNoNext();
if (StringUtils.isBlank(roamNoText)) {
// 取工艺路线,并不是下级B号
String primaryCraft = yieldOrder.getPrimaryCraft();
if (StringUtils.isBlank(primaryCraft)) {
yieldOrder.setValidationResult(YieldOrderEnum.VALIDATION_RESULT_LESS_DATA.getCode());
yieldOrder.setValidationTime(DateUtil.now());
yieldOrder.setValidationMomo("未找到ERP一级B号路线,请核查!");
this.updateById(yieldOrder);
}
// 验证烧结订单的b号描述,如果包含封接字样则验证子件,不包含则不验证
if (roamNoText.contains(YieldOrderConst.ROAMNO_TEXT_FJ)) {
if (primaryCraft.contains(YieldOrderConst.ROAMNO_TEXT_FJ)) {
try {
this.saveSubYieldOrder(yieldOrder, Boolean.FALSE, yieldOrder.getReceiveUser());
} catch (BusinessException e) {
@ -1228,10 +1229,11 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
//如果子件类型为空 或者是其他 不生成子件订单 直接跳过
continue;
}
//非石墨模子件,面积不允许为空
if (!yieldType.equals(YieldOrderEnum.YIELD_TYPE_6.getCode()) && dsPart.getArea() == null) {
String errMsg = "非石墨模子件面积为空无法创建生产订单!";
throw new BusinessException(errMsg);
//非石墨模玻璃饼子件,面积不允许为空
boolean isGraphiteMoldGlassPart = yieldType.equals(YieldOrderEnum.YIELD_TYPE_6.getCode())
|| yieldType.equals(YieldOrderEnum.YIELD_TYPE_3.getCode());
if (!isGraphiteMoldGlassPart && dsPart.getArea() == null) {
throw new BusinessException("非石墨模玻璃饼子件面积为空无法创建生产订单!");
}
//验证子件是否存在二级工艺路线
dsCraftList = dsCraftService.listByPartId(dsPart.getId());
@ -1242,7 +1244,10 @@ public class YieldOrderServiceImpl extends BaseServiceImpl<YieldOrderMapper, Yie
//获取金属件子件B号,如果未获取到,提示异常
String roamNo = null;
if (DsPartConstant.SIN_TER_TYPE_KT.equals(dsPartSub.getSinTerType()) || DsPartConstant.SIN_TER_TYPE_CZ.equals(dsPartSub.getSinTerType())) {
if (DsPartConstant.SIN_TER_TYPE_KT.equals(dsPartSub.getSinTerType()) ||
DsPartConstant.SIN_TER_TYPE_CZ.equals(dsPartSub.getSinTerType()) ||
DsPartConstant.SIN_TER_TYPE_BLB.equals(dsPartSub.getSinTerType())
) {
roamNo = yieldOrderClient.getChildRoamNoByPartCode(dsPartSub.getPartCode());
if (StringUtils.isBlank(roamNo)) {
String errMsg = MessageFormat.format("子件{}未找到对应B号,请在ERP核查子件一级路线!", dsPartSub.getPartCode());

Loading…
Cancel
Save