提交 247d0c32 authored 作者: huyufan's avatar huyufan

Merge remote-tracking branch 'origin/v4.9_create_goods_child_20230918' into…

Merge remote-tracking branch 'origin/v4.9_create_goods_child_20230918' into v4.9_create_goods_child_20230918
...@@ -21,4 +21,14 @@ public class RabbitKeyConstants { ...@@ -21,4 +21,14 @@ public class RabbitKeyConstants {
public static final String ORDER_GOODS_SYNC_TRUCK_DRIVER_INFO_QUEUE = "clx-performance.order.goods.sync.truck.driver.info.queue"; public static final String ORDER_GOODS_SYNC_TRUCK_DRIVER_INFO_QUEUE = "clx-performance.order.goods.sync.truck.driver.info.queue";
// 司机出车状态更新
public static final String DRIVER_EXCHANGE = "clx-user.driver.exchange";
public static final String DRIVER_ORDER_STATUS_UPDATE_KEY = "clx-user.driver.orderStatus.update.key";
// 车辆出车状态更新
public static final String TRUCK_EXCHANGE = "clx-user.truck.exchange";
public static final String TRUCK_ORDER_STATUS_UPDATE_KEY = "clx-user.truck.orderStatus.update.key";
} }
...@@ -7,4 +7,7 @@ public interface DriverService { ...@@ -7,4 +7,7 @@ public interface DriverService {
Optional<DriverTruckInfoFeignVo> getUserDetailInfo(Long driverUserNo, Integer truckId); Optional<DriverTruckInfoFeignVo> getUserDetailInfo(Long driverUserNo, Integer truckId);
void updateOrderStatus(Long driverUserNo, Integer driverOrderStatus, Integer truckId, Integer truckOrderStatus);
} }
...@@ -4,6 +4,7 @@ import com.clx.performance.extranal.user.DriverService; ...@@ -4,6 +4,7 @@ import com.clx.performance.extranal.user.DriverService;
import com.clx.user.feign.DriverFeign; import com.clx.user.feign.DriverFeign;
import com.clx.user.vo.feign.DriverTruckInfoFeignVo; import com.clx.user.vo.feign.DriverTruckInfoFeignVo;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.enums.ResultCodeEnum;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -25,4 +26,11 @@ public class DriverServiceImpl implements DriverService { ...@@ -25,4 +26,11 @@ public class DriverServiceImpl implements DriverService {
return map; return map;
} }
@Override
public void updateOrderStatus(Long driverUserNo, Integer driverOrderStatus, Integer truckId, Integer truckOrderStatus){
Optional.ofNullable(driverFeign.updateOrderStatus(driverUserNo, driverOrderStatus, truckId, truckOrderStatus))
.filter(Result::succeed).orElseThrow(ResultCodeEnum.FAIL);
}
} }
...@@ -21,6 +21,7 @@ import com.clx.performance.vo.pc.CarrierOrderChildDetailVO; ...@@ -21,6 +21,7 @@ import com.clx.performance.vo.pc.CarrierOrderChildDetailVO;
import com.clx.performance.vo.pc.OrderChildPCVO; import com.clx.performance.vo.pc.OrderChildPCVO;
import com.clx.performance.vo.pc.PageCarrierOrderChildVO; import com.clx.performance.vo.pc.PageCarrierOrderChildVO;
import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO; import com.clx.performance.vo.pc.PageOrderChildPoundAuditVO;
import com.clx.user.enums.driver.DriverInfoEnum;
import com.clx.user.vo.feign.DriverTruckInfoFeignVo; import com.clx.user.vo.feign.DriverTruckInfoFeignVo;
import com.msl.common.base.Optional; import com.msl.common.base.Optional;
import com.msl.common.enums.ResultCodeEnum; import com.msl.common.enums.ResultCodeEnum;
...@@ -31,6 +32,7 @@ import com.msl.user.data.UserSessionData; ...@@ -31,6 +32,7 @@ import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil; import com.msl.user.utils.TokenUtil;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -55,6 +57,7 @@ import java.util.stream.Collectors; ...@@ -55,6 +57,7 @@ import java.util.stream.Collectors;
@Service @Service
@AllArgsConstructor @AllArgsConstructor
public class OrderChildServiceImpl implements OrderChildService { public class OrderChildServiceImpl implements OrderChildService {
private final AmqpTemplate rabbitTemplate;
private final OrderGoodsDao orderGoodsDao; private final OrderGoodsDao orderGoodsDao;
private final OrderGoodsTruckBindDao orderGoodsTruckBindDao; private final OrderGoodsTruckBindDao orderGoodsTruckBindDao;
...@@ -164,11 +167,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -164,11 +167,8 @@ public class OrderChildServiceImpl implements OrderChildService {
// 新增运单 // 新增运单
orderChildDao.saveEntity(orderChild); orderChildDao.saveEntity(orderChild);
// 更新司机状态 // 更新出车状态
lockDriver(orderChild.getDriverUserNo()); updateDriverOrderStatusLock(orderChild.getDriverUserNo(), orderChild.getTruckId());
// 更新车辆状态
lockTruck(orderChild.getTruckId());
// 新增日志 // 新增日志
orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.CREATED.getCode(), OrderChildLogEnum.Type.CREATED.getMsg(), orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.CREATED.getCode(), OrderChildLogEnum.Type.CREATED.getMsg(),
...@@ -483,9 +483,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -483,9 +483,8 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChildPoundAuditDao.saveEntity(audit); orderChildPoundAuditDao.saveEntity(audit);
// 释放司机、车辆 // 更新出车状态
releaseDriver(orderChild.getDriverUserNo()); updateDriverOrderStatusUnload(orderChild.getDriverUserNo(), orderChild.getTruckId());
releaseTruck(orderChild.getTruckId());
} }
...@@ -644,6 +643,9 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -644,6 +643,9 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChild.setStatus(OrderChildEnum.Status.UNSETTLE.getCode()); orderChild.setStatus(OrderChildEnum.Status.UNSETTLE.getCode());
orderChildDao.updateDriverConfirm(orderChild); orderChildDao.updateDriverConfirm(orderChild);
// 更新车辆状态
updateDriverOrderStatusDriverConfirm(orderChild.getTruckId());
// 日志 // 日志
orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.DRIVER_CONFIRM.getCode(), OrderChildLogEnum.Type.DRIVER_CONFIRM.getMsg(), orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.DRIVER_CONFIRM.getCode(), OrderChildLogEnum.Type.DRIVER_CONFIRM.getMsg(),
loginUserInfo.getUserNo(), loginUserInfo.getUserName()); loginUserInfo.getUserNo(), loginUserInfo.getUserName());
...@@ -696,9 +698,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -696,9 +698,8 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChildDao.updateCancel(orderChild); orderChildDao.updateCancel(orderChild);
// 释放司机、车辆 // 更新出车状态
releaseDriver(orderChild.getDriverUserNo()); updateDriverOrderStatusCancel(orderChild.getDriverUserNo(), orderChild.getTruckId());
releaseTruck(orderChild.getTruckId());
// 日志 // 日志
orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.DRIVER_CANCEL.getCode(), OrderChildLogEnum.Type.DRIVER_CANCEL.getMsg(), orderChildLogService.saveDriverOrderChildLog(childNo, OrderChildLogEnum.Type.DRIVER_CANCEL.getCode(), OrderChildLogEnum.Type.DRIVER_CANCEL.getMsg(),
...@@ -747,9 +748,8 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -747,9 +748,8 @@ public class OrderChildServiceImpl implements OrderChildService {
orderChildDao.updateCancel(orderChild); orderChildDao.updateCancel(orderChild);
// 释放司机、车辆 // 更新出车状态
releaseDriver(orderChild.getDriverUserNo()); updateDriverOrderStatusCancel(orderChild.getDriverUserNo(), orderChild.getTruckId());
releaseTruck(orderChild.getTruckId());
// 日志 // 日志
orderChildLogService.saveCarrierOrderChildLog(childNo, OrderChildLogEnum.Type.PLATFORM_CANCEL.getCode(), OrderChildLogEnum.Type.PLATFORM_CANCEL.getMsg(), orderChildLogService.saveCarrierOrderChildLog(childNo, OrderChildLogEnum.Type.PLATFORM_CANCEL.getCode(), OrderChildLogEnum.Type.PLATFORM_CANCEL.getMsg(),
...@@ -960,31 +960,32 @@ public class OrderChildServiceImpl implements OrderChildService { ...@@ -960,31 +960,32 @@ public class OrderChildServiceImpl implements OrderChildService {
/** /**
* 接单锁定司机 * 更新出车状态 (接单, 运单重车)
*/ */
private void lockDriver(Long driverNo){ private void updateDriverOrderStatusLock(Long driverUserNo, Integer truckId){
driverService.updateOrderStatus(driverUserNo, DriverInfoEnum.DriverStatus.YES.getCode(), truckId, 3);
} }
/** /**
* 接单锁定车辆 * 更新出车状态(运单卸车,运单空车)
*/ */
private void lockTruck(Integer truckId){ private void updateDriverOrderStatusUnload(Long driverUserNo, Integer truckId){
driverService.updateOrderStatus(driverUserNo, DriverInfoEnum.DriverStatus.NO.getCode(), truckId, 2);
} }
/** /**
* 释放司机 * 更新出车状态 (运单取消,空车)
*/ */
private void releaseDriver(Long driverNo){ private void updateDriverOrderStatusCancel(Long driverUserNo, Integer truckId){
driverService.updateOrderStatus(driverUserNo, DriverInfoEnum.DriverStatus.NO.getCode(), truckId, 1);
} }
/** /**
* 释放车辆 * 更新出车状态 (司机确认收货,空车)
*/ */
private void releaseTruck(Integer truckId){ private void updateDriverOrderStatusDriverConfirm(Integer truckId){
driverService.updateOrderStatus(null, null, truckId, 1);
} }
/** /**
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论