|
|
|
@ -136,11 +136,16 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public RecycleOrder getOrderById(String id) {
|
|
|
|
|
public RecycleOrder getOrderById(String id, Boolean isLock) {
|
|
|
|
|
if (StrUtil.isEmpty(id)) {
|
|
|
|
|
throw new BizIllegalException("请求参数缺失");
|
|
|
|
|
}
|
|
|
|
|
RecycleOrder recycleOrder = this.getById(id);
|
|
|
|
|
LambdaQueryWrapper<RecycleOrder> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
wrapper.eq(RecycleOrder::getId, id);
|
|
|
|
|
if (isLock) {
|
|
|
|
|
wrapper.last("for update");
|
|
|
|
|
}
|
|
|
|
|
RecycleOrder recycleOrder = this.getOne(wrapper);
|
|
|
|
|
if (recycleOrder == null) {
|
|
|
|
|
throw new BizIllegalException("回收订单不存在");
|
|
|
|
|
}
|
|
|
|
@ -302,7 +307,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void updateOrder(RecycleOrderUpdateVO orderUpdateVO) {
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderUpdateVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderUpdateVO.getId(), true);
|
|
|
|
|
// 接单后无法修改订单信息
|
|
|
|
|
if (!recycleOrder.getOrderStatus().equals(OrderStatusEnum.PENDING)) {
|
|
|
|
|
throw new BusinessLogicException("订单处理中,无法修改订单信息");
|
|
|
|
@ -316,7 +321,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void takingOrder(RecycleOrderTakingVO orderTakingVO) {
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderTakingVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderTakingVO.getId(), true);
|
|
|
|
|
if (!recycleOrder.getOrderStatus().equals(OrderStatusEnum.PENDING)) {
|
|
|
|
|
if (recycleOrder.getOrderStatus().equals(OrderStatusEnum.CANCELED)) {
|
|
|
|
|
throw new BusinessLogicException("订单已取消!");
|
|
|
|
@ -336,7 +341,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void cancelOrder(RecycleOrderCancelVO orderCancelVO) {
|
|
|
|
|
RecycleOrder recycleOrder = getOrderById(orderCancelVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderCancelVO.getId(), true);
|
|
|
|
|
if (!recycleOrder.getClientId().equals(orderCancelVO.getClientId())) {
|
|
|
|
|
throw new ForbiddenException("非法操作!");
|
|
|
|
|
}
|
|
|
|
@ -356,7 +361,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void reachOrder(RecycleOrderReachVO orderReachVO) {
|
|
|
|
|
RecycleOrder recycleOrder = getOrderById(orderReachVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderReachVO.getId(), true);
|
|
|
|
|
if (!recycleOrder.getStaffsId().equals(orderReachVO.getStaffsId())) {
|
|
|
|
|
throw new ForbiddenException("非法操作!");
|
|
|
|
|
}
|
|
|
|
@ -379,7 +384,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void finishOrder(RecycleOrderFinishVO orderFinishVO) {
|
|
|
|
|
RecycleOrder recycleOrder = getOrderById(orderFinishVO.getId());
|
|
|
|
|
RecycleOrder recycleOrder = this.getOrderById(orderFinishVO.getId(), true);
|
|
|
|
|
if (!recycleOrder.getStaffsId().equals(orderFinishVO.getStaffsId())) {
|
|
|
|
|
throw new ForbiddenException("非法操作!");
|
|
|
|
|
}
|
|
|
|
@ -434,7 +439,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
|
|
|
|
|
|
|
|
|
|
// 校验订单是否存在
|
|
|
|
|
private void validateOrderExists(String id) {
|
|
|
|
|
if (this.getOrderById(id) == null) {
|
|
|
|
|
if (this.getOrderById(id, false) == null) {
|
|
|
|
|
throw new BizIllegalException("回收订单不存在");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|