From 2817139481d418d1ac7c276cc8836d3fec36f28a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Mon, 3 Mar 2025 11:20:19 +0800 Subject: [PATCH] =?UTF-8?q?funUtil=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../account/service/impl/CallTableServiceImpl.java | 6 ++++-- .../service/impl/ShopTableOrderStatisticServiceImpl.java | 6 +++--- .../main/java/com/czg/service/account/util/FunUtil.java | 9 ++++++++- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/CallTableServiceImpl.java b/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/CallTableServiceImpl.java index b69d993a5..6bed1c95b 100644 --- a/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/CallTableServiceImpl.java +++ b/cash-service/account-service/src/main/java/com/czg/service/account/service/impl/CallTableServiceImpl.java @@ -49,6 +49,8 @@ public class CallTableServiceImpl extends ServiceImpl { + return funUtil.runFunAndCheckKey(() -> { String callNumKey = RedisCst.getTableCallNumKey(shopId, callTable.getId()); String value = stringRedisTemplate.opsForValue().get(callNumKey); AtomicReference newVal = new AtomicReference<>(""); @@ -244,7 +246,7 @@ public class CallTableServiceImpl extends ServiceImpl implements ShopTableOrderStatisticService{ @Resource - private StringRedisTemplate redisTemplate; + private FunUtil funUtil; @Override public Page summary(Long shopId, String startTime, String endTime) { @@ -39,7 +39,7 @@ public class ShopTableOrderStatisticServiceImpl extends ServiceImpl { + return funUtil.runFunAndCheckKey(() -> { ShopTableOrderStatistic statistic = getOne(new QueryWrapper().eq(ShopTableOrderStatistic::getShopId, shopId).eq(ShopTableOrderStatistic::getTableId, tableId) .eq(ShopTableOrderStatistic::getCreateDay, DateUtil.date().toDateStr())); if (statistic == null) { @@ -52,6 +52,6 @@ public class ShopTableOrderStatisticServiceImpl extends ServiceImpl redisTemplate; public static int retryCount = 5; - public static T runFunAndCheckKey(Supplier supplier, StringRedisTemplate redisTemplate, String lockKey) { + public T runFunAndCheckKey(Supplier supplier, String lockKey) { try{ // 设置分布式锁 boolean lock = Boolean.TRUE.equals(redisTemplate.opsForValue().setIfAbsent(lockKey, "1", 30, TimeUnit.MILLISECONDS));