From dbba98cd9b4e691ebe1ebcf1c6f94eebddc7f89d Mon Sep 17 00:00:00 2001 From: Taoning Ge Date: Thu, 6 Feb 2025 10:47:36 +0800 Subject: [PATCH] =?UTF-8?q?refactor-IUpdateAbility-=E6=B7=BB=E5=8A=A0=20be?= =?UTF-8?q?foreUpdate(id,=20body)=20=E6=96=B9=E6=B3=95=20(#47)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ximatai/muyun/ability/curd/std/IUpdateAbility.java | 10 ++++++++++ .../muyun/platform/controller/OutboxController.java | 5 +++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/muyun-core/src/main/java/net/ximatai/muyun/ability/curd/std/IUpdateAbility.java b/muyun-core/src/main/java/net/ximatai/muyun/ability/curd/std/IUpdateAbility.java index ed33f45..7235f8a 100644 --- a/muyun-core/src/main/java/net/ximatai/muyun/ability/curd/std/IUpdateAbility.java +++ b/muyun-core/src/main/java/net/ximatai/muyun/ability/curd/std/IUpdateAbility.java @@ -20,16 +20,25 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; /** * 修改数据的能力 */ public interface IUpdateAbility extends IDatabaseAbilityStd, IMetadataAbility { + /** + * @deprecated 请使用带 Map 参数的 beforeUpdate 方法,这个方法将在未来的版本中移除 + */ + @Deprecated(forRemoval = true) default void beforeUpdate(String id) { } + default void beforeUpdate(String id, Optional body) { + + } + default void afterUpdate(String id) { } @@ -40,6 +49,7 @@ default void afterUpdate(String id) { @Operation(summary = "修改数据", description = "返回被修改数据的数量,正常为1") default Integer update(@PathParam("id") String id, Map body) { beforeUpdate(id); + beforeUpdate(id, Optional.of(body)); HashMap map = new HashMap(body); map.put(getPK(), id); map.put("t_update", LocalDateTime.now()); diff --git a/muyun-platform/src/main/java/net/ximatai/muyun/platform/controller/OutboxController.java b/muyun-platform/src/main/java/net/ximatai/muyun/platform/controller/OutboxController.java index 55dead7..8e24791 100644 --- a/muyun-platform/src/main/java/net/ximatai/muyun/platform/controller/OutboxController.java +++ b/muyun-platform/src/main/java/net/ximatai/muyun/platform/controller/OutboxController.java @@ -6,6 +6,7 @@ import org.eclipse.microprofile.openapi.annotations.tags.Tag; import java.util.Map; +import java.util.Optional; import static net.ximatai.muyun.platform.PlatformConst.BASE_PATH; @@ -18,7 +19,7 @@ public String getAuthCondition() { //发件箱查看只能看自己发的信件( } @Override - public void beforeUpdate(String id) { + public void beforeUpdate(String id, Optional body) { PageResult query = this.query(Map.of( "id_at_app_message__root", id )); @@ -29,6 +30,6 @@ public void beforeUpdate(String id) { @Override public void beforeDelete(String id) { - this.beforeUpdate(id); + this.beforeUpdate(id, Optional.empty()); } }