Explorar el Código

Merge remote-tracking branch 'origin/dev' into dev

czh hace 1 año
padre
commit
386c23bf35

+ 12 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/WaybillOrderSelectVo.java

@@ -96,12 +96,24 @@ public class WaybillOrderSelectVo implements Serializable {
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date startTime;
 
+    /**
+     * 实际开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date loadTime;
+
     /**
      * 计划结束时间
      */
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date endTime;
 
+    /**
+     * 实际结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date unloadTime;
+
     /**
      * 派单量/吨
      */

+ 14 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderV1Service.java

@@ -516,10 +516,18 @@ public class KwtWaybillOrderV1Service {
         List<KwtWaybillOrderAddress> loadAddresses = waybillOrderAddressDao.findByAddresses(waybillOrder.getWOrderId(), AddressTypeEnum.SHIPMENT.getCode());
         //子运单
         List<KwtWaybillOrderAddress> unloadAddresses = waybillOrderAddressDao.findByAddresses(waybillOrder.getWOrderId(), AddressTypeEnum.TAKE.getCode());
+        //榜单信息
+        List<KwtWaybillOrderTicket> tickets = waybillOrderTicketDao.findWaybillOrderTicket(waybillOrder.getWOrderId(), null, null);
+        List<KwtWaybillOrderTicket> loadTickets = tickets.stream().filter(item -> item.getType().equals(NumberConstant.ONE)).toList();
+        List<KwtWaybillOrderTicket> unloadTickets = tickets.stream().filter(item -> item.getType().equals(NumberConstant.TWO)).toList();
         //装货时间
-        Optional<KwtWaybillOrderSubtask> unloadDate = subtasks.stream().max(Comparator.comparing(KwtWaybillOrderSubtask::getUnloadTime));
+        Optional<KwtWaybillOrderSubtask> startDate = subtasks.stream().min(Comparator.comparing(KwtWaybillOrderSubtask::getLoadTime));
         //卸货时间
-        Optional<KwtWaybillOrderSubtask> loadDate = subtasks.stream().min(Comparator.comparing(KwtWaybillOrderSubtask::getLoadTime));
+        Optional<KwtWaybillOrderSubtask> endDate = subtasks.stream().max(Comparator.comparing(KwtWaybillOrderSubtask::getUnloadTime));
+        //实际装货时间
+        Optional<KwtWaybillOrderTicket> loadDate = loadTickets.stream().min(Comparator.comparing(KwtWaybillOrderTicket::getOperateTime));
+        //实际卸货时间
+        Optional<KwtWaybillOrderTicket> unloadDate = unloadTickets.stream().max(Comparator.comparing(KwtWaybillOrderTicket::getOperateTime));
         //装货地点名称
         List<String> loadName = loadAddresses.stream().map(KwtWaybillOrderAddress::getCityName).toList();
         //装货地点
@@ -560,8 +568,10 @@ public class KwtWaybillOrderV1Service {
             waybillOrder.setProcureFirmName(procure.getFirmName());
             waybillOrder.setSupplyFirmName(supply.getFirmName());
         }
-        waybillOrder.setStartTime(loadDate.get().getLoadTime());
-        waybillOrder.setEndTime(unloadDate.get().getUnloadTime());
+        waybillOrder.setStartTime(startDate.get().getLoadTime());
+        waybillOrder.setEndTime(endDate.get().getUnloadTime());
+        waybillOrder.setLoadTime(loadDate.get().getOperateTime());
+        waybillOrder.setUnloadTime(unloadDate.get().getOperateTime());
         waybillOrder.setLoadName(loadName);
         waybillOrder.setLoadAddress(loadAddress);
         waybillOrder.setLoadTime(loadTime);

+ 6 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/operateService/KwtManagementLogisticsOrderService.java

@@ -195,6 +195,7 @@ public class KwtManagementLogisticsOrderService {
                 longUserMap = remoteSystemService.queryUserCacheMapByIds(collect);
             }
         }
+
         for (ManagementLogisticsOrderVO vo : list) {
             vo.setOrderSourceLabel(orderSource == null ? null : orderSource.get(vo.getOrderSource()));
             vo.setAccountsCycleLabel(settlementDictData.get(vo.getAccountsCycle()));
@@ -206,8 +207,8 @@ public class KwtManagementLogisticsOrderService {
 //            vo.setUnloadAddress(vo.getUnloadCityName() + vo.getUnloadAddress());
 
             String lOrderId = vo.getLOrderId();
-            List<String> loadName = new ArrayList<String>();
-            List<String> loadAddressList = new ArrayList<String>();
+            List<String> loadName = new ArrayList<>();
+            List<String> loadAddressList = new ArrayList<>();
             List<KwtLogisticsOrderAddress> loadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
                     .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
                     .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
@@ -218,8 +219,8 @@ public class KwtManagementLogisticsOrderService {
                 loadAddressList.add(address.getDetailAddress());
             });
 
-            List<String> unloadName = new ArrayList<String>();
-            List<String> unloadAddressList = new ArrayList<String>();
+            List<String> unloadName = new ArrayList<>();
+            List<String> unloadAddressList = new ArrayList<>();
             List<KwtLogisticsOrderAddress> unloadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
                     .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
                     .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
@@ -229,6 +230,7 @@ public class KwtManagementLogisticsOrderService {
                 unloadName.add(address.getName());
                 unloadAddressList.add(address.getDetailAddress());
             });
+
             vo.setLoadNames(loadName);
             vo.setLoadAddresses(loadAddressList);
             vo.setUnloadNames(unloadName);