소스 검색

备料委外订单bug修复

fgd 1 년 전
부모
커밋
8465815839
1개의 변경된 파일19개의 추가작업 그리고 17개의 파일을 삭제
  1. 19 17
      sd-business/src/main/java/com/sd/business/service/production/impl/StockPreparationServiceImpl.java

+ 19 - 17
sd-business/src/main/java/com/sd/business/service/production/impl/StockPreparationServiceImpl.java

@@ -316,19 +316,20 @@ public class StockPreparationServiceImpl implements StockPreparationService {
                         .eq(OrderInfo::getType, 2)
                         .select(BaseIdPo::getId))
                 .stream().map(BaseIdPo::getId).collect(Collectors.toList());
-        List<OrderSku> orderSkuList = orderSkuService.list(q -> q.in(OrderSku::getOrderId, orderIdList)
-                .notIn(!outsourceOrderIds.isEmpty(), OrderSku::getOrderId, outsourceOrderIds));
+        List<OrderSku> orderSkuList = orderSkuService.list(q -> q.in(OrderSku::getOrderId, orderIdList));
         List<OrderSkuBom> orderSkuBomList = orderSkuBomService.list(q -> q.in(OrderSkuBom::getOrderId, orderIdList));
         Map<Long, OrderSku> orderSkuMap = orderSkuList.stream().collect(Collectors.toMap(BaseIdPo::getId, Function.identity()));
 
         Map<Long, OutBomVo> map = Stream.concat(
                         // 主材
-                        orderSkuList.stream().map(item -> {
-                            OutBomVo outBomVo = new OutBomVo();
-                            outBomVo.setBomSpecId(item.getBomSpecId());
-                            outBomVo.setOutQuantity(item.getQuantity());
-                            return outBomVo;
-                        }),
+                        orderSkuList.stream()
+                                .filter(item -> outsourceOrderIds.isEmpty() || !outsourceOrderIds.contains(item.getOrderId()))
+                                .map(item -> {
+                                    OutBomVo outBomVo = new OutBomVo();
+                                    outBomVo.setBomSpecId(item.getBomSpecId());
+                                    outBomVo.setOutQuantity(item.getQuantity());
+                                    return outBomVo;
+                                }),
 
                         // 包材
                         orderSkuBomList.stream().map(item -> {
@@ -486,21 +487,22 @@ public class StockPreparationServiceImpl implements StockPreparationService {
                         .select(BaseIdPo::getId))
                 .stream().map(BaseIdPo::getId).collect(Collectors.toList());
 
-        List<OrderSku> orderSkuList = orderSkuService.list(q -> q.in(OrderSku::getOrderId, orderIdLockStorageMap.keySet())
-                .notIn(!outsourceOrderIds.isEmpty(), OrderSku::getOrderId, outsourceOrderIds));
+        List<OrderSku> orderSkuList = orderSkuService.list(q -> q.in(OrderSku::getOrderId, orderIdLockStorageMap.keySet()));
         List<OrderSkuBom> orderSkuBomList = orderSkuBomService.list(q -> q.in(OrderSkuBom::getOrderId, orderIdLockStorageMap.keySet()));
         Map<Long, OrderSku> orderSkuMap = orderSkuList.stream().collect(Collectors.toMap(BaseIdPo::getId, Function.identity()));
 
         List<InOutStorageBomBo> inOutStorageBomBoList = Stream.concat(
 
                 // 主材
-                orderSkuList.stream().map(item -> {
-                    InOutStorageBomBo inOutStorageBom = new InOutStorageBomBo();
-                    inOutStorageBom.setBomSpecId(item.getBomSpecId());
-                    inOutStorageBom.setQuantity(item.getQuantity());
-                    inOutStorageBom.setLockStorage(orderIdLockStorageMap.get(item.getOrderId()));
-                    return inOutStorageBom;
-                }),
+                orderSkuList.stream()
+                        .filter(item -> outsourceOrderIds.isEmpty() || !outsourceOrderIds.contains(item.getOrderId()))
+                        .map(item -> {
+                            InOutStorageBomBo inOutStorageBom = new InOutStorageBomBo();
+                            inOutStorageBom.setBomSpecId(item.getBomSpecId());
+                            inOutStorageBom.setQuantity(item.getQuantity());
+                            inOutStorageBom.setLockStorage(orderIdLockStorageMap.get(item.getOrderId()));
+                            return inOutStorageBom;
+                        }),
 
                 // 包材
                 orderSkuBomList.stream().map(item -> {