From 1798c91f6b0782d1970a8a4fdcaf4a174e68cb61 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 16 五月 2023 10:45:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java
index 9b94d76..69279ab 100644
--- a/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java
+++ b/driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java
@@ -5,12 +5,9 @@
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.supersavedriving.driver.core.util.ToolUtil;
+import com.supersavedriving.driver.modular.system.model.*;
 import com.supersavedriving.driver.modular.system.service.*;
 import com.supersavedriving.driver.modular.system.dao.DriverWorkMapper;
-import com.supersavedriving.driver.modular.system.model.Driver;
-import com.supersavedriving.driver.modular.system.model.DriverWork;
-import com.supersavedriving.driver.modular.system.model.OrderTransfer;
-import com.supersavedriving.driver.modular.system.model.SystemConfig;
 import com.supersavedriving.driver.modular.system.service.*;
 import com.supersavedriving.driver.modular.system.util.RedisUtil;
 import com.supersavedriving.driver.modular.system.util.ResultUtil;
@@ -18,7 +15,9 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Arrays;
 import java.util.Date;
+import java.util.List;
 
 /**
 * 司机上下班操作记录
@@ -42,7 +41,6 @@
 
     @Autowired
     private RedisUtil redisUtil;
-
 
 
 
@@ -72,7 +70,7 @@
             }
         }
 
-        DriverWork driverWork = this.selectOne(new EntityWrapper<DriverWork>().eq("driverId", 1).eq("status", 1));
+        DriverWork driverWork = this.selectOne(new EntityWrapper<DriverWork>().eq("driverId", driverId).eq("status", 1));
         if(null != driverWork){
             return ResultUtil.error("您正在上班中");
         }
@@ -95,6 +93,11 @@
      */
     @Override
     public ResultUtil driverOffWork(Integer driverId, Long onlineTime) throws Exception {
+        List<Integer> state = Arrays.asList(102, 103, 104, 105, 106, 201, 401);
+        int count = orderService.selectCount(new EntityWrapper<Order>().eq("driverId", driverId).eq("status", 1).in("state", state));
+        if(count > 0){
+            return ResultUtil.error("还有未完成的订单");
+        }
         DriverWork driverWork = this.selectOne(new EntityWrapper<DriverWork>().eq("driverId", driverId).eq("status", 1));
         if(null == driverWork){
             return ResultUtil.error("您还未上班");
@@ -108,6 +111,9 @@
         }
         driverWork.setStatus(2);
         this.updateById(driverWork);
+        Driver driver = driverService.selectById(driverId);
+        driver.setServerStatus(1);
+        driverService.updateById(driver);
         return ResultUtil.success();
     }
 }

--
Gitblit v1.7.1