From bfd374eedf28fc660e6731b356f67739185891dd Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sun, 3 May 2026 13:27:31 +0800 Subject: [PATCH] ♻️ refactor(im): 清理代码中的 TODO 注释并优化逻辑 --- yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/controller/admin/manager/group/vo/ImGroupManagerPageReqVO.java | 1 - yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/group/ImGroupServiceImpl.java | 2 -- yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/message/ImGroupMessageServiceImpl.java | 1 - yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/websocket/ImWebSocketServiceImpl.java | 1 - 4 files changed, 0 insertions(+), 5 deletions(-) diff --git a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/controller/admin/manager/group/vo/ImGroupManagerPageReqVO.java b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/controller/admin/manager/group/vo/ImGroupManagerPageReqVO.java index 6abb081..e7da76b 100644 --- a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/controller/admin/manager/group/vo/ImGroupManagerPageReqVO.java +++ b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/controller/admin/manager/group/vo/ImGroupManagerPageReqVO.java @@ -27,7 +27,6 @@ public class ImGroupManagerPageReqVO extends PageParam { @Schema(description = "是否封禁", example = "false") private Boolean banned; - // TODO DONE @AI:这个不太对,参考别的模块 @Schema(description = "创建时间", example = "[2026-04-01 00:00:00, 2026-04-30 23:59:59]") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private LocalDateTime[] createTime; diff --git a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/group/ImGroupServiceImpl.java b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/group/ImGroupServiceImpl.java index 7e0b642..b27edb0 100644 --- a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/group/ImGroupServiceImpl.java +++ b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/group/ImGroupServiceImpl.java @@ -382,7 +382,6 @@ public class ImGroupServiceImpl implements ImGroupService { throw exception(MESSAGE_NOT_IN_GROUP); } // 3. 幂等 + 上限校验 - // TODO @AI:并发读改写非原子(两个管理员同时 pin 不同消息会丢更新),后续考虑 @Version 乐观锁或带旧值条件的 SQL List pinned = new ArrayList<>(CollUtil.emptyIfNull(group.getPinnedMessageIds())); if (pinned.contains(messageId)) { throw exception(GROUP_MESSAGE_ALREADY_PINNED); @@ -405,7 +404,6 @@ public class ImGroupServiceImpl implements ImGroupService { // 1. 校验群主 / 管理员;同时拿到 group 复用,避免再走一次 @Cacheable ImGroupDO group = validateOwnerOrAdminAndGetGroup(groupId, userId); // 2. 幂等校验 - // TODO @AI:并发读改写非原子,后续考虑 @Version 乐观锁或带旧值条件的 SQL List pinned = new ArrayList<>(CollUtil.emptyIfNull(group.getPinnedMessageIds())); if (!pinned.contains(messageId)) { throw exception(GROUP_MESSAGE_NOT_PINNED); diff --git a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/message/ImGroupMessageServiceImpl.java b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/message/ImGroupMessageServiceImpl.java index f00ac09..0ffd12d 100644 --- a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/message/ImGroupMessageServiceImpl.java +++ b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/message/ImGroupMessageServiceImpl.java @@ -369,7 +369,6 @@ public class ImGroupMessageServiceImpl implements ImGroupMessageService { visibleUserIds.remove(message.getSenderId()); // 4. 只返回在可见范围内且已读位置 >= messageId 的用户 - // DONE @AI:根据返回结果,进行简化;应该都是 Long、Long;——RedisDAO 已返回 Map,直接使用 List readUserIds = new ArrayList<>(); allPositions.forEach((uid, readMaxMessageId) -> { if (visibleUserIds.contains(uid) && readMaxMessageId >= messageId) { diff --git a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/websocket/ImWebSocketServiceImpl.java b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/websocket/ImWebSocketServiceImpl.java index ab8da84..f73408f 100644 --- a/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/websocket/ImWebSocketServiceImpl.java +++ b/yudao-module-im/src/main/java/cn/iocoder/yudao/module/im/service/websocket/ImWebSocketServiceImpl.java @@ -15,7 +15,6 @@ import org.springframework.validation.annotation.Validated; import java.util.Collection; -// TODO @芋艿:后续要分析下,是不是要拆分下 notify(类似好友、群的变更) /** * IM WebSocket 推送 Service 实现类 *

-- libgit2 0.21.4