This commit is contained in:
@@ -864,14 +864,20 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
String previousStatus = orderInfo.getOrderStatus();
|
||||
if (OrderStatus.COMPLETED.getCode().equals(previousStatus)
|
||||
|| OrderStatus.CANCELLED.getCode().equals(previousStatus)) {
|
||||
log.warn("Order already finished, cannot accept. orderId={}, orderNo={}, operatorByType={}, acceptBy={}",
|
||||
orderId, orderInfo.getOrderNo(), operatorByType, acceptBy);
|
||||
throw new CustomException("订单已结束,无法接单");
|
||||
}
|
||||
PlayClerkUserInfoEntity clerkUserInfoEntity = playClerkUserInfoService.selectById(acceptBy);
|
||||
if (isClerkOperator && StringUtils.isNotBlank(orderInfo.getAcceptBy())
|
||||
&& !orderInfo.getAcceptBy().equals(acceptBy)) {
|
||||
log.warn("Order already accepted by another clerk. orderId={}, orderNo={}, currentAcceptBy={}, requestAcceptBy={}",
|
||||
orderId, orderInfo.getOrderNo(), orderInfo.getAcceptBy(), acceptBy);
|
||||
throw new CustomException("订单已被接单");
|
||||
}
|
||||
if (isClerkOperator && !OrderStatus.PENDING.getCode().equals(previousStatus)) {
|
||||
log.warn("Order status is not pending when clerk tries to accept. orderId={}, orderNo={}, status={}, acceptBy={}",
|
||||
orderId, orderInfo.getOrderNo(), previousStatus, acceptBy);
|
||||
throw new CustomException("订单已被接单");
|
||||
}
|
||||
// 店员接单时,判断店员是否符合资格
|
||||
@@ -905,9 +911,12 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
int updated = this.baseMapper.update(entity, updateWrapper);
|
||||
if (updated == 0) {
|
||||
if (isClerkOperator) {
|
||||
log.warn("Clerk failed to accept order due to concurrent update. orderId={}, orderNo={}, acceptBy={}",
|
||||
orderId, orderInfo.getOrderNo(), acceptBy);
|
||||
throw new CustomException("订单已被接单");
|
||||
}
|
||||
log.warn("Failed to update order status to accepted for admin reassignment, orderId={}", orderId);
|
||||
log.warn("Failed to update order status to accepted for admin reassignment, orderId={}, orderNo={}",
|
||||
orderId, orderInfo.getOrderNo());
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -917,6 +926,8 @@ public class PlayOrderInfoServiceImpl extends ServiceImpl<PlayOrderInfoMapper, P
|
||||
orderInfo.setOrderStatus(OrderStatus.ACCEPTED.getCode());
|
||||
orderInfo.setEstimatedRevenue(revenueAmount);
|
||||
orderInfo.setEstimatedRevenueRatio(estimatedRevenueVo.getRevenueRatio());
|
||||
log.info("Order accepted successfully. orderId={}, orderNo={}, acceptBy={}, operatorByType={}",
|
||||
orderId, orderInfo.getOrderNo(), acceptBy, operatorByType);
|
||||
wxCustomMpService.sendOrderMessageAsync(orderInfo);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user