diff --git a/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java b/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java index 2b69f9f..78a9172 100644 --- a/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java +++ b/src/main/java/com/sczx/order/service/impl/OrderServiceImpl.java @@ -875,6 +875,9 @@ public class OrderServiceImpl implements OrderService { if(!orderMainPO.getOrderStatus().equals(OrderStatusEnum.RENT_ING.getCode())){ throw new BizException("订单非租车状态,不能变更车辆"); } + if(!orderMainPO.getStoreId().equals(carDTO.getStoreId())){ + throw new BizException("车辆得当前门店车辆"); + } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(OrderSubPO::getOrderId, orderMainPO.getOrderId()) @@ -912,12 +915,20 @@ public class OrderServiceImpl implements OrderService { orderCarImgRepo.saveBatch(carImagePOList); } - //变更车辆状态 + //变更新车辆状态为租赁中 LambdaUpdateWrapper carPOLambdaUpdateWrapper = new LambdaUpdateWrapper<>(); carPOLambdaUpdateWrapper.eq(CarPO::getId, carDTO.getId()) .set(CarPO::getBrsStatus, CarStatusEnum.RENT_ING.getCode()); carRepo.update(carPOLambdaUpdateWrapper); + //变更旧车辆为空闲 + LambdaUpdateWrapper oldCarPOLambdaUpdateWrapper = new LambdaUpdateWrapper<>(); + oldCarPOLambdaUpdateWrapper.eq(CarPO::getId, orderMainPO.getVehicleId()) + .set(CarPO::getBrsStatus, CarStatusEnum.NORMAL.getCode()); + carRepo.update(oldCarPOLambdaUpdateWrapper); + + + //记录变更记录 OrderCarChangePO orderCarChangePO = new OrderCarChangePO(); orderCarChangePO.setOrderId(orderMainPO.getOrderId());