Browse Source

aps-报工相关冗余字段

sucheng 3 months ago
parent
commit
f37f65359a

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

@@ -1270,6 +1270,23 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
             String jccs = apsReportCheckoutService.selectJccsByReportId(apsReportRecordsDo.getId());
             apsReportRecordsDo.setReportjgcs(jgcs);
             apsReportRecordsDo.setReportjccs(jccs);
+
+            //是否坯料工序!=是,并且是第一道工序,并且输入批次号不为空,并且在线上在制品可以找到对应的检验等级
+            if (!apsProcessOperationDo.getIfblankprocess().equals("是")
+                    && StringUtils.isBlank(apsProcessOperationProcessEquDo.getPreviousprocessesids())
+                    && StringUtils.isNotBlank(nowReportRecordsDo.getBatchnumber())) {
+                //定义检验等级排序,从大->小
+                List<String> checkLevelOrder = Arrays.asList("待判", "不合格", "BC级", "B级");
+                List<String> inputBatchNumber = Arrays.asList(nowReportRecordsDo.getBatchnumber().split(","));
+                List<ApsWorkInProgressInventoryDo> inputList = apsWorkInProgressInventoryService.list(new LambdaQueryWrapper<ApsWorkInProgressInventoryDo>()
+                        .in(ApsWorkInProgressInventoryDo::getBatchnumber, inputBatchNumber)
+                        .isNotNull(ApsWorkInProgressInventoryDo::getInspectionlevel)
+                        .ne(ApsWorkInProgressInventoryDo::getInspectionlevel, ""));
+                if (!inputList.isEmpty()) {
+                    ApsWorkInProgressInventoryDo minWorkInProgress = inputList.stream().min(Comparator.comparingInt(a -> checkLevelOrder.indexOf(a.getInspectionlevel()))).orElse(null);
+                    apsReportRecordsDo.setBlanklevel(minWorkInProgress.getInspectionlevel());
+                }
+            }
             this.updateById(apsReportRecordsDo);
 
             OrganizationCodeAndDeviceCodeVo organizationCodeAndDeviceCodeVo = this.baseMapper.selectOrganizationCodeAndDeviceCode(apsProcessOperationProcessEquDo.getProcessdeviceid());

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

@@ -151,20 +151,6 @@ public class ReportCheckServiceImpl implements ReportCheckService {
             //如果是否坯料工序=是,坯料等级=检验等级
             if (reportRecordsDo.getReportifblankprocess().equals("是")) {
                 reportUpdateWrapper.set(ApsReportRecordsDo::getBlanklevel, checkLevel);
-            } else {
-                //是否坯料工序!=是,并且是第一道工序,并且输入批次号不为空,并且在线上在制品可以找到对应的检验等级
-                if (StringUtils.isBlank(currentProcessOperationEqu.getPreviousprocessesids())
-                        && StringUtils.isNotBlank(reportRecordsDo.getBatchnumber())) {
-                    List<String> inputBatchNumber = Arrays.asList(reportRecordsDo.getBatchnumber().split(","));
-                    List<ApsWorkInProgressInventoryDo> inputList = apsWorkInProgressInventoryService.list(new LambdaQueryWrapper<ApsWorkInProgressInventoryDo>()
-                            .in(ApsWorkInProgressInventoryDo::getBatchnumber, inputBatchNumber)
-                            .isNotNull(ApsWorkInProgressInventoryDo::getInspectionlevel)
-                            .ne(ApsWorkInProgressInventoryDo::getInspectionlevel, ""));
-                    if (!inputList.isEmpty()) {
-                        ApsWorkInProgressInventoryDo minWorkInProgress = inputList.stream().min(Comparator.comparingInt(a -> checkLevelOrder.indexOf(a.getInspectionlevel()))).orElse(null);
-                        reportUpdateWrapper.set(ApsReportRecordsDo::getBlanklevel, minWorkInProgress.getInspectionlevel());
-                    }
-                }
             }
             //查询不合格的输出
             List<ApsReportOutputDo> unQualifiedList = reportOutputDos.stream().filter(item -> item.getQualified().equals("否")).collect(Collectors.toList());