From f0b4d0e6bc47a18f4e10ca4c007dcaa01c9c9647 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 16 五月 2023 15:10:35 +0800
Subject: [PATCH] BUG修改

---
 management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java |   64 ++++++++++++++++++++++++--------
 1 files changed, 48 insertions(+), 16 deletions(-)

diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
index 308b357..a4789e6 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
@@ -183,8 +183,12 @@
                                 || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())
                                 || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList());
                 // 驾龄
-                Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
-                tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                if(Objects.nonNull(tDriver.getFirstCertificateTime())){
+                    Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
+                    tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                }else {
+                    tOrderServerResp.setDrivingExperience(0);
+                }
                 // 代驾次数
                 tOrderServerResp.setValetDrivingCount(collect.size());
                 // 行驶时间
@@ -199,8 +203,12 @@
                 }
                 tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue());
                 // 行驶里程
-                int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
-                tOrderServerResp.setMileageTraveled(sum/1000);
+                if(CollectionUtils.isEmpty(collect)){
+                    tOrderServerResp.setMileageTraveled(0);
+                }else {
+                    int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
+                    tOrderServerResp.setMileageTraveled(sum/1000);
+                }
             }
             map.put("serverList",orderServerRespList);
             // 查询今天所有订单
@@ -254,8 +262,12 @@
                                 || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())
                                 || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList());
                 // 驾龄
-                Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
-                tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                if(Objects.nonNull(tDriver.getFirstCertificateTime())){
+                    Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
+                    tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                }else {
+                    tOrderServerResp.setDrivingExperience(0);
+                }
                 // 代驾次数
                 tOrderServerResp.setValetDrivingCount(collect.size());
                 // 行驶时间
@@ -270,8 +282,12 @@
                 }
                 tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue());
                 // 行驶里程
-                int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
-                tOrderServerResp.setMileageTraveled(sum/1000);
+                if(CollectionUtils.isEmpty(collect)){
+                    tOrderServerResp.setMileageTraveled(0);
+                }else {
+                    int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
+                    tOrderServerResp.setMileageTraveled(sum/1000);
+                }
             }
             map.put("serverList",orderServerRespList);
 
@@ -330,8 +346,12 @@
                                 || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())
                                 || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList());
                 // 驾龄
-                Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
-                tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                if(Objects.nonNull(tDriver.getFirstCertificateTime())){
+                    Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
+                    tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                }else {
+                    tOrderServerResp.setDrivingExperience(0);
+                }
                 // 代驾次数
                 tOrderServerResp.setValetDrivingCount(collect.size());
                 // 行驶时间
@@ -346,8 +366,12 @@
                 }
                 tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue());
                 // 行驶里程
-                int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
-                tOrderServerResp.setMileageTraveled(sum/1000);
+                if(CollectionUtils.isEmpty(collect)){
+                    tOrderServerResp.setMileageTraveled(0);
+                }else {
+                    int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
+                    tOrderServerResp.setMileageTraveled(sum/1000);
+                }
             }
             map.put("serverList",orderServerRespList);
         }else {
@@ -366,8 +390,12 @@
                                 || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode())
                                 || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList());
                 // 驾龄
-                Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
-                tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                if(Objects.nonNull(tDriver.getFirstCertificateTime())){
+                    Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime()));
+                    tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1));
+                }else {
+                    tOrderServerResp.setDrivingExperience(0);
+                }
                 // 代驾次数
                 tOrderServerResp.setValetDrivingCount(collect.size());
                 // 行驶时间
@@ -382,8 +410,12 @@
                 }
                 tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue());
                 // 行驶里程
-                int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
-                tOrderServerResp.setMileageTraveled(sum/1000);
+                if(CollectionUtils.isEmpty(collect)){
+                    tOrderServerResp.setMileageTraveled(0);
+                }else {
+                    int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum();
+                    tOrderServerResp.setMileageTraveled(sum/1000);
+                }
             }
             map.put("serverList",orderServerRespList);
         }

--
Gitblit v1.7.1