Просмотр исходного кода

pc端分页查询运单新增字段

donglang 1 месяц назад
Родитель
Сommit
fbc74d9f38

+ 32 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/param/WaybillOrderResp.java

@@ -5,6 +5,7 @@ import lombok.Data;
 
 
 import java.io.Serial;
 import java.io.Serial;
 import java.io.Serializable;
 import java.io.Serializable;
+import java.math.BigDecimal;
 
 
 /**
 /**
  * @author :chenXiaoFei
  * @author :chenXiaoFei
@@ -147,4 +148,35 @@ public class WaybillOrderResp implements Serializable {
      */
      */
     @Schema(description = "货物实际费用")
     @Schema(description = "货物实际费用")
     private String actualGoodsPrice;
     private String actualGoodsPrice;
+
+    /**
+     * 车辆轴数
+     */
+    @Schema(description = "车辆轴数")
+    private String carAxisName;
+
+    /**
+     * 计费方式
+     */
+    @Schema(description = "计费方式")
+    private String priceType;
+
+    /**
+     * 计费方式描述
+     */
+    @Schema(description = "计费方式描述")
+    private String priceTypeDesc;
+
+    /**
+     * 皮重
+     */
+    @Schema(description = "皮重")
+    private BigDecimal tareAmount;
+
+    /**
+     * 毛重
+     */
+    @Schema(description = "毛重")
+    private BigDecimal grossAmount;
+
 }
 }

+ 57 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderV1Service.java

