From 85e1acac71016eb752b39e741d7b4b5704fa7e66 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 21 八月 2025 01:55:53 +0800
Subject: [PATCH] update

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java |   93 +++++++++++++++++++++++++---------------------
 1 files changed, 51 insertions(+), 42 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
index b004709..826b31a 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/DriverServiceImpl.java
@@ -156,7 +156,7 @@
         List<Driver> drivers = driverMapper.queryIdleDriver(type, companyId);
         List<Driver> list = new ArrayList<>();
         for(Driver driver : drivers){
-            String value = (String) redisTemplate.opsForValue().get("DRIVER" + String.valueOf(driver.getId()));
+            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
             if(null != value){
                 Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                 double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
@@ -173,7 +173,7 @@
         List<Driver> drivers = driverMapper.queryIdleDriver_(type, serverCarModelId, companyId);
         List<Driver> list = new ArrayList<>();
         for(Driver driver : drivers){
-            String value = (String) redisTemplate.opsForValue().get("DRIVER" + String.valueOf(driver.getId()));
+            String value = (String) redisTemplate.opsForValue().get("dache:DRIVER" + String.valueOf(driver.getId()));
             if(null != value){
                 Map<String, Double> distance1 = geodesyUtil.getDistance(lon + "," + lat, value);
                 double d = Double.valueOf(distance1.get("WGS84")).doubleValue();
@@ -1330,7 +1330,7 @@
         String s = JwtTokenUtil.generateToken(String.valueOf(driver.getId()));
         redisTemplate.opsForValue().set(s.substring(s.length() - 32), String.valueOf(driver.getId()), 7, TimeUnit.DAYS);
         redisTemplate.opsForValue().set(driver.getPhone(), s.substring(s.length() - 32));
-        redisTemplate.opsForValue().set("DRIVER_" + driver.getId(), s);
+        redisTemplate.opsForValue().set("dache:DRIVER_" + driver.getId(), s);
     
     
         LoginWarpper loginWarpper = new LoginWarpper();
@@ -1426,7 +1426,7 @@
         String s = JwtTokenUtil.generateToken(String.valueOf(driver.getId()));
         redisTemplate.opsForValue().set(s.substring(s.length() - 32), String.valueOf(driver.getId()), 7, TimeUnit.DAYS);
         redisTemplate.opsForValue().set(driver.getPhone(), s.substring(s.length() - 32));
-        redisTemplate.opsForValue().set("DRIVER_" + driver.getId(), s);
+        redisTemplate.opsForValue().set("dache:DRIVER_" + driver.getId(), s);
     
     
         LoginWarpper loginWarpper = new LoginWarpper();
@@ -1512,7 +1512,7 @@
         String s = JwtTokenUtil.generateToken(String.valueOf(driver.getId()));
         redisTemplate.opsForValue().set(s.substring(s.length() - 32), String.valueOf(driver.getId()), 7, TimeUnit.DAYS);
         redisTemplate.opsForValue().set(driver.getPhone(), s.substring(s.length() - 32));
-        redisTemplate.opsForValue().set("DRIVER_" + driver.getId(), s);
+        redisTemplate.opsForValue().set("dache:DRIVER_" + driver.getId(), s);
     
     
         LoginWarpper loginWarpper = new LoginWarpper();
@@ -1620,9 +1620,9 @@
         Driver driver = driverMapper.selectById(id);
         String key = (String) redisTemplate.opsForValue().get(driver.getPhone());
         redisTemplate.delete(key);//删除个人信息数据
-        redisTemplate.delete("DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
-        redisTemplate.delete("DRIVER_" + id);//清除存储的token
-        redisTemplate.delete("DEVICE_" + id);//清除车载端登录的标识
+        redisTemplate.delete("dache:DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
+        redisTemplate.delete("dache:DRIVER_" + id);//清除存储的token
+        redisTemplate.delete("dache:DEVICE_" + id);//清除车载端登录的标识
         return ResultUtil.success();
     }
 
@@ -1630,18 +1630,23 @@
     public DriverIndexVo queryHomeDataFromDriver(Integer uid) {
         DriverIndexVo driverIndexVo = new DriverIndexVo();
         // 获取快车订单
-        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().ne("state", 10).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
+        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().in("state", Arrays.asList(7, 8, 9)).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
         // 跨城订单
-        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().ne("state", 10).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
+        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().in("state", Arrays.asList(7, 8, 9)).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
         // 出租车订单
-        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().ne("state", 10).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
+        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().in("state", Arrays.asList(7, 8, 9)).eq("driverId", uid).like("insertTime", LocalDate.now().toString()));
         driverIndexVo.setTodayOrderNum(orderPrivateCars.size() + orderCrossCities.size() + orderTaxis.size());
 
 
-        double sum = orderPrivateCars.stream().mapToDouble(OrderPrivateCar::getOrderMoney).sum();
-        double sum1 = orderCrossCities.stream().mapToDouble(OrderCrossCity::getOrderMoney).sum();
-        double sum2 = orderTaxis.stream().mapToDouble(OrderTaxi::getOrderMoney).sum();
-        driverIndexVo.setTodayOrderMoney(new BigDecimal(sum +sum1+sum2));
+//
+//        double sum1 = orderCrossCities.stream().mapToDouble(OrderCrossCity::getOrderMoney).sum();
+//        double sum2 = orderTaxis.stream().filter(e->e.getOrderMoney()!=null).mapToDouble(OrderTaxi::getOrderMoney).sum();
+//
+
+        List<Income> incomes = incomeService.selectList(new EntityWrapper<Income>().eq("objectId", uid).eq("userType", 2).eq("type", 2).like("insertTime", LocalDate.now().toString()));
+        double sum = incomes.stream().mapToDouble(Income::getMoney).sum();
+
+        driverIndexVo.setTodayOrderMoney(new BigDecimal(sum));
 
 
         BigDecimal reduce = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().eq("promotionDriverId", uid).like("insertTime", LocalDate.now().toString())).stream().map(OrderPrivateCar::getPromotionMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
@@ -1696,33 +1701,37 @@
         DriverOrderMoneyDataVo driverOrderDataVo = new DriverOrderMoneyDataVo();
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM");
-        // 总的订单数
-        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
-        // 跨城订单
-        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
-        // 出租车订单
-        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
+//        // 总的订单数
+//        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
+//        // 跨城订单
+//        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
+//        // 出租车订单
+//        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().in("state",Arrays.asList(8,9)).eq("driverId", uid));
 
 
-        double sum = orderPrivateCars.stream().mapToDouble(OrderPrivateCar::getOrderMoney).sum();
-        double sum1 = orderCrossCities.stream().mapToDouble(OrderCrossCity::getOrderMoney).sum();
-        double sum2 = orderTaxis.stream().mapToDouble(OrderTaxi::getOrderMoney).sum();
-        driverOrderDataVo.setAllOrderMoney(new BigDecimal(sum +sum1+sum2));
+        List<Income> incomes = incomeService.selectList(new EntityWrapper<Income>().eq("objectId", uid).eq("userType", 2).eq("type", 2));
+
+
+//        double sum = orderPrivateCars.stream().mapToDouble(OrderPrivateCar::getOrderMoney).sum();
+//        double sum1 = orderCrossCities.stream().mapToDouble(OrderCrossCity::getOrderMoney).sum();
+//        double sum2 = orderTaxis.stream().mapToDouble(OrderTaxi::getOrderMoney).sum();
+        double sum4 = incomes.stream().mapToDouble(Income::getMoney).sum();
+        driverOrderDataVo.setAllOrderMoney(new BigDecimal(sum4));
 
 
 
-        double count = orderPrivateCars.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(OrderPrivateCar::getOrderMoney).sum();
-        double count1 = orderCrossCities.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(OrderCrossCity::getOrderMoney).sum();
-        double count2 = orderTaxis.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(OrderTaxi::getOrderMoney).sum();
-        driverOrderDataVo.setTodayOrderMoney(new BigDecimal(count+count1+count2));
+        double count = incomes.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(Income::getMoney).sum();
+//        double count1 = orderCrossCities.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(OrderCrossCity::getOrderMoney).sum();
+//        double count2 = orderTaxis.stream().filter(e -> simpleDateFormat.format(e.getInsertTime()).equals(LocalDate.now().toString())).mapToDouble(OrderTaxi::getOrderMoney).sum();
+        driverOrderDataVo.setTodayOrderMoney(new BigDecimal(count));
 
 
         Date date = new Date();
         String month = simpleDateFormat1.format(date);
-        double count3 = orderPrivateCars.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(OrderPrivateCar::getOrderMoney).sum();
-        double count4 = orderCrossCities.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(OrderCrossCity::getOrderMoney).sum();
-        double count5 = orderTaxis.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(OrderTaxi::getOrderMoney).sum();
-        driverOrderDataVo.setMonthOrderMoney(new BigDecimal(count3+count4+count5));
+        double count3 = incomes.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(Income::getMoney).sum();
+//        double count4 = orderCrossCities.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(OrderCrossCity::getOrderMoney).sum();
+//        double count5 = orderTaxis.stream().filter(e -> simpleDateFormat1.format(e.getInsertTime()).equals(month)).mapToDouble(OrderTaxi::getOrderMoney).sum();
+        driverOrderDataVo.setMonthOrderMoney(new BigDecimal(count3));
 
         String sTime=null;
         String eTime=null;
@@ -1744,11 +1753,11 @@
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM");
         // 总的订单数
-        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid));
+        List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.selectList(new EntityWrapper<OrderPrivateCar>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid).isNotNull("successTime"));
         // 跨城订单
-        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid));
+        List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.selectList(new EntityWrapper<OrderCrossCity>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid).isNotNull("successTime"));
         // 出租车订单
