Kaynağa Gözat

aps-排程组装数据优化

sucheng 5 ay önce
ebeveyn
işleme
852e6e426a

+ 5 - 1
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsServiceImpl.java

@@ -1510,7 +1510,8 @@ public class ApsServiceImpl implements ApsService {
                 List<ApsProcessOperationProcessEquDo> processDetails = baseApsProcessOperationProcessEquList.stream().filter(item ->
                                 item.getProcessid().equals(operationDo.getId())
                                         && ObjectUtil.isNotEmpty(item.getProcessdeviceid())
-                                        && !"".equals(item.getProcessdeviceid()))
+                                        && !"".equals(item.getProcessdeviceid())
+                        && !(ObjectUtil.isNotEmpty(item.getCancelroll()) && item.getCancelroll() >= item.getPlanprocessrall()))
                         .sorted(Comparator.comparing(ApsProcessOperationProcessEquDo::getPlanstartdate))
                         .collect(Collectors.toList());
                 for (ApsProcessOperationProcessEquDo processDetail : processDetails) {
@@ -1716,6 +1717,9 @@ public class ApsServiceImpl implements ApsService {
                     }
                 } else {
                     for (Integer i = 0; i < operationDo.getPlanprocessrall() - operationDo.getCancelrollsum(); i++) {
+                        if (processEquDos != null && i >= processEquDos.size() && !processEquDos.isEmpty()){
+                            continue;
+                        }
                         ProductionProcesses processes = productionProcessesDetailInit(operationDo, produceOrder, optionalEquipments, outMaterDos, apsBlankOrderVo, processOperationEquDos);
                         // 已排程的作业明细数据保持ID不变
                         if (processEquDos != null && i < processEquDos.size()) {