From 6c741ac9e80353ca42906c1c6c7109324ae9f9f9 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 03 十月 2024 01:02:38 +0800
Subject: [PATCH] 修改bug和翻译

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java |   36 ++++++++++++++++++++++++++++++++++--
 1 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index 9be2ef9..151d279 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -1736,6 +1736,7 @@
                     if(null != settlementAllocation){
                         JSONObject jsonObject = JSON.parseObject(settlementAllocation.getContent());
                         Double maxPrice = jsonObject.getDouble("maxPrice");
+                        Integer type1 = jsonObject.getInteger("type");
                         if(null != maxPrice){
                             List<SettlementDetail> settlementDetailList = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>().eq("driverId", driver.getId())
                                     .isNull("settlementRecordId").last(" and DATE_FORMAT(now(), '%Y-%m-%d') = DATE_FORMAT(createTime, '%Y-%m-%d')"));
@@ -1746,12 +1747,12 @@
                             //日结算
                             if(maxPrice.compareTo(total.doubleValue()) <= 0){
                                 SettlementRecord settlementRecord = settlementRecordService.selectOne(new EntityWrapper<SettlementRecord>().eq("driverId", orderLogistics.getDriverId())
-                                        .eq("type", 1).eq("paymentStatus", 1).last(" and day = DATE_FORMAT(now(), '%Y-%m-%d')"));
+                                        .eq("type", type1).eq("paymentStatus", 1).last(" and day = DATE_FORMAT(now(), '%Y-%m-%d')"));
                                 if(null == settlementRecord){
                                     settlementRecord = new SettlementRecord();
                                     settlementRecord.setDay(new Date());
                                     settlementRecord.setDriverId(orderLogistics.getDriverId());
-                                    settlementRecord.setType(1);
+                                    settlementRecord.setType(type1);
                                     settlementRecord.setPaymentStatus(1);
                                     settlementRecord.setPayMoney(total.doubleValue());
                                     settlementRecord.setInsertTime(new Date());
@@ -1764,6 +1765,37 @@
                                     detail.setSettlementRecordId(settlementRecord.getId());
                                     settlementDetailService.updateById(detail);
                                 }
+                                //强制司机下班
+                                DriverWork driverWork = driverWorkService.selectOne(new EntityWrapper<DriverWork>()
+                                        .eq("driverId", orderLogistics.getDriverId()).eq("state", 1));
+                                if(null != driverWork){
+                                    driverWork.setEndTime(new Date());
+                                    driverWork.setState(2);
+                                    driverWorkService.updateById(driverWork);
+                                    driver.setState(1);
+                                    driverService.updateById(driver);
+                                    Car car = carService.selectById(driver.getCarId());
+                                    if(!org.apache.shiro.util.StringUtils.hasLength(car.getVehicleId())){
+                                        car.setVehicleId(UUIDUtil.getRandomCode());
+                                        carService.updateById(car);
+                                    }
+    
+                                    //司机下班,修改谷歌上的车辆信息
+                                    new Thread(()->{
+                                        try {
+                                            CarModel carModel = carModelMapper.selectById(car.getCarModelId());
+                                            String vehicles = fleetEngineUtil.getVehicles(car.getVehicleId());
+                                            if(ToolUtil.isEmpty(vehicles)){
+                                                fleetEngineUtil.createVehicles(carModel.getSeat() - 1, car.getCarLicensePlate(), car.getVehicleId());
+                                                fleetEngineUtil.updateVehicles("OFFLINE", carModel.getSeat() - 1, car.getCarLicensePlate(), car.getVehicleId());
+                                            }else{
+                                                fleetEngineUtil.updateVehicles("OFFLINE", carModel.getSeat() - 1, car.getCarLicensePlate(), car.getVehicleId());
+                                            }
+                                        }catch (Exception e){
+                                            e.printStackTrace();
+                                        }
+                                    }).start();
+                                }
                             }
                         }
                     }

--
Gitblit v1.7.1