-        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid));
+        List<OrderTaxi> orderTaxis = orderTaxiMapper.selectList(new EntityWrapper<OrderTaxi>().in("state",Arrays.asList(8,9)).eq("promotionDriverId", uid).isNotNull("successTime"));
 
 
         BigDecimal sum = orderPrivateCars.stream().map(OrderPrivateCar::getPromotionMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
@@ -1795,16 +1804,16 @@
      */
     private void singlePointLogin(Integer id) {
         //开始验证当前账号是否在别处登录
-        String value = (String) redisTemplate.opsForValue().get("DRIVER_" + id);
+        String value = (String) redisTemplate.opsForValue().get("dache:DRIVER_" + id);
         if (ToolUtil.isNotEmpty(value)) {//将另外设备上的强迫下线(如果是车载端不需要下线)
             //开始清除redis中无效的数据
             Driver driver = driverMapper.selectById(id);
-            String key = (String) redisTemplate.opsForValue().get("DRIVER_" + driver.getPhone());
+            String key = (String) redisTemplate.opsForValue().get("dache:DRIVER_" + driver.getPhone());
             if(ToolUtil.isNotEmpty(key)){
                 redisTemplate.delete(key);//删除个人信息数据
             }
-            redisTemplate.delete("DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
-            redisTemplate.delete("DRIVER_" + id);//清除存储的token
+            redisTemplate.delete("dache:DRIVER_" + driver.getPhone());//删除后台冻结相关缓存
+            redisTemplate.delete("dache:DRIVER_" + id);//清除存储的token
         }
     }
     
@@ -1831,8 +1840,8 @@
                 usernamePasswordToken, simpleAuthenticationInfo);
         String s = JwtTokenUtil.generateToken(String.valueOf(driver.getId()));
         redisTemplate.opsForValue().set(s.substring(s.length() - 32), String.valueOf(driver.getId()), 7, TimeUnit.DAYS);
-        redisTemplate.opsForValue().set("DRIVER_" + driver.getPhone(), s.substring(s.length() - 32));
-        redisTemplate.opsForValue().set("DRIVER_" + driver.getId(), s);
+        redisTemplate.opsForValue().set("dache:DRIVER_" + driver.getPhone(), s.substring(s.length() - 32));
+        redisTemplate.opsForValue().set("dache:DRIVER_" + driver.getId(), s);
         return s;
     }
     

--
Gitblit v1.7.1