|
|
@@ -931,13 +931,15 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
|
|
|
public Result orderRiderDelivery(Long userId, OrderRiderDeliveryDTO orderDeliveryDTO) {
|
|
|
// 添加拍照发短信逻辑
|
|
|
// 因为原有的确认送达方法代码比较凌乱,且不好重新封装,所以这里就在原有确认收货方法之前添加拍照发短信逻辑
|
|
|
- try{
|
|
|
- String acquireCode = orderDeliveryDTO.getAcquireCode();
|
|
|
- TbIndent indentOrder = tbIndentDao.findIndentByOrderId(acquireCode);
|
|
|
- if (ObjectUtil.isNull(indentOrder)) {
|
|
|
- throw new SqxException("扫码无效的跑腿订单id");
|
|
|
- }
|
|
|
+ String acquireCode = orderDeliveryDTO.getAcquireCode();
|
|
|
+ TbIndent indentOrder = tbIndentDao.findIndentByOrderId(acquireCode);
|
|
|
+ if (ObjectUtil.isNull(indentOrder)) {
|
|
|
+ throw new SqxException("扫码无效的跑腿订单id");
|
|
|
+ }
|
|
|
|
|
|
+ RLock lock = redissonClient.getLock(String.format(RedisKey.UPDATE_INDENT_LOCK, indentOrder.getIndentNumber()));
|
|
|
+ lock.lock();
|
|
|
+ try{
|
|
|
// 如果是外卖订单
|
|
|
if (ObjectUtil.equal(indentOrder.getIndentType(), "5")) {
|
|
|
orderHandTakeoutOrder(indentOrder, userId, orderDeliveryDTO);
|
|
|
@@ -948,6 +950,9 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
|
|
|
log.error("完成订单异常:"+e.getMessage(),e);
|
|
|
throw new SqxException(e.getMessage());
|
|
|
}
|
|
|
+ finally {
|
|
|
+ lock.unlock();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1781,4 +1786,4 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
|
|
|
}
|
|
|
String contents = "订单已完成,服务费将在稍后返回到您的账户";
|
|
|
userService.pushToSingle(title, contents, riderEntity.getClientid());
|
|
|
- }*/
|
|
|
+ }*/
|