Browse Source

aps-取消报工,还原批次号漏洞修改

sucheng 10 months ago
parent
commit
8bc4890720

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

@@ -535,43 +535,46 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
                         .set(ApsWorkInProgressInventoryDo::getWorkinprocessstatus, "加工中")
                         .eq(ApsWorkInProgressInventoryDo::getBatchnumber, req.getInputBatchNumber())
                         .eq(ApsWorkInProgressInventoryDo::getDeleted, "0"));
+
+                List<ApsProcessOperationProcessEquDo> needUpdateProcessEqus = null;
+
                 /**
                  * 如果该工序作业明细有前道工序作业明细,
                  * 则将前道工序作业明细的所有后道工序作业明细的待加工料卷批次号去掉“{批次号},”
                  */
                 if (ObjectUtil.isNotEmpty(apsProcessOperationProcessEquDo.getPreviousprocessesids())) {
-                    List<ApsProcessOperationProcessEquDo> needUpdateBatchNumber = apsProcessOperationProcessEquService.list(new QueryWrapper<ApsProcessOperationProcessEquDo>().lambda().eq(ApsProcessOperationProcessEquDo::getPreviousprocessesids, apsProcessOperationProcessEquDo.getPreviousprocessesids()));
-                    if (ObjectUtil.isNotEmpty(needUpdateBatchNumber)) {
-                        List<String> needUpdateIds = needUpdateBatchNumber.stream().map(ApsProcessOperationProcessEquDo::getId).collect(Collectors.toList());
-                        String join = String.join(",", needUpdateIds);
-                        this.baseMapper.updateAllProcessEquBatchNumberByIds(req.getInputBatchNumber(), join);
-                    }
+                    needUpdateProcessEqus = apsProcessOperationProcessEquService.list(new QueryWrapper<ApsProcessOperationProcessEquDo>().lambda().eq(ApsProcessOperationProcessEquDo::getPreviousprocessesids, apsProcessOperationProcessEquDo.getPreviousprocessesids()));
+//                    if (ObjectUtil.isNotEmpty(needUpdateBatchNumber)) {
+//                        List<String> needUpdateIds = needUpdateBatchNumber.stream().map(ApsProcessOperationProcessEquDo::getId).collect(Collectors.toList());
+//                        String join = String.join(",", needUpdateIds);
+//                        this.baseMapper.updateAllProcessEquBatchNumberByIds(req.getInputBatchNumber(), join);
+//                    }
                 }
                 /**
                  * 如果该工序作业明细没有前道工序作业明细,则该作业明细对应作业的所有作业明细的待加工料卷批次号去掉“{输入物料批次号},”
                  */
                 if (ObjectUtil.isEmpty(apsProcessOperationProcessEquDo.getPreviousprocessesids())) {
-                    List<ApsProcessOperationProcessEquDo> needUpdateProcessEqus = apsProcessOperationProcessEquService.list(new QueryWrapper<ApsProcessOperationProcessEquDo>().lambda().eq(ApsProcessOperationProcessEquDo::getProcessid, apsProcessOperationProcessEquDo.getProcessid()));
-                    List<ApsProcessOperationProcessEquDo> updateList = new LinkedList<>();
-                    //遍历所有第一道工序的明细
-                    for (ApsProcessOperationProcessEquDo updateProcessEqu : needUpdateProcessEqus) {
-                        String bachmaterialprocess = updateProcessEqu.getBachmaterialprocess();
-                        //如果存在被使用的批次号,则删除此批次号
-                        if (ObjectUtil.isNotEmpty(bachmaterialprocess)) {
-                            LinkedList<String> strings = new LinkedList<>(Arrays.asList(bachmaterialprocess.split(",")));
-                            if (strings.contains(req.getInputBatchNumber())) {
-                                strings.remove(req.getInputBatchNumber());
-                                ApsProcessOperationProcessEquDo equDo = new ApsProcessOperationProcessEquDo();
-                                equDo.setId(updateProcessEqu.getId());
-                                equDo.setBachmaterialprocess(String.join(",", strings));
-                                updateList.add(equDo);
-                            }
+                    needUpdateProcessEqus = apsProcessOperationProcessEquService.list(new QueryWrapper<ApsProcessOperationProcessEquDo>().lambda().eq(ApsProcessOperationProcessEquDo::getProcessid, apsProcessOperationProcessEquDo.getProcessid()));
+                }
+                List<ApsProcessOperationProcessEquDo> updateList = new LinkedList<>();
+                //遍历所有第一道工序的明细
+                for (ApsProcessOperationProcessEquDo updateProcessEqu : needUpdateProcessEqus) {
+                    String bachmaterialprocess = updateProcessEqu.getBachmaterialprocess();
+                    //如果存在被使用的批次号,则删除此批次号
+                    if (ObjectUtil.isNotEmpty(bachmaterialprocess)) {
+                        LinkedList<String> strings = new LinkedList<>(Arrays.asList(bachmaterialprocess.split(",")));
+                        if (strings.contains(req.getInputBatchNumber())) {
+                            strings.remove(req.getInputBatchNumber());
+                            ApsProcessOperationProcessEquDo equDo = new ApsProcessOperationProcessEquDo();
+                            equDo.setId(updateProcessEqu.getId());
+                            equDo.setBachmaterialprocess(String.join(",", strings));
+                            updateList.add(equDo);
                         }
                     }
-                    //更新
-                    if (ObjectUtil.isNotEmpty(updateList)) {
-                        apsProcessOperationProcessEquService.updateBatchById(updateList);
-                    }
+                }
+                //更新
+                if (ObjectUtil.isNotEmpty(updateList)) {
+                    apsProcessOperationProcessEquService.updateBatchById(updateList);
                 }
             }