From 65f8b30fdc5405ccfb12747a2d1dfec881de2612 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=A8=E9=B9=8F?= <812968653@qq.com> Date: Sun, 16 Aug 2026 17:51:58 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../promotion/banner_position_dynamic.sql | 20 +++++++++++++++++++ .../service/recent/ViewRecordServiceImpl.java | 6 +++--- 2 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 sql/mysql/promotion/banner_position_dynamic.sql diff --git a/sql/mysql/promotion/banner_position_dynamic.sql b/sql/mysql/promotion/banner_position_dynamic.sql new file mode 100644 index 0000000..0bed852 --- /dev/null +++ b/sql/mysql/promotion/banner_position_dynamic.sql @@ -0,0 +1,20 @@ +-- Banner 位置字典:补「动态页面」= 6(App 动态顶部轮播) +-- 若库中已有 value=6,执行会因业务唯一性报错时可忽略;或先查: +-- SELECT * FROM system_dict_data WHERE dict_type='promotion_banner_position' AND value='6'; + +INSERT INTO `system_dict_data` ( + `sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, + `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted` +) +SELECT 0, '动态页面', '6', 'promotion_banner_position', 0, 'primary', '', + 'App 动态页 Banner', '1', NOW(), '1', NOW(), b'0' +FROM (SELECT 1 AS _) AS t +WHERE NOT EXISTS ( + SELECT 1 FROM `system_dict_data` + WHERE `dict_type` = 'promotion_banner_position' AND `value` = '6' AND `deleted` = b'0' +); + +-- 确保 Banner 菜单可见:营销中心 → 内容管理 → Banner +UPDATE `system_menu` +SET `status` = 0, `visible` = b'1', `deleted` = b'0', `update_time` = NOW() +WHERE `id` IN (2030, 2387, 2025); diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java index 5456f13..516d176 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/recent/ViewRecordServiceImpl.java @@ -61,9 +61,9 @@ public class ViewRecordServiceImpl implements ViewRecordService { } viewRecordMapper.insert(viewRecord); - // 查看用户主页:给被查看方写入互动消息 - if (ObjectUtil.equals(viewRecord.getBizType(), MemberRecentViewRecordEnum.USER.getType()) - && viewRecord.getBizId() != null + // 只要访问了他人主页(bizId=被访问用户),就写入「查看了你」; + // 与入口来源(USER/RECENT/CLASSIFY)无关;解锁微信是另一类 WECHAT_UNLOCKED。 + if (viewRecord.getBizId() != null && viewRecord.getMemberId() != null && ObjectUtil.notEqual(viewRecord.getBizId(), viewRecord.getMemberId())) { memberInteractionService.create(