浏览代码

aps-坯料计划校验增加输出成品校验长度

sucheng 1 年之前
父节点
当前提交
b8e3b75c41

+ 17 - 3
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsBlankOrderServiceImpl.java

@@ -556,8 +556,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
                     apsProcessOperationProcessEqu.setSoftconflictdes(process.getSoftconflictdes());
                     apsProcessOperationProcessEqu.setDeleted("0");
                     apsProcessOperationProcessEqu.setUnfinishroll(apsProcessOperationProcessEqu.getPlanprocessrall());
-                    apsProcessOperationProcessEqu.setPreviousprocessesids(CollUtil.join(process.getPreviousProcessesIds(),","));
-                    apsProcessOperationProcessEqu.setNextprocessesids(CollUtil.join(process.getNextProcessesIds(),","));
+                    apsProcessOperationProcessEqu.setPreviousprocessesids(CollUtil.join(process.getPreviousProcessesIds(), ","));
+                    apsProcessOperationProcessEqu.setNextprocessesids(CollUtil.join(process.getNextProcessesIds(), ","));
                     apsProcessOperationProcessEquDos.add(apsProcessOperationProcessEqu);
                 }
                 // 合并生产工序
@@ -1604,6 +1604,12 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
             if (!haveProductDetail && apsProcessOutputProductDo.getPlanoutputonerollweight().compareTo(new BigDecimal(0)) > 0) {
                 return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 已修改或已删除,并已开工,计划输出订单重量 不能大于 0");
             }
+            //如果输出成品技术要求的坯料外观类型是铝板或铝锭,并且长度为空,则提示:输出成品是板锭和铝板时长度必填
+            if (ObjectUtil.isNotEmpty(apsProcessOutputProductDo.getBlankappearance())
+                    && Arrays.asList(SaveConstans.BlankAppearanceType.ALUMINUM_PLATE, SaveConstans.BlankAppearanceType.ALUMINUM_INGOT).contains(apsProcessOutputProductDo.getBlankappearance())
+                    && ObjectUtil.isEmpty(apsProcessOutputProductDo.getProlength())) {
+                return R.error("输出成品:" + apsProcessOutputProductDo.getProductname() + " 是板锭和铝板时长度必填");
+            }
         }
 
         /**
@@ -1941,6 +1947,13 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
             if (!haveProductDetail && apsProcessOutputProductDo.getPlanoutputonerollweight().compareTo(new BigDecimal(0)) > 0) {
                 return R.error("第" + j + "个坯料计划 输出成品:" + apsProcessOutputProductDo.getProductname() + " 已修改或已删除,并已开工,计划输出订单重量 不能大于 0");
             }
+
+            //如果输出成品技术要求的坯料外观类型是铝板或铝锭,并且长度为空,则提示:输出成品是板锭和铝板时长度必填
+            if (ObjectUtil.isNotEmpty(apsProcessOutputProductDo.getBlankappearance())
+                    && Arrays.asList(SaveConstans.BlankAppearanceType.ALUMINUM_PLATE, SaveConstans.BlankAppearanceType.ALUMINUM_INGOT).contains(apsProcessOutputProductDo.getBlankappearance())
+                    && ObjectUtil.isEmpty(apsProcessOutputProductDo.getProlength())) {
+                return R.error("第" + j + "个坯料计划 输出成品:" + apsProcessOutputProductDo.getProductname() + " 是板锭和铝板时长度必填");
+            }
         }
 
         /**
@@ -2303,7 +2316,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
         //是否正在排程
         ApsUtils.checkScheduling(null);
 
-        //
+        //判断当前坯料计划是否存在排程备份
+
 
         return null;
     }