From 716ae6d4012283ecc1de45e0b0e399e2b544d1ba Mon Sep 17 00:00:00 2001 From: yanglin Date: Mon, 23 Dec 2024 14:26:02 +0800 Subject: [PATCH] =?UTF-8?q?REQ-3282:=20=E6=9B=B4=E6=96=B0=E5=8D=A1?= =?UTF-8?q?=E7=89=87=E5=A4=B1=E8=B4=A5=E6=97=B6=EF=BC=8C=E5=9B=9E=E6=BB=9A?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../message/service/card/CardManager.java | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 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 495f56ad..7008cd82 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 @@ -252,17 +252,22 @@ public class CardManager { UpdateStateResult update(UpdateBuilder builder) { if (CollectionUtils.isEmpty(cards)) return UpdateStateResult.EMPTY_CARDS; - return execTransactional(() -> { - for (Card card : cardDao.reloadCardsForUpdate(cards)) - builder.buildUpdate(card); - if (CollectionUtils.isEmpty(updates)) - return UpdateStateResult.NO_UPDATE; - cardDao.updateBatchById(updates); - rebuildCardContent(); - updateCardLogger.reloadAndLogCards(String.format("%s:enqueue", operation)); - updateMessages(); - return UpdateStateResult.SUCCESS; - }); + try { + return execTransactional(() -> { + for (Card card : cardDao.reloadCardsForUpdate(cards)) + builder.buildUpdate(card); + if (CollectionUtils.isEmpty(updates)) + return UpdateStateResult.NO_UPDATE; + cardDao.updateBatchById(updates); + rebuildCardContent(); + updateCardLogger.reloadAndLogCards(String.format("%s:enqueue", operation)); + updateMessages(); + return UpdateStateResult.SUCCESS; + }); + } catch (Exception e) { + updateCardLogger.reloadAndLogCards(String.format("%s:fail", operation), e); + throw e; + } } Card createUpdate(Card card) {