| | |
| | | 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.system.service.ISysUserService; |
| | | import com.ruoyi.tms.domain.TmsDispatchOrder; |
| | | import com.ruoyi.tms.domain.TmsDriver; |
| | | import com.ruoyi.tms.domain.TmsDriverDispatch; |
| | | 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; |
| | |
| | | |
| | | @Resource |
| | | private TmsDispatchOrderMapper tmsDispatchOrderMapper; |
| | | @Autowired |
| | | private ISysUserService userService; |
| | | |
| | | @Resource |
| | | private TmsDriverDispatchMapper tmsDriverDispatchMapper; |
| | | |
| | | @Resource |
| | | private TmsDriverMapper tmsDriverMapper; |
| | | /** |
| | | * 查询行程 |
| | | * |
| | |
| | | public List<TmsTrip> selectTmsTripList(TmsTrip tmsTrip) |
| | | { |
| | | 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) |
| | | ); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | 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( |
| | | null, |
| | | new LambdaUpdateWrapper<TmsDispatchOrder>() |
| | | .eq(TmsDispatchOrder::getId, dispatchOrderId) |
| | | .set(TmsDispatchOrder::getStatus, 2) |
| | | .set(TmsDispatchOrder::getMainDriverId, null) |
| | | .set(TmsDispatchOrder::getMainDriverName, null) |
| | | ); |
| | | |
| | | tmsDriverDispatchMapper.update( |
| | | null, |
| | | new LambdaUpdateWrapper<TmsDriverDispatch>() |
| | | .eq(TmsDriverDispatch::getDispatchId, dispatchOrderId) |
| | | .eq(TmsDriverDispatch::getDriverId, tmsTrip.getDriverId()) |
| | | .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); |
| | | |
| | | tmsDispatchOrderMapper.update( |
| | | null, |
| | | new LambdaUpdateWrapper<TmsDispatchOrder>() |
| | | .eq(TmsDispatchOrder::getId, dispatchOrderId) |
| | | .set(TmsDispatchOrder::getMainDriverId, tmsDriver.getId()) |
| | | .set(TmsDispatchOrder::getMainDriverName, tmsDriver.getDriverName()) |
| | | ); |
| | | TmsDriverDispatch tmsDriverDispatch = new TmsDriverDispatch(); |
| | | tmsDriverDispatch.setDispatchId(dispatchOrderId); |
| | | tmsDriverDispatch.setDriverId(driverId); |
| | | tmsDriverDispatch.setStatus(4); |
| | | tmsTrip.setVehicleId(tmsDispatchOrder.getVehicleId()); |
| | | tmsTrip.setVehicleNumber(tmsDispatchOrder.getLicensePlate()); |
| | | |
| | | tmsDriverDispatchMapper.insertTmsDriverDispatch(tmsDriverDispatch); |
| | | tmsTrip.setDriverName(tmsDriver.getDriverName()); |
| | | tmsTrip.setCreateBy(SecurityUtils.getUsername()); |
| | | tmsTrip.setCreateTime(DateUtils.getNowDate()); |
| | | tmsTripMapper.insertTmsTrip(tmsTrip); |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 新增行程[批量] |