|
|
|
@ -147,12 +147,21 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void takingOrder(RecycleOrderTakingVO orderTakingVO) {
|
|
|
|
|
validateOrderExists(orderTakingVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = BeanUtils.copyBean(orderTakingVO, RecycleOrder.class);
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderTakingVO.getId());
|
|
|
|
|
if (!recycleOrder.getOrderStatus().equals(OrderStatusEnum.PENDING)) {
|
|
|
|
|
if (recycleOrder.getOrderStatus().equals(OrderStatusEnum.CANCELED)) {
|
|
|
|
|
throw new BizIllegalException("订单已取消!");
|
|
|
|
|
}
|
|
|
|
|
throw new BizIllegalException("订单处理中,无法接单");
|
|
|
|
|
}
|
|
|
|
|
recycleOrder = BeanUtils.copyBean(orderTakingVO, RecycleOrder.class);
|
|
|
|
|
recycleOrder.setOrderStatus(OrderStatusEnum.UNPROCESSED);
|
|
|
|
|
recycleOrder.setReceiveTime(LocalDateTime.now());
|
|
|
|
|
log.info("recycleOrder takingVO: {}", recycleOrder);
|
|
|
|
|
this.updateById(recycleOrder);
|
|
|
|
|
boolean takingResult = this.updateById(recycleOrder);
|
|
|
|
|
if (!takingResult) {
|
|
|
|
|
throw new BizIllegalException("该订单已被接单!");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -218,7 +227,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
List<RecycleOrderProduct> recycleOrderProducts = BeanUtils.copyList(recycleOrderProductVOList, RecycleOrderProduct.class);
|
|
|
|
|
this.recycleOrderProductService.updateOrderProducts(recycleOrderProducts);
|
|
|
|
|
|
|
|
|
|
// 给散户加余额 todo
|
|
|
|
|
// 给散户加余额 异步? todo
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|