Commit Graph

5491 Commits (61c9e1acf2fa46cda5fa0aee9faea455c70b5c8f)

Author SHA1 Message Date
YunaiV 3836467481 feat(im): 优化名片消息类型 v0.1:补充缺失的名片展示 2026-05-06 08:21:52 +08:00
YunaiV f3de29f95f feat(im): 增加名片消息类型 2026-05-06 08:00:36 +08:00
YunaiV 8f2eddea4a feat(im): 增加发送中的能力,针对图片、文件、视频等 2026-05-06 08:00:23 +08:00
YunaiV f8cc9d14d9 feat(im): 优化下禁言弹窗的样式 2026-05-05 22:51:26 +08:00
YunaiV 5bd99c53c2 🐛 fix(im):codex 评审修复 FRIEND_ADD / FRIEND_DELETE 接收方 peer 与 clear 气泡
- FRIEND_ADD 接收方 peer 改按帧 sender / receiver 反推:becomeFriends 单条入库后双方收到同一份 payload,payload.friendUserId 固定是 toUserId,本端真正的对端要看自己是 sender 还是 receiver;新增 websocketStore.computeFriendPeerId 算好后传给 friendStore.applyFriendAdd/DeleteNotification
- FRIEND_DELETE clear=true 跳过气泡插入:clear 语义是清会话本身,气泡分支按 isFriendDeleteWithClear 校验,避免在已清会话里写虚拟消息

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-05 22:32:04 +08:00
YunaiV c653c2fa2b feat(im): 增强消息处理逻辑,支持好友通知与撤回消息 2026-05-05 22:15:48 +08:00
YunaiV 4e181564b8 feat(im): 清理一些 TODO 的修复 2026-05-05 22:04:45 +08:00
YunaiV a9f54fdee1 feat(im): 重构普通消息类型,和 openim 的消息编号对齐 2026-05-05 21:56:05 +08:00
YunaiV 055d4bab27 feat(im): 联动好友 / 群通知重构,抽 useMuteOverlay 统一禁言拦截与媒体上传公共骨架 2026-05-05 21:33:27 +08:00
YunaiV e48316231c feat(im): 增加好友申请的管理界面 2026-05-05 19:36:29 +08:00
YunaiV 390b66aee8 feat(im): 群禁言/封禁 UI 交互 + 群主解散群聊
一、群禁言交互
- MessageItem 右键菜单新增「禁言/解除禁言/移除」(权限校验)
- 新增 GroupMuteMemberDialog 禁言时长选择弹窗
- ConversationGroupSide 新增「全群禁言」开关
- MessageInput 新增禁言/封禁覆盖层,拦截所有发送入口
- canManageSender 目标角色未知时不展示管理菜单
- 全群禁言群主按 ownerUserId 直接豁免,不依赖成员列表

二、群封禁(GROUP_BANNED 1533)
- constants 激活 GROUP_BANNED 常量,扩展 isGroupNotification 范围
- groupStore 处理 1533 事件,实时更新 banned 字段
- MessageInput 覆盖层最高优先级判断 banned(红底)
- Group 类型、convertGroup 映射 banned 字段

三、禁言事件(1512-1515)
- constants 激活 GROUP_MEMBER_MUTED / CANCEL_MUTED / MUTED / CANCEL_MUTED
- groupStore 处理 1512-1515 事件,更新 muteEndTime / mutedAll
- user.ts 新增 4 条禁言 + 2 条封禁通知文案
- GroupNotificationPayload 扩展 mutedUserId / muteEndTime / banned

