续租和逾期处理状态处理
This commit is contained in:
@ -235,12 +235,16 @@ public class OrderServiceImpl implements OrderService {
|
||||
String redisLockKey = RedisKeyConstants.ORDER_SUB_KEY + userInfoDTO.getUserId();
|
||||
if(redisUtil.getRedisLock(redisLockKey, "续租")) {
|
||||
try{
|
||||
|
||||
LambdaQueryWrapper<OrderMainPO> currentOrderWrapper = new LambdaQueryWrapper<>();
|
||||
currentOrderWrapper.eq(OrderMainPO::getOrderNo, rentCarOrderReq.getOrderNo()).last( " limit 1");
|
||||
OrderMainPO orderMainPO = orderMainRepo.getOne(currentOrderWrapper);
|
||||
if(orderMainPO == null){
|
||||
throw new BizException("订单不存在");
|
||||
}
|
||||
if(!OrderStatusEnum.RENT_ING.getCode().equals(orderMainPO.getOrderStatus()) && !OrderStatusEnum.RENT_OVERDUE.getCode().equals(orderMainPO.getOrderStatus())){
|
||||
throw new BizException("订单非租赁或逾期状态,不能续租");
|
||||
}
|
||||
//生成子表订单
|
||||
String paymentType;
|
||||
if(rentCarOrderReq.getIsAutoDeduct()){
|
||||
@ -353,6 +357,7 @@ public class OrderServiceImpl implements OrderService {
|
||||
LambdaQueryWrapper<OrderSubPO> orderSubQueryWrapper = new LambdaQueryWrapper<>();
|
||||
orderSubQueryWrapper.eq(OrderSubPO::getOrderId, orderMainPO.getOrderId());
|
||||
orderSubQueryWrapper.eq(OrderSubPO::getPayStatus, PayStatusEnum.USERPAYING.getCode());
|
||||
orderSubQueryWrapper.orderByDesc(OrderSubPO::getCreatedAt);
|
||||
List<OrderSubPO> orderSubPOList = orderSubRepo.list(orderSubQueryWrapper);
|
||||
if(orderSubPOList.isEmpty()){
|
||||
throw new InnerException("待支付子订单不存在");
|
||||
@ -437,6 +442,9 @@ public class OrderServiceImpl implements OrderService {
|
||||
if(orderMainPO == null){
|
||||
throw new BizException("订单不存在");
|
||||
}
|
||||
if(!OrderStatusEnum.RENT_OVERDUE.getCode().equals(orderMainPO.getOrderStatus())){
|
||||
throw new BizException("订单非逾期状态,不能逾期处理");
|
||||
}
|
||||
//生成子表订单
|
||||
String paymentType;
|
||||
if(rentCarOrderReq.getIsAutoDeduct()){
|
||||
|
||||
Reference in New Issue
Block a user