hjl
2024-05-27 f991c73f56f35665bcbe8ce2252c04ea82032b10
ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/TGoodsServiceImpl.java
@@ -59,7 +59,7 @@
        String key = String.format(RedisConstants.GOOD_STOCK, goods.getId());
        RSemaphore semaphore = redissonClient.getSemaphore(key);
        semaphore.trySetPermits(goods.getSurplus());
        return new GoodDetailVO(goods,recipient);
        return new GoodDetailVO(goods, recipient);
    }
    @Override
@@ -88,6 +88,8 @@
        // redisson分布式锁,防止超卖
        String key = String.format(RedisConstants.GOOD_STOCK, good.getId());
        RSemaphore semaphore = redissonClient.getSemaphore(key);
        // 请求超时时间 单位:毫秒
        semaphore.trySetPermits(1000);
        boolean tried = semaphore.tryAcquire(number);
        // 兑换失败,库存不足
        if (!tried) {