Explorar o código

优化扫码锁逻辑

夏文涛 hai 1 ano
pai
achega
2210076335

+ 5 - 4
src/main/java/com/sqx/modules/errand/service/impl/TbIndentServiceImpl.java

@@ -1045,13 +1045,14 @@ public class TbIndentServiceImpl extends ServiceImpl<TbIndentDao, TbIndent> impl
             throw new SqxException("扫码无效的跑腿订单id");
         }
 
+        // 如果是外卖订单
+        if (ObjectUtil.equal(indentOrder.getIndentType(), "5")) {
+            orderHandTakeoutOrder(indentOrder, userId, orderDeliveryDTO);
+        }
+
         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);
-            }
 
             return orderFinshOrder(userId, indentOrder.getIndentNumber());
         } catch (Exception e) {