From 4636b03d801662db1b8712d7a9ae9105462eca37 Mon Sep 17 00:00:00 2001
From: zhangback <zhangback@163.com>
Date: 星期二, 18 十一月 2025 09:53:26 +0800
Subject: [PATCH] 提交
---
tms/src/main/java/com/ruoyi/tms/service/impl/TmsTripServiceImpl.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 117 insertions(+), 3 deletions(-)
diff --git a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsTripServiceImpl.java b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsTripServiceImpl.java
index 04eba79..100a799 100644
--- a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsTripServiceImpl.java
+++ b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsTripServiceImpl.java
@@ -1,13 +1,21 @@
package com.ruoyi.tms.service.impl;
+import java.util.Collections;
import java.util.List;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.DateUtils;
import javax.annotation.Resource;
import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.tms.domain.TmsDispatchOrder;
+import com.ruoyi.system.service.ISysUserService;
+import com.ruoyi.tms.domain.*;
import com.ruoyi.tms.mapper.TmsDispatchOrderMapper;
+import com.ruoyi.tms.mapper.TmsDriverDispatchMapper;
+import com.ruoyi.tms.mapper.TmsDriverMapper;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.stereotype.Service;
import org.springframework.scheduling.annotation.Async;
@@ -20,7 +28,6 @@
import com.ruoyi.common.core.service.BaseService;
import com.ruoyi.tms.mapper.TmsTripMapper;
-import com.ruoyi.tms.domain.TmsTrip;
import com.ruoyi.tms.service.ITmsTripService;
import com.ruoyi.common.core.text.Convert;
@@ -40,6 +47,16 @@
@Resource
private TmsDispatchOrderMapper tmsDispatchOrderMapper;
+ @Autowired
+ private ISysUserService userService;
+
+ @Resource
+ private TmsDriverDispatchMapper tmsDriverDispatchMapper;
+
+ @Resource
+ private TmsDriverMapper tmsDriverMapper;
+ @Autowired
+ private TmsVehicleServiceImpl tmsVehicleServiceImpl;
/**
* 鏌ヨ琛岀▼
@@ -80,6 +97,19 @@
return tmsTripMapper.selectTmsTripList(tmsTrip);
}
+ @Override
+ public List<TmsTrip> tmsTripList(Integer dispatchId) {
+ Integer deviceId = userService.getDeviceId(SecurityUtils.getUserId());
+ if (deviceId == null){
+ return null;
+ }
+ return tmsTripMapper.selectList(new LambdaQueryWrapper<TmsTrip>()
+ .eq(TmsTrip::getDispatchOrderId,dispatchId)
+ .eq(TmsTrip::getDriverId,deviceId)
+ .orderByDesc(TmsTrip::getId)
+ );
+ }
+
/**
* 鏌ヨ琛岀▼鍒楄〃 寮傛 瀵煎嚭
*
@@ -118,11 +148,95 @@
}
tmsDispatchOrder.setStatus(2);
tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
-
+ tmsTrip.setDriverName(tmsDispatchOrder.getMainDriverName());
+ tmsTrip.setVehicleId(tmsDispatchOrder.getVehicleId());
+ tmsTrip.setVehicleNumber(tmsDispatchOrder.getLicensePlate());
tmsTrip.setCreateBy(SecurityUtils.getUsername());
tmsTrip.setCreateTime(DateUtils.getNowDate());
return tmsTripMapper.insertTmsTrip(tmsTrip);
}
+ @Override
+ public AjaxResult submitDropHook(TmsTrip tmsTrip){
+ Integer dispatchOrderId = tmsTrip.getDispatchOrderId();
+ TmsDispatchOrder tmsDispatchOrder = tmsDispatchOrderMapper.selectTmsDispatchOrderById(dispatchOrderId);
+ if (tmsDispatchOrder == null){
+ throw new RuntimeException("鏈壘鍒拌皟搴﹀崟鏁版嵁");
+ }
+ if (tmsDispatchOrder.getStatus() != 1 && tmsDispatchOrder.getStatus() != 2){
+ throw new RuntimeException("璋冨害鍗曟暟鎹姸鎬佸紓甯�");
+ }
+ tmsDispatchOrderMapper.update(
+ new LambdaUpdateWrapper<TmsDispatchOrder>()
+ .eq(TmsDispatchOrder::getId, dispatchOrderId)
+ .set(TmsDispatchOrder::getStatus, 2)
+ .set(TmsDispatchOrder::getMainDriverId, null)
+ .set(TmsDispatchOrder::getMainDriverName, null)
+ .set(TmsDispatchOrder::getVehicleId, null)
+ .set(TmsDispatchOrder::getLicensePlate, null)
+ );
+
+ tmsDriverDispatchMapper.update(
+ new LambdaUpdateWrapper<TmsDriverDispatch>()
+ .eq(TmsDriverDispatch::getDispatchId, dispatchOrderId)
+ .eq(TmsDriverDispatch::getDriverId, tmsDispatchOrder.getMainDriverId())
+ .set(TmsDriverDispatch::getStatus, 3)
+ );
+ tmsTrip.setDriverName(tmsDispatchOrder.getMainDriverName());
+ tmsTrip.setVehicleId(tmsDispatchOrder.getVehicleId());
+ tmsTrip.setVehicleNumber(tmsDispatchOrder.getLicensePlate());
+ tmsTrip.setCreateBy(SecurityUtils.getUsername());
+ tmsTrip.setCreateTime(DateUtils.getNowDate());
+ tmsTripMapper.insertTmsTrip(tmsTrip);
+ return AjaxResult.success();
+ }
+ @Override
+ public AjaxResult submitPickHook(TmsTrip tmsTrip){
+ Integer dispatchOrderId = tmsTrip.getDispatchOrderId();
+ TmsDispatchOrder tmsDispatchOrder = tmsDispatchOrderMapper.selectTmsDispatchOrderById(dispatchOrderId);
+ if (tmsDispatchOrder == null){
+ throw new RuntimeException("鏈壘鍒拌皟搴﹀崟鏁版嵁");
+ }
+ if (tmsDispatchOrder.getStatus() != 1 && tmsDispatchOrder.getStatus() != 2){
+ throw new RuntimeException("璋冨害鍗曟暟鎹姸鎬佸紓甯�");
+ }
+ Integer driverId = tmsTrip.getDriverId();
+ TmsDriver tmsDriver = tmsDriverMapper.selectTmsDriverById(driverId);
+ TmsDriverDispatch driverDispatch = tmsDriverDispatchMapper.selectOne(new LambdaUpdateWrapper<TmsDriverDispatch>()
+ .eq(TmsDriverDispatch::getDispatchId, dispatchOrderId)
+ .eq(TmsDriverDispatch::getDriverId, driverId)
+ .eq(TmsDriverDispatch::getStatus, 2)
+ );
+ if (driverDispatch == null){
+ throw new RuntimeException("鏈壘鍒板叧鑱旀暟鎹�");
+ }
+
+
+ TmsVehicle tmsVehicle = tmsVehicleServiceImpl.selectTmsVehicleById(driverDispatch.getDriverId());
+
+ tmsDispatchOrderMapper.update(
+ new LambdaUpdateWrapper<TmsDispatchOrder>()
+ .eq(TmsDispatchOrder::getId, dispatchOrderId)
+ .set(TmsDispatchOrder::getMainDriverId, tmsDriver.getId())
+ .set(TmsDispatchOrder::getMainDriverName, tmsDriver.getDriverName())
+ .set(TmsDispatchOrder::getVehicleId, tmsVehicle.getId())
+ .set(TmsDispatchOrder::getLicensePlate, tmsVehicle.getLicensePlate())
+ );
+ tmsDriverDispatchMapper.update(
+ new LambdaUpdateWrapper<TmsDriverDispatch>()
+ .eq(TmsDriverDispatch::getDispatchId, dispatchOrderId)
+ .eq(TmsDriverDispatch::getDriverId, tmsTrip.getDriverId())
+ .set(TmsDriverDispatch::getStatus, 4)
+ );
+
+ tmsTrip.setVehicleId(tmsDispatchOrder.getVehicleId());
+ tmsTrip.setVehicleNumber(tmsDispatchOrder.getLicensePlate());
+ tmsTrip.setDriverName(tmsDriver.getDriverName());
+ tmsTrip.setCreateBy(SecurityUtils.getUsername());
+ tmsTrip.setCreateTime(DateUtils.getNowDate());
+ tmsTripMapper.insertTmsTrip(tmsTrip);
+ return AjaxResult.success();
+ }
+
/**
* 鏂板琛岀▼[鎵归噺]
--
Gitblit v1.8.0