From 8c04600a8e146548329e905f762705cb0517daa0 Mon Sep 17 00:00:00 2001 From: yanglin Date: Thu, 19 Dec 2024 12:30:09 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3201:=20=E9=A2=84=E8=AE=BE=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E5=B9=82=E7=AD=89=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../msg/center/message/service/card/CardManager.java | 2 +- .../src/main/java/cn/axzo/msg/center/dal/CardDao.java | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardManager.java b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardManager.java index 4c117baa..ce7d5503 100644 --- a/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardManager.java +++ b/inside-notices/src/main/java/cn/axzo/msg/center/message/service/card/CardManager.java @@ -177,7 +177,7 @@ public class CardManager { CardLogger updateCardLogger = cardLoggers.createLogger(CardRequestContext.create(request)); execTransactional(() -> { ArrayList updates = new ArrayList<>(cards.size()); - for (Card card : cardDao.getCardsForUpdate(cards)) { + for (Card card : cardDao.reloadCardsForUpdate(cards)) { if (card.getCardState() == CardState.COMPLETED) continue; updateCardLogger.addCard(card); diff --git a/msg-center-dal/src/main/java/cn/axzo/msg/center/dal/CardDao.java b/msg-center-dal/src/main/java/cn/axzo/msg/center/dal/CardDao.java index c174eb3a..5b8f3c0e 100644 --- a/msg-center-dal/src/main/java/cn/axzo/msg/center/dal/CardDao.java +++ b/msg-center-dal/src/main/java/cn/axzo/msg/center/dal/CardDao.java @@ -78,19 +78,20 @@ public class CardDao extends ServiceImpl { updateBatchById(updates); } - public List getCardsForUpdate(List cards) { + public List reloadCardsForUpdate(List cards) { if (CollectionUtils.isEmpty(cards)) return Collections.emptyList(); - return lambdaQuery() + return DeleteAwareInterceptor.execute(() -> lambdaQuery() .in(Card::getId, collectCardIdsSorted(cards)) .last("FOR UPDATE") - .list(); + .list()); } public List reloadCards(List cards) { if (CollectionUtils.isEmpty(cards)) return Collections.emptyList(); - return DeleteAwareInterceptor.execute(()-> listByIds(collectCardIdsSorted(cards))); + return DeleteAwareInterceptor.execute(() -> + listByIds(collectCardIdsSorted(cards))); } public void deleteCards(List cards) {