Procházet zdrojové kódy

bugFix 注释业务逻辑

xiahan před 1 rokem
rodič
revize
e227c78a2c

+ 7 - 1
bs-common/src/main/java/com/rongwei/safecommon/utils/SaveConstans.java

@@ -93,6 +93,13 @@ public class SaveConstans {
      * 低
      */
     public static final String LOW = "低";
+    /**
+     * 小圈加工的工序名称
+     */
+    public static final List<String> SMALL_CIRCLE_PROCESSING_PROCESS_NAME = new ArrayList<String>() {{
+        add("小卷成退");
+        add("小卷包装");
+    }};
 
     static {
         MERGE_PRODUCE_PROCESS.add("");
@@ -878,7 +885,6 @@ public class SaveConstans {
 
     }
 
-
     public static class CheckLevel {
         /**
          * B级

+ 18 - 2
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ReportCheckServiceImpl.java

@@ -30,6 +30,7 @@ import java.util.function.Function;
 import java.util.stream.Collectors;
 
 import static com.rongwei.safecommon.utils.SaveConstans.JobStatus.JOBSTATUS_TO_BE_END;
+import static com.rongwei.safecommon.utils.SaveConstans.SMALL_CIRCLE_PROCESSING_PROCESS_NAME;
 import static com.rongwei.safecommon.utils.SaveConstans.WorkInProgressStatus.*;
 import static com.rongwei.safecommon.utils.SaveConstans.WorkInProgressType.PASS;
 import static com.rongwei.safecommon.utils.SaveConstans.WorkInProgressType.REJECTS;
@@ -165,7 +166,22 @@ public class ReportCheckServiceImpl implements ReportCheckService {
             return R.error("无法获取在制品信息");
         }
         // 更新当前工序作业和作业明细的已检验卷数
-        currentProcessOperationMainDo.setCheckoutroll(currentProcessOperationMainDo.getCheckoutroll() + reportOutputDos.size());
+
+        // 当前工序名为小圈成退 检验卷数为 报工记录的BATCHNUMBER 数量
+        if (SMALL_CIRCLE_PROCESSING_PROCESS_NAME.contains(currentProcessOperationMainDo.getProcessname())) {
+            String batchnumber = reportRecordsDo.getBatchnumber();
+            if (StringUtils.isBlank(batchnumber)) {
+                log.error("报工记录的批次号为空");
+                throw new RuntimeException("报工记录的批次号为空");
+            }
+            // inputBatchNum
+            int count = (int)Arrays.stream(batchnumber.split(",")).distinct().filter(StringUtils::isNotBlank).count();
+            currentProcessOperationMainDo.setCheckoutroll(currentProcessOperationMainDo.getCheckoutroll() + count);
+            currentProcessOperationEqu.setCheckoutroll(currentProcessOperationEqu.getCheckoutroll() + count);
+        } else {
+            currentProcessOperationMainDo.setCheckoutroll(currentProcessOperationMainDo.getCheckoutroll() + 1);
+            currentProcessOperationEqu.setCheckoutroll(currentProcessOperationEqu.getCheckoutroll() + 1);
+        }
         apsProcessOperationService.updateById(currentProcessOperationMainDo);
         currentProcessOperationEqu.setCheckoutroll(currentProcessOperationEqu.getCheckoutroll() + reportOutputDos.size());
         currentProcessOperationEqu.setWorkstatus(JOBSTATUS_TO_BE_END);
@@ -325,7 +341,7 @@ public class ReportCheckServiceImpl implements ReportCheckService {
         // 备份
         apsProductionOrderService.saveHistoryInfo(productionOrderDo.getId());
         // modify at [ 2024-08-08 11:09:33 ] by xh: 项目经理因需求原因不在执行如下逻辑直接结束
-        if (true){
+        if (true) {
             return;
         }
         // 坯料计划撤回发布