Commit 35d44f5e by huluobin

4.1

parent 2bdf18e4
...@@ -16,6 +16,7 @@ import com.gogirl.domain.user.customer.Customer; ...@@ -16,6 +16,7 @@ import com.gogirl.domain.user.customer.Customer;
import com.gogirl.infrastructure.common.exception.RRException; import com.gogirl.infrastructure.common.exception.RRException;
import com.gogirl.infrastructure.common.util.*; import com.gogirl.infrastructure.common.util.*;
import com.gogirl.infrastructure.mapper.order.mall.MallOrderAddressMapper; import com.gogirl.infrastructure.mapper.order.mall.MallOrderAddressMapper;
import com.gogirl.infrastructure.mapper.order.mall.MallOrderDeliveryMapper;
import com.gogirl.infrastructure.mapper.order.mall.MallOrderMapper; import com.gogirl.infrastructure.mapper.order.mall.MallOrderMapper;
import com.gogirl.infrastructure.mapper.order.mall.MallOrderTechnicianMapper; import com.gogirl.infrastructure.mapper.order.mall.MallOrderTechnicianMapper;
import com.gogirl.infrastructure.mapper.product.mall.MallProductMapper; import com.gogirl.infrastructure.mapper.product.mall.MallProductMapper;
...@@ -57,6 +58,7 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder ...@@ -57,6 +58,7 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
private final MallOrderTechnicianMapper mallOrderTechnicianMapper; private final MallOrderTechnicianMapper mallOrderTechnicianMapper;
private final StoreManageMapper storeManageMapper; private final StoreManageMapper storeManageMapper;
private final StoreTechnicianMapper storeTechnicianMapper; private final StoreTechnicianMapper storeTechnicianMapper;
private final MallOrderDeliveryMapper mallOrderDeliveryMapper;
/** /**
* domain service * domain service
...@@ -400,7 +402,7 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder ...@@ -400,7 +402,7 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
IPage<MallOrder> page = new Page<>(request.getPageNum(), request.getPageSize()); IPage<MallOrder> page = new Page<>(request.getPageNum(), request.getPageSize());
LambdaQueryWrapper<MallOrder> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<MallOrder> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MallOrder::getType,MallOrder.TYPE_DEFAULT); wrapper.eq(MallOrder::getType, MallOrder.TYPE_DEFAULT);
if (request.getStatus() != null) { if (request.getStatus() != null) {
wrapper.eq(MallOrder::getStatus, request.getStatus()); wrapper.eq(MallOrder::getStatus, request.getStatus());
...@@ -424,31 +426,39 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder ...@@ -424,31 +426,39 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
IPage<MallOrder> mallOrderIPage = baseMapper.selectPage(page, wrapper); IPage<MallOrder> mallOrderIPage = baseMapper.selectPage(page, wrapper);
List<Long> mallOrderIdList = mallOrderIPage.getRecords().stream().map(MallOrder::getId).collect(Collectors.toList()); List<Long> mallOrderIdList = mallOrderIPage.getRecords().stream().map(MallOrder::getId).collect(Collectors.toList());
Map<Long, List<MallOrderDetail>> mallOrderDetailMap = mallOrderDetailService.list(new LambdaQueryWrapper<MallOrderDetail>() if (ListUtil.isNotEmpty(mallOrderIdList)) {
.in(MallOrderDetail::getOrderId, mallOrderIdList)).stream() Map<Long, List<MallOrderDetail>> mallOrderDetailMap = mallOrderDetailService.list(new LambdaQueryWrapper<MallOrderDetail>()
.collect(Collectors.groupingBy(MallOrderDetail::getOrderId)); .in(MallOrderDetail::getOrderId, mallOrderIdList)).stream()
.collect(Collectors.groupingBy(MallOrderDetail::getOrderId));
Map<Long, MallOrderAddress> mallOrderAddressMap = mallOrderAddressMapper.selectList(new LambdaQueryWrapper<MallOrderAddress>()
.in(MallOrderAddress::getOrderId, mallOrderIdList)).stream() Map<Long, MallOrderAddress> mallOrderAddressMap = mallOrderAddressMapper.selectList(new LambdaQueryWrapper<MallOrderAddress>()
.collect(Collectors.toMap(MallOrderAddress::getOrderId, mallOrderAddress -> mallOrderAddress, (k1, k2) -> k1)); .in(MallOrderAddress::getOrderId, mallOrderIdList)).stream()
.collect(Collectors.toMap(MallOrderAddress::getOrderId, mallOrderAddress -> mallOrderAddress, (k1, k2) -> k1));
Map<Integer, Customer> customerMap = customerMapper.selectList(new LambdaQueryWrapper<Customer>()
.in(Customer::getId, mallOrderIPage.getRecords().stream().map(MallOrder::getCustomerId).collect(Collectors.toList()))) Map<Integer, Customer> customerMap = customerMapper.selectList(new LambdaQueryWrapper<Customer>()
.stream() .in(Customer::getId, mallOrderIPage.getRecords().stream().map(MallOrder::getCustomerId).collect(Collectors.toList())))
.collect(Collectors.toMap(Customer::getId, customer -> customer, (k1, k2) -> k1)); .stream()
.collect(Collectors.toMap(Customer::getId, customer -> customer, (k1, k2) -> k1));
Map<Integer, StoreManage> storeManageMap = storeManageMapper.selectList(new LambdaQueryWrapper<StoreManage>()
.in(StoreManage::getId, mallOrderIPage.getRecords().stream().map(MallOrder::getSelfTakeDepartmentId).collect(Collectors.toList()))) Map<Integer, StoreManage> storeManageMap = storeManageMapper.selectList(new LambdaQueryWrapper<StoreManage>()
.stream() .in(StoreManage::getId, mallOrderIPage.getRecords().stream().map(MallOrder::getSelfTakeDepartmentId).collect(Collectors.toList())))
.collect(Collectors.toMap(StoreManage::getId, storeManage -> storeManage, (k1, k2) -> k1)); .stream()
.collect(Collectors.toMap(StoreManage::getId, storeManage -> storeManage, (k1, k2) -> k1));
Map<Long, MallOrderDelivery> mallOrderDeliveryMap = mallOrderDeliveryMapper.selectList(new LambdaQueryWrapper<MallOrderDelivery>()
.in(MallOrderDelivery::getOrderId, mallOrderIdList))
.stream()
.collect(Collectors.toMap(MallOrderDelivery::getOrderId, mallOrderDelivery -> mallOrderDelivery, (k1, k2) -> k1));
mallOrderIPage.getRecords().forEach(mallOrder -> {
mallOrder.setMallOrderDetailList(mallOrderDetailMap.get(mallOrder.getId()));
mallOrder.setMallOrderAddress(mallOrderAddressMap.get(mallOrder.getId()));
mallOrder.setCustomer(customerMap.get(mallOrder.getCustomerId()));
mallOrder.setStoreManage(storeManageMap.get(mallOrder.getSelfTakeDepartmentId()));
mallOrder.setMallOrderDelivery(mallOrderDeliveryMap.get(mallOrder.getId()));
});
}
mallOrderIPage.getRecords().forEach(mallOrder -> {
mallOrder.setMallOrderDetailList(mallOrderDetailMap.get(mallOrder.getId()));
mallOrder.setMallOrderAddress(mallOrderAddressMap.get(mallOrder.getId()));
mallOrder.setCustomer(customerMap.get(mallOrder.getCustomerId()));
mallOrder.setStoreManage(storeManageMap.get(mallOrder.getSelfTakeDepartmentId()));
});
return mallOrderIPage; return mallOrderIPage;
} }
...@@ -460,9 +470,13 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder ...@@ -460,9 +470,13 @@ public class MallOrderServiceImpl extends ServiceImpl<MallOrderMapper, MallOrder
List<MallOrderDetail> orderDetailList = mallOrderDetailService.list(new LambdaQueryWrapper<MallOrderDetail>().eq(MallOrderDetail::getOrderId, mallOrderId)); List<MallOrderDetail> orderDetailList = mallOrderDetailService.list(new LambdaQueryWrapper<MallOrderDetail>().eq(MallOrderDetail::getOrderId, mallOrderId));
List<StoreTechnician> storeTechnicianList = mallOrderTechnicianMapper.selectTechnicianList(mallOrderId); List<StoreTechnician> storeTechnicianList = mallOrderTechnicianMapper.selectTechnicianList(mallOrderId);
MallOrderDelivery mallOrderDelivery = mallOrderDeliveryMapper.selectOne(new LambdaQueryWrapper<MallOrderDelivery>().eq(MallOrderDelivery::getOrderId, mallOrderId));
mallOrder.setMallOrderDetailList(orderDetailList); mallOrder.setMallOrderDetailList(orderDetailList);
mallOrder.setMallOrderAddress(mallOrderAddress); mallOrder.setMallOrderAddress(mallOrderAddress);
mallOrder.setStoreTechnicianList(storeTechnicianList); mallOrder.setStoreTechnicianList(storeTechnicianList);
mallOrder.setMallOrderDelivery(mallOrderDelivery);
return mallOrder; return mallOrder;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment