Explorar o código

提交修改日志重量小数点

chenxiaofei hai 6 meses
pai
achega
9f35bd12ca

+ 20 - 1
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfDriverService.java

@@ -6,6 +6,7 @@ import com.alibaba.excel.read.metadata.ReadSheet;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.google.common.collect.Maps;
 import com.sckw.core.common.enums.enums.DictEnum;
 import com.sckw.core.common.enums.enums.DictTypeEnum;
 import com.sckw.core.common.enums.enums.ErrorCodeEnum;
@@ -55,6 +56,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.InputStream;
 import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -1202,13 +1204,30 @@ public class KwfDriverService {
         if (CollectionUtils.isEmpty(associatedTrackList)) {
             return Collections.emptyList();
         }
+        //查询轴数表
+        Set<Integer> truckAxleIds = associatedTrackList.stream()
+                .filter(x -> Objects.nonNull(x.getTruckAxleId()))
+                .map(x -> Long.valueOf(x.getTruckAxleId().toString()).intValue())
+                .collect(Collectors.toSet());
+        Map<Integer, TmsTruckAxleNum> truckAxleNumMap = Maps.newHashMap();
+        if (CollectionUtils.isNotEmpty(truckAxleIds)) {
+            List<TmsTruckAxleNum> truckAxleNumList = truckAxleNumRepository.queryByIds(truckAxleIds);
+            if (CollectionUtils.isNotEmpty(truckAxleNumList)) {
+                truckAxleNumMap = truckAxleNumList.stream()
+                        .collect(Collectors.toMap(TmsTruckAxleNum::getId, Function.identity(), (key1, key2) -> key1));
+            }
+        }
+
+
+        Map<Integer, TmsTruckAxleNum> finalTruckAxleNumMap = truckAxleNumMap;
         List<KwfDriverAssociatedTrackVO> associatedTrackVOList = associatedTrackList.stream().map(truck ->{
             KwfDriverAssociatedTrackVO vo = new KwfDriverAssociatedTrackVO();
             TmsTruckAxleNum carAxisInfo = getCarAxisInfo(truck.getTruckAxleId());
             vo.setId(truck.getId());
             vo.setTruckNo(truck.getTruckNo());
             vo.setTruckAxleName(carAxisInfo.getName());
-            vo.setLegalLoad(truck.getLegalLoad());
+            TmsTruckAxleNum tmsTruckAxleNum = finalTruckAxleNumMap.getOrDefault(truck.getTruckAxleId(), new TmsTruckAxleNum());
+            vo.setLegalLoad(tmsTruckAxleNum.getLegalLoad());
             vo.setStatus(truck.getStatus());
             return vo;
         }).collect(Collectors.toList());

+ 3 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/handler/ComeIntoHandler.java

@@ -21,6 +21,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -101,7 +102,8 @@ public class ComeIntoHandler extends AbstractWaybillOrderHandler<WaybillOrderCme
         Date fiveSecondsLater = new Date(System.currentTimeMillis() + 5000);
         // 第二条:称重信息
         KwtWaybillOrderNode node2 = getWaybillOrderNode(param, waybillOrder);
-        node2.setRemark("[" + param.getWeighbridgeName() + "]称重[" + param.getTareAmount() + "吨]");
+        String tareAmount = Objects.isNull(param.getTareAmount()) ? "0.00" : param.getTareAmount().setScale(2, RoundingMode.HALF_UP).toPlainString();
+        node2.setRemark("[" + param.getWeighbridgeName() + "]称重[" + tareAmount + "吨]");
         node2.setCreateTime(fiveSecondsLater);
         waybillOrderNodeRepository.save(node2);
         log.info("记录【称重】节点轨迹成功,节点ID:{}", node2.getId());

+ 3 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/handler/LeaveMockHandler.java

@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -121,6 +122,7 @@ public class LeaveMockHandler extends AbstractWaybillOrderHandler<WaybillOrderLe
 
     @Override
     protected String getRemark(WaybillOrderLeaveMockParam param, KwtWaybillOrder waybillOrder) {
-        return "[" + param.getWeighbridgeName() + "]称重[" + param.getGrossAmount() + "吨]";
+        String grossAmount = Objects.isNull(param.getGrossAmount()) ? "0.00" : param.getGrossAmount().setScale(2, RoundingMode.HALF_UP).toPlainString();
+        return "[" + param.getWeighbridgeName() + "]称重[" + grossAmount + "吨]";
     }
 }

+ 2 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/handler/TakingOrderHandler.java

@@ -544,7 +544,8 @@ public class TakingOrderHandler extends AbstractWaybillOrderHandler<OrderCircula
     protected String getRemark(OrderCirculateTakingQueryParam param, KwtWaybillOrder waybillOrder) {
         KwtWaybillOrder actualOrder = BusinessContext.get("createdWaybillOrder");
         KwtWaybillOrderSubtask subtask = getWaybillSubtask(actualOrder.getId());
-        return  "司机[" + actualOrder.getDriverName() + "]接单成功,预计任务量[" + subtask.getEntrustAmount() + "吨]";
+        String entrustAmount = Objects.isNull(subtask.getEntrustAmount()) ? "0.00" : subtask.getEntrustAmount().setScale(2, RoundingMode.HALF_UP).toPlainString();
+        return  "司机[" + actualOrder.getDriverName() + "]接单成功,预计任务量[" + entrustAmount + "吨]";
     }
 
     // 7. 接单需要单独创建接单轨迹数据

+ 10 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/param/WaybillOrderStatusResp.java

@@ -37,6 +37,11 @@ public class WaybillOrderStatusResp implements Serializable {
      */
     @Schema(description = "物流订单编号")
     private String logisticsOrderNo;
+    /**
+     * 运单编号
+     */
+    @Schema(description = "运单编号")
+    private String waybillNo;
 
     /**
      * 托运单位id
@@ -200,6 +205,9 @@ public class WaybillOrderStatusResp implements Serializable {
      */
     @Schema(description = "状态描述")
     private String statusDesc;
-
-
+    /**
+     * 订单余量
+     */
+    @Schema(description = "订单余量")
+    private String orderSurplus;
 }

+ 1 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/app/WaybillOrderService.java

@@ -663,6 +663,7 @@ public class WaybillOrderService {
         WaybillOrderStatusResp wbOrderResp = new WaybillOrderStatusResp();
         wbOrderResp.setId(wbOrder.getId());
         wbOrderResp.setLogisticsOrderId(Optional.ofNullable(wbOrder.getLOrderId()).map(String::valueOf).orElse(null));
+        wbOrderResp.setWaybillNo(wbOrder.getWOrderNo());
         //装货、卸货净重、任务量
         KwtWaybillOrderSubtask subtask = subtaskMap.getOrDefault(wbOrder.getId(), new KwtWaybillOrderSubtask());
         wbOrderResp.setLoadingNetWeight(subtask.getLoadAmount());