贴标申请,仓储转运
This commit is contained in:
@@ -84,6 +84,7 @@ public class LastlegOrderService {
|
||||
@Resource private ContainerArrivalTimeOperationMapper containerArrivalTimeOperations;
|
||||
@Resource private WarehouseResourceGateway warehouseResourceGateway;
|
||||
@Resource private ContainerShippingGateMapper containerShippingGates;
|
||||
@Resource private ReturnOrderReferenceResolver returnOrderReferences;
|
||||
|
||||
public PageResult<LastlegOrderSummary> page(String customerId, LastlegOrderRequests.Query query) {
|
||||
return page(customerId, query, null);
|
||||
@@ -93,6 +94,8 @@ public class LastlegOrderService {
|
||||
Page<LastlegOrder> page = orderMapper.selectPage(
|
||||
new Page<>(query.page(), query.size()), filter(customerId, query, relabelNo).orderByDesc(LastlegOrder::getCreatedAt).orderByDesc(LastlegOrder::getId));
|
||||
Map<Long, List<LastlegOrderMapper.PalletMergeRelationRow>> mergeRelations = palletMergeRelations(page.getRecords());
|
||||
returnOrderReferences.populateForRead(page.getRecords());
|
||||
refreshReturnVolumes(page.getRecords());
|
||||
Map<String, String> containerNodes = containerNodes(page.getRecords());
|
||||
Map<Long, String> dispatchStatuses = dispatchStatuses(page.getRecords());
|
||||
Map<Long, LastlegOrderMapper.OrderWeightRow> weights = orderWeights(page.getRecords());
|
||||
@@ -331,6 +334,8 @@ public class LastlegOrderService {
|
||||
|
||||
public LastlegOrderDetailResponse detail(String customerId, long orderId) {
|
||||
LastlegOrder order = findOwned(customerId, orderId);
|
||||
returnOrderReferences.populateForRead(List.of(order));
|
||||
refreshReturnVolumes(List.of(order));
|
||||
List<LastlegOrderDetail> cargo = detailMapper.selectList(new LambdaQueryWrapper<LastlegOrderDetail>()
|
||||
.eq(LastlegOrderDetail::getCustomerId, order.getCustomerId())
|
||||
.eq(LastlegOrderDetail::getOrderId, orderId).orderByAsc(LastlegOrderDetail::getId));
|
||||
@@ -596,6 +601,14 @@ public class LastlegOrderService {
|
||||
LastlegOrderMapper.DispatchStatusRow::dispatchStatus));
|
||||
}
|
||||
|
||||
private void refreshReturnVolumes(List<LastlegOrder> orders) {
|
||||
List<Long> ids = orders.stream().filter(order -> "RETURN_RELABEL".equals(order.getOrderType())).map(LastlegOrder::getId).toList();
|
||||
if (ids.isEmpty()) return;
|
||||
Map<Long, BigDecimal> volumes = orderMapper.findReturnVolumes(ids).stream()
|
||||
.collect(Collectors.toMap(LastlegOrderMapper.ReturnVolumeRow::orderId, LastlegOrderMapper.ReturnVolumeRow::volumeCbm));
|
||||
for (LastlegOrder order : orders) if (volumes.containsKey(order.getId())) order.setVolumeCbm(volumes.get(order.getId()));
|
||||
}
|
||||
|
||||
private Map<Long, LastlegOrderMapper.OrderWeightRow> orderWeights(List<LastlegOrder> orders) {
|
||||
if (orders.isEmpty()) return Map.of();
|
||||
List<LastlegOrderMapper.OrderWeightRow> rows = orderMapper.findOrderWeights(
|
||||
|
||||
Reference in New Issue
Block a user