|
|
@@ -9,7 +9,6 @@ import java.time.ZoneId;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.time.temporal.ChronoUnit;
|
|
|
import java.util.*;
|
|
|
-import java.util.concurrent.CompletableFuture;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -748,56 +747,48 @@ public class LiveOrderServiceImpl implements ILiveOrderService {
|
|
|
if(CollectionUtils.isEmpty(allOrderIds)) {
|
|
|
return Collections.emptyList();
|
|
|
}
|
|
|
- try{
|
|
|
- CompletableFuture<Map<Long, FsStoreDelivers>> deliversFuture = CompletableFuture.supplyAsync(() ->
|
|
|
- fsStoreDeliversMapper.findByOrderIdWithTypeBatch(allOrderIds, 1));
|
|
|
- CompletableFuture<Map<Long, LiveAfterSales>> afterSalesFuture = CompletableFuture.supplyAsync(() ->
|
|
|
- liveAfterSalesMapper.findByOrderIds(allOrderIds));
|
|
|
- CompletableFuture<Map<Long, List<LiveOrderItemVo>>> orderItemsFuture = CompletableFuture.supplyAsync(() ->
|
|
|
- liveOrderItemMapper.selectLiveOrderItemByOrderIds(allOrderIds));
|
|
|
-
|
|
|
- CompletableFuture.allOf(deliversFuture, afterSalesFuture, orderItemsFuture).join();
|
|
|
- Map<Long, FsStoreDelivers> byOrderIdWithTypeBatch = deliversFuture.get();
|
|
|
- Map<Long, LiveAfterSales> liveAfterSalesMap = afterSalesFuture.get();
|
|
|
- Map<Long, List<LiveOrderItemVo>> liveOrderItemMaps = orderItemsFuture.get();
|
|
|
-
|
|
|
- for (LiveOrderListVo order : liveOrders) {
|
|
|
- FsStoreDelivers delivers = byOrderIdWithTypeBatch.get(order.getOrderId());
|
|
|
-
|
|
|
- if(ObjectUtil.isNotNull(delivers)) {
|
|
|
- order.setDeliveryCode(delivers.getDeliverSn());
|
|
|
- order.setDeliveryName(delivers.getDeliverName());
|
|
|
- order.setDeliverySn(delivers.getDeliverId());
|
|
|
- order.setDeliveryStatus(delivers.getStatus());
|
|
|
- order.setDeliveryType(String.valueOf(delivers.getStateEx()));
|
|
|
- }else {
|
|
|
- order.setDeliveryCode(null);
|
|
|
- order.setDeliveryName(null);
|
|
|
- order.setDeliverySn(null);
|
|
|
- order.setDeliveryStatus(null);
|
|
|
- order.setDeliveryType(null);
|
|
|
- }
|
|
|
- if(ObjectUtil.isNotNull(liveAfterSalesMap)){
|
|
|
- LiveAfterSales liveAfterSales = liveAfterSalesMap.get(order.getOrderId());
|
|
|
- if(ObjectUtil.isNotNull(liveAfterSales)) {
|
|
|
- order.setAfterSaleId(liveAfterSales.getId());
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- if(ObjectUtil.isNotNull(liveOrderItemMaps)){
|
|
|
- Long orderId = order.getOrderId();
|
|
|
- List<LiveOrderItemVo> liveOrderItemVos = liveOrderItemMaps.get(orderId);
|
|
|
- if(CollectionUtils.isNotEmpty(liveOrderItemVos)) {
|
|
|
- order.setOrderItemList(liveOrderItemVos);
|
|
|
- }
|
|
|
+ Map<Long, FsStoreDelivers> byOrderIdWithTypeBatch = fsStoreDeliversMapper
|
|
|
+ .findByOrderIdWithTypeBatch(allOrderIds, 1);
|
|
|
+
|
|
|
+ Map<Long,LiveAfterSales> liveAfterSalesMap = liveAfterSalesMapper.findByOrderIds(allOrderIds);
|
|
|
+
|
|
|
+ Map<Long, List<LiveOrderItemVo>> liveOrderItemMaps = liveOrderItemMapper.selectLiveOrderItemByOrderIds(allOrderIds);
|
|
|
+
|
|
|
+
|
|
|
+ for (LiveOrderListVo order : liveOrders) {
|
|
|
+ FsStoreDelivers delivers = byOrderIdWithTypeBatch.get(order.getOrderId());
|
|
|
+
|
|
|
+ if(ObjectUtil.isNotNull(delivers)) {
|
|
|
+ order.setDeliveryCode(delivers.getDeliverSn());
|
|
|
+ order.setDeliveryName(delivers.getDeliverName());
|
|
|
+ order.setDeliverySn(delivers.getDeliverId());
|
|
|
+ order.setDeliveryStatus(delivers.getStatus());
|
|
|
+ order.setDeliveryType(String.valueOf(delivers.getStateEx()));
|
|
|
+ }else {
|
|
|
+ order.setDeliveryCode(null);
|
|
|
+ order.setDeliveryName(null);
|
|
|
+ order.setDeliverySn(null);
|
|
|
+ order.setDeliveryStatus(null);
|
|
|
+ order.setDeliveryType(null);
|
|
|
+ }
|
|
|
+ if(ObjectUtil.isNotNull(liveAfterSalesMap)){
|
|
|
+ LiveAfterSales liveAfterSales = liveAfterSalesMap.get(order.getOrderId());
|
|
|
+ if(ObjectUtil.isNotNull(liveAfterSales)) {
|
|
|
+ order.setAfterSaleId(liveAfterSales.getId());
|
|
|
}
|
|
|
}
|
|
|
- if (liveOrders.isEmpty()) {
|
|
|
- return liveOrders;
|
|
|
+
|
|
|
+ if(ObjectUtil.isNotNull(liveOrderItemMaps)){
|
|
|
+ Long orderId = order.getOrderId();
|
|
|
+ List<LiveOrderItemVo> liveOrderItemVos = liveOrderItemMaps.get(orderId);
|
|
|
+ if(CollectionUtils.isEmpty(liveOrderItemVos)) {
|
|
|
+ order.setOrderItemList(liveOrderItemVos);
|
|
|
+ }
|
|
|
}
|
|
|
- }catch (Exception e){
|
|
|
- log.error("查询订单详情失败", e);
|
|
|
- throw new RuntimeException("查询订单详情失败");
|
|
|
+ }
|
|
|
+ if (liveOrders.isEmpty()) {
|
|
|
+ return liveOrders;
|
|
|
}
|
|
|
return liveOrders;
|
|
|
}
|