四、群主解散群聊
- ConversationGroupSide 底部按钮:群主显示「解散群聊」,非群主显示「退出群聊」
- 新增 handleDissolve 实现(二次确认 → dissolveGroup API → 清本地数据)
2026-05-05 18:41:28 +08:00
芋道源码 9d8d0647be
!877 feat(system): 优化用户选择 UserSelectV2 布局,多选支持、默认选中当前用户支持、禁选支持、默认部门支持,可替代…
Merge pull request !877 from 半栈幼儿员/hotfix/user
2026-05-05 10:10:47 +00:00
YunaiV 7b4c7028a0 feat(im):群禁言功能(阶段三管理后台 UI)
1. group API 新增 mutedAll 字段 + 3 个禁言接口(muteAll、muteMember、cancelMuteMember)
2. group member API 新增 muteEndTime 字段
3. 管理后台群列表新增「全群禁言」列(已禁言/未禁言标签)
4. 群详情抽屉新增「全群禁言」状态行 + 成员表新增「禁言状态」列(禁言中 + 到期时间)
2026-05-05 16:58:51 +08:00
YunaiV 4d006f8e73 feat(im):将"免打扰"字段从 muted 全量重命名为 silent(DO/VO/Service/Mapper/测试/SQL + 前端 types/store/组件/管理后台),为后续 mute 禁言功能腾出词族 2026-05-05 13:51:53 +08:00
preschooler 536e54062e feat(system): 优化用户选择 UserSelectV2 布局,多选支持、默认选中当前用户支持、禁选支持、默认部门支持,可替代项目所有位置,可移除原 UserSelectForm、UserSelect,避免一次性查询所有用户 2026-05-05 12:35:31 +08:00
YunaiV dd75c702db feat(im):删好友「同时清空聊天记录」弹窗 + 顶部「对方还不是你的朋友」胶囊(点击弹 UserInfoCard)+ fetchFriends 不动 DISABLE 尊重用户选择 2026-05-05 00:57:58 +08:00
YunaiV 2a55748296 feat(im):增加好友删除时,增加是否删除本地聊天的选项 2026-05-05 00:33:06 +08:00
YunaiV 1400bd80dd 🐛 fix(im):loadFriendRequest 按 id 大小决定插入位置,老 id 不入避免破坏倒序 + loadMore 重复 push 2026-05-04 23:06:12 +08:00
YunaiV 14e3f85cb0 ♻️ refactor(im):用户申请列表,增加流式查询,避免一次性加载过多,或者历史无法被加载到。 2026-05-04 22:46:20 +08:00
YunaiV 9fc25b7109 ♻️ refactor(im):friendStore 修 setMuted/removeFriend 一致性 + 新申请直推列表 + 清 dispatcher 防御兜底 2026-05-04 21:13:36 +08:00
YunaiV 45bac49ec0 ♻️ refactor(im):friendStore 回调参数 f 改全名 friend / existing 2026-05-04 19:52:44 +08:00
YunaiV b242b017c0 feat(im):fetchFriends 加 pending 去重 + FRIEND_APPLICATION 重命名 RECEIVED + inflight 命名调整为 pending 2026-05-04 19:14:51 +08:00
YunaiV cfd152addf feat(im):实现 1209 FRIEND_INFO_UPDATED 推送(system 发 AdminUserProfileUpdateMessage,IM Consumer 监听后批量推好友多端) 2026-05-04 18:24:08 +08:00
YunaiV 7618d58a66 feat(im):好友模块 code review 多项修复(补 block/unblock 全链路 + UserInfo 菜单入口、silent 后主动入库、防 currentUserId 切账号失活、雪崩去重与命名/枚举清理) 2026-05-04 17:31:21 +08:00
YunaiV 5c2a185ff9 【IM 优化】通讯录顶部搜索栏改为 h-14,与消息 Tab 顶部对齐,避免切换抖动 2026-05-04 16:47:33 +08:00
YunaiV 42566d1e86 feat(im): 优化好友申请逻辑,增加自我添加校验与异常处理
更新好友申请功能,使用 computed 包裹当前用户 ID,避免在 keep-alive 实例中持有旧 ID。增加自我添加好友的校验逻辑,防止用户添加自己为好友。同时,增强自动通过好友申请的异常处理,确保在事务提交后能正确处理失败情况。
2026-05-04 16:41:55 +08:00
YunaiV 7141e431e2 feat(im): 前端增加「黑名单」的操作 2026-05-04 16:24:12 +08:00
YunaiV 1b51926b19 refactor(im): 移除 TIP_TIME 消息类型,时间分隔条改为渲染时按 prevMessage.sendTime 计算
顺带修复 Bug-Y(删除最后一条消息后孤立时间分隔条)
2026-05-04 16:05:23 +08:00
YunaiV 63c4dd1096 fix(im):修复对话置顶被关闭时,默认还选择了第一个置顶对话,导致又被打开。 2026-05-04 12:00:03 +08:00
YunaiV b6ca1187b1 feat(im): 增加好友申请的逻辑(v1.3:修复各种边界情况,包括静默添加好友) 2026-05-04 11:08:03 +08:00
YunaiV 89ee5d51ea feat(im): 增加好友申请的逻辑(v1.2:增加相关枚举、字典,减少硬编码) 2026-05-04 10:44:09 +08:00
YunaiV 5b9acb4813 fix(im):从群聊,点击好友聊天时,关闭之前的群聊面板 2026-05-04 10:31:02 +08:00
YunaiV 0e979a9f67 fix(im):私聊头像,也可以点击,方便好友管理。 2026-05-04 10:30:30 +08:00
YunaiV ce2cdc112f fix(im):仅普通消息进行声音通知 2026-05-04 10:29:41 +08:00
YunaiV 1469d8bb3d feat(im): 增加好友申请的逻辑(v1.1:增加各种 code review 注释) 2026-05-04 09:47:25 +08:00
YunaiV f86cd30af4 feat(im): 增加好友申请的逻辑(v1) 2026-05-04 09:18:35 +08:00
芋道源码 5e937d797d
!851 feat:增加说明文案
Merge pull request !851 from steven/feat-自定义海报代码补充开发
2026-05-03 10:59:47 +00:00
芋道源码 3a1f520dc6
!876 回退 'Pull Request !870 : fix: 菜单名称过长时没有正确显示省略号'
Merge pull request !876 from 芋道源码/revert-merge-870-master
2026-05-03 10:55:53 +00:00
芋道源码 5e6b6bdd8e
回退 'Pull Request !870 : fix: 菜单名称过长时没有正确显示省略号' 2026-05-03 10:55:35 +00:00
YunaiV 53b96f87a0 Merge remote-tracking branch 'origin/feat/mes' into feat/mes 2026-05-03 18:48:25 +08:00
YunaiV b7a13a0000 ♻️ refactor(service): 优化请求拦截器中的 token 设置逻辑,简化白名单判断 2026-05-03 18:48:12 +08:00
YunaiV 6d5705b655 fix(bpm):修正流程实例审批弹窗网关分支重算的并发与提交问题
- 提交时不再用节点表单值覆盖 data.variables;与预览阶段使用同一份合并变量
- onChange 加 useDebounceFn(300ms) + 请求序号去重,handleAudit 提交前 await 最新一轮重算
- 切换任务时重置请求序号与 pending 重算
- 改用 form-create 官方 formData() 取节点表单当前值
- 双 nextTick 改为 until 等 fApi 就绪,1s 兜底超时
2026-05-03 18:48:12 +08:00
YunaiV 8571a27a15 fix: 【framework】关闭 TagsView 标签后 keep-alive 缓存未收缩,导致 DOM/JS heap 不回收
delView/delAllViews 误用 delCachedView,关闭非当前标签时会去删 currentRoute
对应的缓存,把要关的 name 留在 cachedViews 里,keep-alive include 不收缩,
旧组件实例无法 unmount。

