|
@@ -40,6 +40,7 @@ import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
|
import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
@Slf4j
|
|
|
@Service
|
|
@@ -209,7 +210,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
|
|
|
}
|
|
|
|
|
|
// 订单进度
|
|
|
- if (department != null && Objects.equals(department.getOrderMode(), "2")) {
|
|
|
+ if (department != null && Objects.equals(department.getOrderMode(), "2") && orderInfo.getWlnStatus() != 1) {
|
|
|
orderInfo.setStatus(OrderStatusEnum.STOCK_PREPARATION.getKey());
|
|
|
} else {
|
|
|
orderInfo.setStatus(OrderStatusEnum.UNDER_REVIEW.getKey());
|
|
@@ -320,6 +321,14 @@ public class WlnOrderServiceImpl implements WlnOrderService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 万里牛订单状态不为1时,订单状态修改为备料中
|
|
|
+ if (department != null
|
|
|
+ && Objects.equals(department.getOrderMode(), "2")
|
|
|
+ && orderInfo.getWlnStatus() != 1
|
|
|
+ && Objects.equals(orderInfo.getStatus(), OrderStatusEnum.UNDER_REVIEW.getKey())) {
|
|
|
+ orderInfo.setStatus(OrderStatusEnum.STOCK_PREPARATION.getKey());
|
|
|
+ }
|
|
|
+
|
|
|
updateOrderList.add(orderInfo);
|
|
|
}
|
|
|
|
|
@@ -706,11 +715,20 @@ public class WlnOrderServiceImpl implements WlnOrderService {
|
|
|
List<OrderInfo> saveOrderList = context.getSaveOrderList();
|
|
|
List<OrderSku> saveOrderSkuList = context.getSaveOrderSkuList();
|
|
|
Map<Long, BomSpecBo> bomSpecBoMap = context.getBomSpecBoMap();
|
|
|
+ List<OrderInfo> updateOrderList = context.getUpdateOrderList();
|
|
|
+ Map<Long, List<OrderSku>> existOrderSkuMap = context.getExistOrderSkuMap();
|
|
|
|
|
|
- Map<Long, OrderInfo> orderMap = saveOrderList.stream().collect(Collectors.toMap(BaseIdPo::getId, Function.identity()));
|
|
|
+ Map<Long, OrderInfo> orderMap = Stream.concat(saveOrderList.stream(), updateOrderList.stream()).collect(Collectors.toMap(BaseIdPo::getId, Function.identity()));
|
|
|
|
|
|
- Map<Long, List<OrderSku>> orderSkuMap = saveOrderSkuList.stream()
|
|
|
+ Map<Long, List<OrderSku>> orderSkuMap = Stream.concat(
|
|
|
+ saveOrderSkuList.stream(),
|
|
|
+ updateOrderList.stream()
|
|
|
+ .map(item -> existOrderSkuMap.get(item.getId()))
|
|
|
+ .flatMap(Collection::stream)
|
|
|
+ )
|
|
|
.filter(item -> orderMap.get(item.getOrderId()).getExceptionType().equals(OrderExceptionTypeEnum.NORMAL.getKey().toString()))
|
|
|
+ .filter(item -> Objects.equals(orderMap.get(item.getOrderId()).getStatus(), OrderStatusEnum.STOCK_PREPARATION.getKey()))
|
|
|
+ .filter(item -> Objects.equals(orderMap.get(item.getOrderId()).getLockStorage(), StatusConstant.NO))
|
|
|
.filter(item -> bomSpecBoMap.get(item.getBomSpecId()).getClassifyParentId().equals(1L))
|
|
|
.collect(Collectors.groupingBy(OrderSku::getOrderId));
|
|
|
|