From a6354b57ab2614b6211fbb89e24c5c8bec76ce86 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期二, 16 五月 2023 10:23:44 +0800 Subject: [PATCH] 修改bug --- driver/guns-admin/src/main/java/com/supersavedriving/driver/modular/system/service/impl/DriverWorkServiceImpl.java | 38 ++++++++++++++++++++++++++------------ 1 files changed, 26 insertions(+), 12 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 da70ede..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 @@ -4,17 +4,20 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; -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.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.service.*; +import com.supersavedriving.driver.modular.system.util.RedisUtil; import com.supersavedriving.driver.modular.system.util.ResultUtil; +import com.supersavedriving.driver.modular.system.service.IDriverWorkService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Arrays; import java.util.Date; +import java.util.List; /** * 司机上下班操作记录 @@ -36,6 +39,8 @@ @Autowired private IOrderTransferService orderTransferService; + @Autowired + private RedisUtil redisUtil; @@ -65,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("您正在上班中"); } @@ -74,7 +79,7 @@ driverWork.setWorkTime(new Date()); driverWork.setOnlineTime(0L); driverWork.setStatus(1); - this.updateById(driverWork); + this.insert(driverWork); return ResultUtil.success(); } @@ -88,18 +93,27 @@ */ @Override public ResultUtil driverOffWork(Integer driverId, Long onlineTime) throws Exception { - DriverWork driverWork = this.selectOne(new EntityWrapper<DriverWork>().eq("driverId", 1).eq("status", 2)); - if(null != driverWork){ - return ResultUtil.error("您已下班,不能重复操作"); + 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 = 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("您还未上班"); } driverWork.setOffWorkTime(new Date()); - driverWork.setOnlineTime(onlineTime); + driverWork.setOnlineTime(0L); + String value = redisUtil.getValue("ONLINE" + driverId); + if(ToolUtil.isNotEmpty(value)){ + Integer online = Integer.valueOf(value.split("_")[0]); + driverWork.setOnlineTime(online.longValue()); + } driverWork.setStatus(2); this.updateById(driverWork); + Driver driver = driverService.selectById(driverId); + driver.setServerStatus(1); + driverService.updateById(driver); return ResultUtil.success(); } } -- Gitblit v1.7.1