回退到基于剩余 visitedViews 重建 cachedViews 的实现(对应 5718c7881 之前的写法);
delCachedView 自身保留 issue #180 的修复,仍供 refreshPage 使用。
2026-05-03 18:48:12 +08:00
YunaiV cdcd200c7d 【修复】form-create 单图上传规则 disabled 字段标题与默认值错配 2026-05-03 18:48:12 +08:00
YunaiV 6232330c81 【修复】IoT 场景联动:事件触发器比较值改普通文本输入,允许留空(事件发生即匹配) 2026-05-03 18:48:12 +08:00
YunaiV 418f0c4f52 🐛 fix(system):修复租户 get-by-website 接口不支持端口的问题
🐛 fix(mes):修复常见缺陷的「检测项类型」错用独立字典的问题

「常见缺陷」与「检测项设置」的「检测项类型」语义一致,应共用同一份字典;DefectForm 与列表页统一改为 MES_INDICATOR_TYPE,并清理未使用的 MES_DEFECT_TYPE 常量。
2026-05-03 18:48:12 +08:00
YunaiV 5bce60fd29 ♻️ refactor(service): 优化请求拦截器中的 token 设置逻辑,简化白名单判断 2026-05-03 18:48:04 +08:00
YunaiV beddbe7785 Merge remote-tracking branch 'origin/feat/mes' into feat/mes 2026-05-03 18:39:16 +08:00
芋道源码 2e65691737
!870 fix: 菜单名称过长时没有正确显示省略号
Merge pull request !870 from 李家辉/fix-text-overflow
2026-05-03 10:38:57 +00:00
YunaiV 95cecc8870 fix(bpm):修正流程实例审批弹窗网关分支重算的并发与提交问题
- 提交时不再用节点表单值覆盖 data.variables;与预览阶段使用同一份合并变量
- onChange 加 useDebounceFn(300ms) + 请求序号去重,handleAudit 提交前 await 最新一轮重算
- 切换任务时重置请求序号与 pending 重算
- 改用 form-create 官方 formData() 取节点表单当前值
- 双 nextTick 改为 until 等 fApi 就绪,1s 兜底超时
2026-05-03 18:38:18 +08:00