Răsfoiți Sursa

提交app端接口开发

chenxiaofei 2 luni în urmă
părinte
comite
9e2001591d

+ 28 - 26
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/kwfTruckTraceService.java

@@ -382,35 +382,37 @@ public class kwfTruckTraceService {
         }
         //查询数据中台获取轨迹
         List<VehicleReturnData> vehicleReturnDataList = getVehicleReturnDataList(wOrderNo);
-        if (CollectionUtils.isEmpty(vehicleReturnDataList)){
-            return new CurrentTaskTraceReqVo();
-        }
-        //组织返回数据
-        List<CurrentTaskTraceReqVo.CurrentTaskTrace> currentTaskTraceList = vehicleReturnDataList.stream()
-                .map(kwfTruckTraceService::getCurrentTaskTrace)
-                .sorted(Comparator.comparing(CurrentTaskTraceReqVo.CurrentTaskTrace::getLocationTime))
-                .collect(Collectors.toList());
+
         CurrentTaskTraceReqVo currentTaskTraceReqVo = new CurrentTaskTraceReqVo();
-        currentTaskTraceReqVo.setOrderNo(vehicleReturnDataList.get(0).getWOrderNo());
-
-        for (int i = 1; i < currentTaskTraceList.size(); i++) {
-            CurrentTaskTraceReqVo.CurrentTaskTrace current = currentTaskTraceList.get(i);
-            CurrentTaskTraceReqVo.CurrentTaskTrace previous = currentTaskTraceList.get(i - 1);
-            LocalDateTime currentTime = LocalDateTime.parse(current.getLocationTime());
-            LocalDateTime previousTime = LocalDateTime.parse(previous.getLocationTime());
-            Duration duration = Duration.between(previousTime, currentTime);
-            current.setDuration(String.valueOf(duration.toMinutes()));
-        }
-        CurrentTaskTraceReqVo.CurrentTaskTrace first = currentTaskTraceList.get(0);
-        CurrentTaskTraceReqVo.CurrentTaskTrace last = currentTaskTraceList.get(currentTaskTraceList.size() - 1);
+        if (CollectionUtils.isNotEmpty(vehicleReturnDataList)){
+            //组织返回数据
+            List<CurrentTaskTraceReqVo.CurrentTaskTrace> currentTaskTraceList = vehicleReturnDataList.stream()
+                    .map(kwfTruckTraceService::getCurrentTaskTrace)
+                    .sorted(Comparator.comparing(CurrentTaskTraceReqVo.CurrentTaskTrace::getLocationTime))
+                    .collect(Collectors.toList());
+
+            currentTaskTraceReqVo.setOrderNo(vehicleReturnDataList.get(0).getWOrderNo());
+
+            for (int i = 1; i < currentTaskTraceList.size(); i++) {
+                CurrentTaskTraceReqVo.CurrentTaskTrace current = currentTaskTraceList.get(i);
+                CurrentTaskTraceReqVo.CurrentTaskTrace previous = currentTaskTraceList.get(i - 1);
+                LocalDateTime currentTime = LocalDateTime.parse(current.getLocationTime());
+                LocalDateTime previousTime = LocalDateTime.parse(previous.getLocationTime());
+                Duration duration = Duration.between(previousTime, currentTime);
+                current.setDuration(String.valueOf(duration.toMinutes()));
+            }
+            CurrentTaskTraceReqVo.CurrentTaskTrace first = currentTaskTraceList.get(0);
+            CurrentTaskTraceReqVo.CurrentTaskTrace last = currentTaskTraceList.get(currentTaskTraceList.size() - 1);
+
+            LocalDateTime firstTime = LocalDateTime.parse(first.getLocationTime());
+            LocalDateTime lastTime = LocalDateTime.parse(last.getLocationTime());
 
-        LocalDateTime firstTime = LocalDateTime.parse(first.getLocationTime());
-        LocalDateTime lastTime = LocalDateTime.parse(last.getLocationTime());
+            Duration totalDuration = Duration.between(firstTime, lastTime);
+            long durationInMinutes = totalDuration.toMinutes();
+            currentTaskTraceReqVo.setTotalDuration(String.valueOf(durationInMinutes));
+            currentTaskTraceReqVo.setCurrentTaskTraceList(currentTaskTraceList);
+        }
 
-        Duration totalDuration = Duration.between(firstTime, lastTime);
-        long durationInMinutes = totalDuration.toMinutes();
-        currentTaskTraceReqVo.setTotalDuration(String.valueOf(durationInMinutes));
-        currentTaskTraceReqVo.setCurrentTaskTraceList(currentTaskTraceList);
         //构造点位假数据
         List<CurrentTaskTraceReqVo.CurrentAddress> addressList = getCurrentAddresses();
         // 将地址列表设置到 CurrentTaskTraceReqVo 对象中