Pu Zhibing
2025-07-30 410e261a251e07b17bba8aa9b098eb21c34de5cb
DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
@@ -509,10 +509,10 @@
    public ResultUtil grabOrder(Integer orderId, Integer orderType, Integer uid) throws Exception {
        //专车和出租是批量下单,所以这里需要将两种类型的抢单操作通过一个锁来一起控制
        if(1 == orderType || 2 == orderType){
//            RLock lock = redissonClient.getLock("grabOrder:" + orderId);
//            if(!lock.tryLock()){
//                return ResultUtil.error("抢单失败,请稍后重试");
//            }
            Boolean lock = redisTemplate.opsForValue().setIfAbsent("grabOrder:" + orderId, "1");
            if(!lock){
                return ResultUtil.error("抢单失败,请稍后重试");
            }
            try {
                if(1 == orderType){
                    return orderPrivateCarService.grabOrder(orderId, uid);
@@ -523,7 +523,7 @@
            }catch (Exception e){
                e.printStackTrace();
            }finally {
//                lock.unlock();
                redisTemplate.delete("grabOrder:" + orderId);
            }
        }
        switch (orderType){