@@ -3250,8 +3250,10 @@ public class KwtWaybillOrderV1Service {
     private OrderData batchQueryOrderData(OrderIds orderIds) {
     private OrderData batchQueryOrderData(OrderIds orderIds) {
         OrderData orderData = new OrderData();
         OrderData orderData = new OrderData();
 
 
+        List<KwtWaybillOrder> waybillOrders = kwtWaybillOrderRepository.queryByBillOrderIds(orderIds.getWayBillOrderIds());
+
         // 查询主运单信息
         // 查询主运单信息
-        orderData.setWaybillOrderMap(getLongKwtWaybillOrderMap(orderIds.getWayBillOrderIds()));
+        orderData.setWaybillOrderMap(getLongKwtWaybillOrderMap(waybillOrders));
 
 
         // 查询承运托运单位信息
         // 查询承运托运单位信息
         orderData.setLogisticsOrderUnitMap(getStringKwtLogisticsOrderUnitMap(
         orderData.setLogisticsOrderUnitMap(getStringKwtLogisticsOrderUnitMap(
@@ -3269,6 +3271,12 @@ public class KwtWaybillOrderV1Service {
         // 查询物流订单信息
         // 查询物流订单信息
         queryLogisticsOrders(orderIds, orderData);
         queryLogisticsOrders(orderIds, orderData);
 
 
+        // 轴数
+        queryCarAxis(waybillOrders, orderData);
+
+        //装卸货信息
+        queryTareAndGrossAmount(waybillOrders, orderData);
+
         return orderData;
         return orderData;
     }
     }
 
 
@@ -3377,6 +3385,34 @@ public class KwtWaybillOrderV1Service {
         }
         }
     }
     }
 
 
+    /**
+     * 查询运单轴数
+     */
+    private void queryCarAxis(List<KwtWaybillOrder> waybillOrders, OrderData orderData) {
+        List<Long> truckIds = waybillOrders.stream().map(KwtWaybillOrder::getTruckId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
+        List<RTruckVo> truckVoList = remoteFleetService.findTruckByTruckIds(truckIds);
+        if (CollectionUtils.isNotEmpty(truckVoList)) {
+            Map<Long, RTruckVo> truckVoMap = truckVoList.stream().collect(Collectors.toMap(RTruckVo::getId, Function.identity(), (x, y) -> x));
+            orderData.setCarAxisMap(truckVoMap);
+        }
+    }
+
+    /**
+     *
+     * 查询运单皮重、毛重
+     * @param waybillOrders
+     */
+    private void queryTareAndGrossAmount(List<KwtWaybillOrder> waybillOrders, OrderData orderData) {
+        List<Long> wbOrderIdList = waybillOrders.stream().map(KwtWaybillOrder::getId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
+        List<KwtWaybillOrderTicket> orderTicketList = kwtWaybillOrderTicketRepository.queryByWOrderIds(wbOrderIdList);
+        if (CollectionUtils.isNotEmpty(orderTicketList)) {
+            Map<String, KwtWaybillOrderTicket> ticketMap = orderTicketList.stream().collect(
+                    Collectors.toMap(ticket -> ticket.getWOrderId() + "-" + ticket.getType(),
+                            Function.identity(), (x, y) -> x));
+            orderData.setTicketMap(ticketMap);
+        }
+    }
+
     /**
     /**
      * 查询字典数据
      * 查询字典数据
      */
      */
@@ -3424,6 +3460,8 @@ public class KwtWaybillOrderV1Service {
                 orderData.getLogIdAndOrderMap(),
                 orderData.getLogIdAndOrderMap(),
                 dictValueAndDictResDtoMap,
                 dictValueAndDictResDtoMap,
                 orderData.getWOrderIdAndOffsiteNodeMap(),
                 orderData.getWOrderIdAndOffsiteNodeMap(),
+                orderData.getCarAxisMap(),
+                orderData.getTicketMap(),
                 logisticsOrderMap,
                 logisticsOrderMap,
                 tradeOrderContractVoMap,
                 tradeOrderContractVoMap,
                 orderContracGoodstoMap);
                 orderContracGoodstoMap);
@@ -3453,12 +3491,13 @@ public class KwtWaybillOrderV1Service {
         private Map<Long, KwtLogisticsOrderGoods> logOrderIdAndGoodsIdMap;
         private Map<Long, KwtLogisticsOrderGoods> logOrderIdAndGoodsIdMap;
         private Map<Long, KwpGoods> kwpGoodsMap;
         private Map<Long, KwpGoods> kwpGoodsMap;
         private Map<Long, KwtLogisticsOrder> logIdAndOrderMap;
         private Map<Long, KwtLogisticsOrder> logIdAndOrderMap;
+        private Map<Long, RTruckVo> carAxisMap;
+        private Map<String, KwtWaybillOrderTicket> ticketMap;
     }
     }
 
 
 
 
     @NotNull
     @NotNull
-    private Map<Long, KwtWaybillOrder> getLongKwtWaybillOrderMap(Set<Long> wayBillOrderIds) {
-        List<KwtWaybillOrder> waybillOrders = kwtWaybillOrderRepository.queryByBillOrderIds(wayBillOrderIds);
+    private Map<Long, KwtWaybillOrder> getLongKwtWaybillOrderMap(List<KwtWaybillOrder> waybillOrders) {
         Map<Long, KwtWaybillOrder> waybillOrderIdAndBillOrderMap = Maps.newHashMap();
         Map<Long, KwtWaybillOrder> waybillOrderIdAndBillOrderMap = Maps.newHashMap();
         if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(waybillOrders)){
         if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(waybillOrders)){
             waybillOrderIdAndBillOrderMap = waybillOrders.stream()
             waybillOrderIdAndBillOrderMap = waybillOrders.stream()
@@ -4025,6 +4064,8 @@ public class KwtWaybillOrderV1Service {
                                                         Map<Long, KwtLogisticsOrder> finalLogIdAndOrderMap,
                                                         Map<Long, KwtLogisticsOrder> finalLogIdAndOrderMap,
                                                         Map<String, Map<String, String>> dictValueAndDictResDtoMap,
                                                         Map<String, Map<String, String>> dictValueAndDictResDtoMap,
                                                         Map<Long, KwtWaybillOrderNode> wOrderIdAndOffsiteNodeMap,
                                                         Map<Long, KwtWaybillOrderNode> wOrderIdAndOffsiteNodeMap,
+                                                        Map<Long, RTruckVo> carAxisMap,
+                                                        Map<String, KwtWaybillOrderTicket> ticketMap,
                                                         Map<Long, KwtLogisticsOrder> logisticsOrderMap,
                                                         Map<Long, KwtLogisticsOrder> logisticsOrderMap,
                                                         Map<Long, TradeOrderContractVo> tradeOrderContractVoMap,
                                                         Map<Long, TradeOrderContractVo> tradeOrderContractVoMap,
                                                         Map<String, TradeContractGoodsDto> orderContracGoodstoMap) {
                                                         Map<String, TradeContractGoodsDto> orderContracGoodstoMap) {
@@ -4048,6 +4089,15 @@ public class KwtWaybillOrderV1Service {
         waybillOrderResp.setTruckNo(billOrder.getTruckNo());
         waybillOrderResp.setTruckNo(billOrder.getTruckNo());
         waybillOrderResp.setDriverName(billOrder.getDriverName());
         waybillOrderResp.setDriverName(billOrder.getDriverName());
         waybillOrderResp.setDriverPhone(billOrder.getDriverPhone());
         waybillOrderResp.setDriverPhone(billOrder.getDriverPhone());
+        //轴数
+        RTruckVo rTruckVo = carAxisMap.getOrDefault(billOrder.getTruckId(), new RTruckVo());
+        waybillOrderResp.setCarAxisName(rTruckVo.getCarAxis());
+
+        //皮重、毛重
+        KwtWaybillOrderTicket tareAmountTicket = ticketMap.getOrDefault(billOrder.getId() + "-" + AddressTypeEnum.SHIPMENT.getCode(), new KwtWaybillOrderTicket());
+        waybillOrderResp.setTareAmount(tareAmountTicket.getTareAmount());
+        waybillOrderResp.setGrossAmount(tareAmountTicket.getGrossAmount());
+
         Long lOrderId = record.getLOrderId();
         Long lOrderId = record.getLOrderId();
 
 
         KwtLogisticsOrderGoods goods = finalLogOrderIdAndGoodsIdMap.getOrDefault(lOrderId,
         KwtLogisticsOrderGoods goods = finalLogOrderIdAndGoodsIdMap.getOrDefault(lOrderId,
@@ -4101,6 +4151,10 @@ public class KwtWaybillOrderV1Service {
         waybillOrderResp.setStatus(String.valueOf(record.getStatus()));
         waybillOrderResp.setStatus(String.valueOf(record.getStatus()));
         waybillOrderResp.setStatusDesc(CarWaybillV1Enum.geDesc(record.getStatus()));
         waybillOrderResp.setStatusDesc(CarWaybillV1Enum.geDesc(record.getStatus()));
         KwtLogisticsOrder logOrder = logisticsOrderMap.getOrDefault(lOrderId, new KwtLogisticsOrder());
         KwtLogisticsOrder logOrder = logisticsOrderMap.getOrDefault(lOrderId, new KwtLogisticsOrder());
+        //计费方式
+        waybillOrderResp.setPriceType(String.valueOf(logOrder.getBillingMode()));
+        waybillOrderResp.setPriceTypeDesc(DictEnum.getLabel(DictTypeEnum.CHARGING_TYPE.getType(), logOrder.getBillingMode()));
+
         KwtLogisticsOrderGoods kwtLogisticsOrderGoods = finalLogOrderIdAndGoodsIdMap.getOrDefault(lOrderId, new KwtLogisticsOrderGoods());
         KwtLogisticsOrderGoods kwtLogisticsOrderGoods = finalLogOrderIdAndGoodsIdMap.getOrDefault(lOrderId, new KwtLogisticsOrderGoods());
         TradeOrderContractVo tradeOrderContractVo = tradeOrderContractVoMap.getOrDefault(logOrder.getTOrderId(), new TradeOrderContractVo());
         TradeOrderContractVo tradeOrderContractVo = tradeOrderContractVoMap.getOrDefault(logOrder.getTOrderId(), new TradeOrderContractVo());
         TradeContractGoodsDto contractGoodsDto = orderContracGoodstoMap.getOrDefault(tradeOrderContractVo.getContractId()+"-"+kwtLogisticsOrderGoods.getGoodsId(), new TradeContractGoodsDto());
         TradeContractGoodsDto contractGoodsDto = orderContracGoodstoMap.getOrDefault(tradeOrderContractVo.getContractId()+"-"+kwtLogisticsOrderGoods.getGoodsId(), new TradeContractGoodsDto());