Commit Graph

2549 Commits

Author SHA1 Message Date
xingyu4j
3d92c784c3 fix: lint 2026-06-26 19:41:59 +08:00
xingyu4j
25be0950c7 fix: lint 2026-06-26 19:11:05 +08:00
xingyu4j
68caa04209 fix: lint 2026-06-26 18:33:45 +08:00
xingyu4j
66c2432390 fix: lint 2026-06-26 17:20:28 +08:00
xingyu4j
b506483671 fix: lint 2026-06-26 17:02:47 +08:00
xingyu4j
76f4bd8275 fix: lint 2026-06-26 16:29:43 +08:00
xingyu4j
1b5a42f7f4 fix: lint 2026-06-26 16:02:46 +08:00
xingyu4j
a66887a3fb Merge from vben 2026-06-26 16:02:30 +08:00
YunaiV
2dd76ea7dd fix(vben): 对齐 antd/next/ele 业务代码差异
- 同步 CRM 回款、系统用户、MES 设备、ERP 付款等 API/查询差异
- 移除废弃 BPM 移动表单预览路由与页面
- 修复 Element Plus 端 ERP 日期时间选择器配置
- 对齐 BPM 监听器选择、MES 反馈明细、SPU tab 计数筛选行为
- 统一 Element Plus 端 WMS 选择组件命名与导出路径
2026-06-24 18:53:26 -07:00
vben
a8c3729850 feat: add ICP filing number to copyright across app 2026-06-24 10:04:10 +08:00
YunaiV
6608d297e2 chore(ts): 为三端 typecheck 增加增量缓存与 8G heap
- vue-tsc 增加 --incremental 和 tsBuildInfoFile,缓存写入 node_modules/.cache/vue-tsc
- 三端 typecheck 统一设置 NODE_OPTIONS=--max-old-space-size=8192
- 避免清缓存全量 typecheck 时 OOM

说明:做回归判断时仍需先清理 tsbuildinfo,避免增量缓存掩盖新增错误
2026-06-21 21:24:15 -07:00
YunaiV
6ddaa3a755 fix: 吸收 Vue3 类型收敛与低风险修复
- 三端对齐 AI image 入参类型:DALL3 width/height 转 number,MJ base64Array 必填并初始化
- 收敛 CRM/BPM/IOT/Pay/Member/Mall/MP/Infra 等模块 VO 与表单类型
- 修复 mall kefu conversationList.toSorted 未写回导致排序无效
- Reward 商品范围数组改必填并初始化,表单直接绑定数组字段
- BPM form-design 去掉多余 props 捕获,收敛 form-create rule 类型
- simple-process 子流程固定多实例数量用 number 输入、string 存储
- 修复 web-ele 用户任务超时天数 ISO duration:P...D 而非 PT...D
- 修复 web-antd BPM 表单设计模板孤立 > 噪声

验证:web-antd/web-ele clean typecheck 通过;web-antdv-next 既有错误未命中本轮文件
2026-06-21 21:24:05 -07:00
YunaiV
4afe56d03b fix: 吸收 Vue3 低风险交互与局部类型修复
- 三端 ProductList 在 spuIds 为空时跳过商品详情请求
- 三端 FloatingActionButton 点击子项后收起预览面板
- OA 请假 startUserSelectAssignees 改为创建页局部扩展类型,不污染 Leave VO
- 修复 antdv-next FloatingActionButton Image fallback slot 类型
2026-06-21 11:00:40 -07:00
YunaiV
e227119f39 fix(bpm): 升级 BPMN 依赖并补齐设计器兼容修复
- 升级 bpmn-js/diagram-js/properties-panel/token-simulation 到 18.x/15.x 版本线
- 三端 ProcessDesigner 补 bpmnCanvas 空值保护,keyboard 改用 diagram-js 15 的 { bind: true }
- 三端 ProcessViewer 补 canvas/elementRegistry 局部类型与空值保护
- 三端 ElementMultiInstance 更新 loopCharacteristics 前增加空值校验
- web-antdv-next Divider 标题位置改用 title-placement

验证:12 个改动文件 ESLint 通过,web-antd/web-ele typecheck 通过,BPMN Delete/Undo/Redo 与 XML 往返浏览器 smoke 通过
2026-06-21 10:37:22 -07:00
YunaiV
796982e488 fix(mall): 订单备注表单收口 remark 默认值
- 三端订单备注弹窗只写入 id/remark 表单字段
- remark 使用空字符串兜底,避免可选商家备注传入必填提交字段
- 避免将完整订单对象写入备注表单

对齐 Vue3 管理后台 9c95bebc2
2026-06-21 08:57:55 -07:00
YunaiV
1ead6888e9 fix(ai): 修复会话列表排序并收敛 createTime 类型
- 三端会话 VO createTime 改为必填字段
- 修复 conversationList.toSorted(...) 未写回导致排序不生效
- 排序和分组时间计算直接使用 Number(createTime)
- IM 群聊消息 index > 0 改为 Number(index) > 0

对齐 Vue3 管理后台 e58fe91a2
2026-06-21 08:51:40 -07:00
YunaiV
c2707a499a fix(ai): 补全音乐播放器进度交互
- 音乐列表改用 typed provide/inject + MusicSong
- audioBar 绑定真实 audio 元数据,支持进度显示、拖动 seek 与切歌重载
- 同步适配 web-antd、web-ele、web-antdv-next

对齐 Vue3 管理后台 0970806dc
2026-06-21 08:18:12 -07:00
YunaiV
1a3de7e97a fix(ts): 对齐树表搜索与低风险类型修复
- demo02 树表 list API 参数改为可选
- 优惠券数量 formatter 统一返回字符串
- AI 音乐播放器进度滑块改用独立数值状态
- 同步适配 web-antd、web-ele、web-antdv-next

对齐 Vue3 管理后台 a57df0b2d
2026-06-21 08:03:15 -07:00
YunaiV
0a76bed471 fix(im): 清理 RTC 媒体元素卸载时的 srcObject
- 对齐 Vue3 管理后台 63dfc5e 的 RTC 媒体元素处理
- useMediaStreamElement 改为 callback ref 闭包保存当前元素
- 组件卸载或 ref 置空时清理旧 video/audio 元素的 srcObject,避免流关闭后画面残留
- 同步适配 web-antd、web-ele、web-antdv-next

验证:
- pnpm -F @vben/web-antd run typecheck
- pnpm -F @vben/web-ele run typecheck
- web-antdv-next 仍为既有 55 个类型错误,无 RTC 新增错误
2026-06-21 07:55:13 -07:00
YunaiV
953e7c1502 feat(member):会员详情收货地址展示地区名
3 个 app(web-antd/web-ele/web-antdv-next)address-list 地区列 areaId→areaName,
api 类型 MemberAddressApi.Address 补 areaName,对齐后端回填
2026-06-21 06:24:56 -07:00
芋道源码
ae6ad7abff !368 Merge remote-tracking branch 'yudao/master'
Merge pull request !368 from Jason/master
2026-06-20 17:35:14 +00:00
YunaiV
9f611f89fc fix(im): 修复 IM 管理详情页类型检查失败
- 使用 Table bodyCell 的 text 避免 column.dataIndex 动态索引类型错误
2026-06-20 00:49:06 -07:00
jason
e2185793c3 fix: [bpm] 并行分支后的审批人自选问题修复,https://t.zsxq.com/daxv1 2026-06-20 13:45:19 +08:00
jason
8f9bd94f58 Merge remote-tracking branch 'yudao/master' 2026-06-20 10:30:15 +08:00
jason
71627271d0 fix: [bpm] 审批人自选时下一个节点审批人显示问题 2026-06-20 10:26:27 +08:00
芋道源码
342ea23ca0 !367 feat(im): 同步 im 的迁移
Merge pull request !367 from 芋道源码/migration
2026-06-20 01:36:10 +00:00
YunaiV
210443c833 feat(im): 优化免打扰会话未读展示
- 免打扰会话保留头像小红点提示
- 会话预览行展示免打扰未读条数
- 总未读统计继续排除免打扰会话
- 同步 Vue3 + Vben 三端会话项展示
2026-06-19 18:29:16 -07:00
芋道源码
50a5800158 !366 Merge remote-tracking branch 'yudao/master'
Merge pull request !366 from Jason/master
2026-06-20 01:16:16 +00:00
YunaiV
fac0190ca8 fix(im):修复迁移评审发现的组件与目录问题
- 修复 antdv-next 群详情缺少 DescriptionsItem 导入的问题
- 对齐 antdv-next 群详情、RTC 详情的数据访问写法,移除多余辅助函数
- 修复 web-ele 弹窗、抽屉、原生元素、头像、图标的 title/content 误用
- 将三端表情 API 目录 useritem 统一为 userItem
- 同步更新普通表情和管理端表情相关 import 路径
2026-06-19 17:12:42 -07:00
YunaiV
010da63c7c fix(im):同步已读补上报字段与群通话竞态修复
- web-antd、web-antdv-next、web-ele 同步 reportedReadMessageId 字段
- 避免旧 readMessageId 本地缓存污染 read API 跳过判断
- RTC_CALL_END 按 room 移除群通话胶囊,避免旧房间结束事件误删新房间通话
- participantsLoaded 仅在同 room 下继承,避免新房间误跳过参与者补齐
2026-06-19 11:16:58 -07:00
YunaiV
09b97f1e04 feat(im):同步已读上报补偿与群通话探测优化
- web-antd、web-antdv-next、web-ele 同步会话 readMessageId 逻辑
- readActive 与 WebSocket 自动已读改为基于服务端已上报读位置判断是否跳过接口
- read 接口成功后同步 readMessageId,失败时保留本端已读体验并允许后续重新进入补上报
- 拉取服务端 read 进度时同步更新会话 readMessageId,同时保持本地读位置单调合并
- 三端同步 activeCallLoaded / activeCallExpired 群通话探测状态
- 首登与重连时失效群通话探测缓存,本地无通话且探测过期时懒加载 getActiveCall
- 群通话写入或移除时标记探测已加载,并避免通话探测状态写入 IndexedDB
- 为 IndexedDB DO 类型补充存储结构注释,并修复 conversationStore lint 写法
2026-06-19 11:05:19 -07:00
YunaiV
c0ead15bc3 feat(im):优化已读上报、群详情缓存与 RTC 通话状态
- 已读上报增加本地读位置覆盖判断,避免切换会话和当前会话自动已读时重复调用 read 接口
- 标记会话已读时同步推进本地 read 游标并写入 IndexedDB,接口失败仅记录日志
- 缓存私聊对方 maxReadMessageId,并在状态补拉、回执更新和退出 IM 时维护缓存
- 增加群详情 infoLoaded 内存标记,减少切群时重复拉取群详情,手动刷新和关键通知仍强制刷新
- 同步 GROUP_INFO_UPDATE 的 joinApproval,避免群审批配置在前端缓存中陈旧
- 优化群通话胶囊条状态,记录 participantsLoaded,按需补齐参与者并在通话无人时移除胶囊
- RTC_CALL_START 生成群通话最小胶囊条,后续由参与者事件和 getActiveCall 补齐
- 退出 IM 时清理 RTC 状态和群通话缓存
- Vben antd/antd-next 调整媒体元素为函数 ref,修复 MediaStream 与元素挂载时序问题
- 修复 Vben 消息历史弹窗回调类型标注
2026-06-19 10:05:22 -07:00
jason
d923a70cb4 fix: [bpm] simple 设计器导入问题修复 2026-06-19 21:30:27 +08:00
YunaiV
efc75e2608 fix(im): 修复 antd next 一些样式问题 2026-06-19 02:11:26 -07:00
YunaiV
c71e250b79 fix(im): 修复 antd next 一些样式问题 2026-06-19 01:46:54 -07:00
YunaiV
8279089eb9 fix(im): 将频道消息的 pull 改成 pullChannelMessageList 2026-06-18 21:59:42 -07:00
XuZhiqiang
56435b45f8 fix(@vben/web-antd): resolve typecheck issues blocking pre-commit
- fix map Select handler value typing
- remove unused AI template refs and normalize v-for indexes
- clean stale BPMN form field editor code
- type BPMN listener helpers and modal grid rows
- preserve node-name input focus with function refs
- add CRM receivable list fields and query param types
2026-06-19 11:36:04 +08:00
XuZhiqiang
860a12a7e7 fix(workspace): 统一 MES 选择组件 id 判空处理 2026-06-19 10:54:26 +08:00
XuZhiqiang
1e4436561c fix(workspace): 收敛 MP、ERP 和 demo 类型兼容问题 2026-06-19 10:52:59 +08:00
YunaiV
0c8218ecfc Merge remote-tracking branch 'origin/master' into migration
# Conflicts:
#	apps/web-antdv-next/src/views/bpm/processInstance/detail/modules/operation-button.vue
#	apps/web-antdv-next/src/views/bpm/processInstance/detail/modules/time-line.vue

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 17:12:09 -07:00
YunaiV
b1bc5fa0bd fix(im):修复会话侧栏抽屉样式(分隔底色 / body 内边距 / 空 header)
- web-antd 私聊侧栏:残留的 .el-drawer__body 改为 antd 的 .ant-drawer-body,
  去掉抽屉默认 24px 内边距,内容铺满贴边;底色与行分隔线对齐群聊侧栏
- web-antd 私聊 / 群聊侧栏:卡片间灰底 --im-conversation-side-bg 的亮色定义改用 :global(),
  修复 antd Drawer 传送到 body 后 scoped data-v 落不到、灰色分隔条亮色下失效(显白)的问题
- web-ele 私聊 / 群聊侧栏:ElDrawer 补 :with-header="false" 去掉空 header;
  群聊 --im-conversation-side-bg 同样改 :global(),对齐 Vue3 + EP
2026-06-18 16:55:40 -07:00
YunaiV
dfe4c8a040 feat(im):初始化 ele 的 im 迁移 2026-06-18 16:09:40 -07:00
XuZhiqiang
e1731f5394 fix(workspace): 修复 ERP 明细草稿和收付款金额类型 2026-06-19 00:18:56 +08:00
XuZhiqiang
2e397a2c64 fix(workspace): 统一 ERP 金额更新事件 emit 命名 2026-06-19 00:07:20 +08:00
YunaiV
5a4f8b4e2a fix(im): 对齐群备注展示并修复 IM 消息管理字典
聊天端:
- 群 API 类型补充 groupRemark 和 silent
- 群列表同步时以接口返回的个人群设置为准,只保留成员缓存
- 会话名写入入口统一使用 getGroupDisplayName,避免群备注被原群名覆盖
- 聊天标题、转发、推荐名片、新建群入口同步群展示名逻辑
- 空群头像且成员未加载时异步预拉群成员,用于合成群头像
- 通讯录和合并消息详情补充滚动容器
- 消息历史日期选择改用 antd Calendar 卡片模式并修正样式

管理端:
- IM 字典常量统一为 im_content_type、im_message_status、im_message_receipt_status
- 私聊 / 群聊消息列表和详情页切换到统一内容类型、消息状态、回执状态字典
- 私聊消息 API 和详情页补充 receiptStatus
- 统计消息类型分布改用内容类型字典
2026-06-18 08:59:19 -07:00
YunaiV
e61d0a5aa2 fix(im):对齐 Vue3 已读游标修复 Vben 未读数异常
- Vben 消息离线 pull 入库时,按 conversation read position 过滤已读消息,避免已读历史消息重新累加未读
- Vben WebSocket 实时插入消息时,同步增加 read position 覆盖判断,和 Vue3+EP 的未读统计口径保持一致
- 保持未读自增入口只在 messageStore 的 applyPulledMessageList 和 insertMessage 两处
2026-06-18 07:21:01 -07:00
YunaiV
2ee25c8821 fix(im):同步群昵称静默更新逻辑
- 群聊侧栏从当前群成员的 displayUserName 回填「我在本群的昵称」
- WebSocket 收到 GROUP_MEMBER_NICKNAME_UPDATE 时只同步 groupStore,不再插入消息列表
- 保持与 Vue3 + EP 群昵称修改交互一致
2026-06-18 06:57:24 -07:00
YunaiV
2cbec901e1 feat(im):规范 Vben IM 组件目录并修复聊天端迁移问题
文件命名与目录整理:
- IM home/manager 组件文件统一 PascalCase → kebab-case,并新增各级 components/index.ts barrel 导出
- manager 选择器按业务模块就近收敛到频道、素材、群组目录,删除根 components 下的重复实现
- UserMultiSelect 改为复用 system/user/components/UserSelect,并补充多选与 getUserList 回显能力
- 合并 statistics 子组件导出,MessageContentPreview 调整为 content-preview

问题修复:
- 群聊发送按钮由 Element Plus split-button 写法改为 antd DropdownButton,恢复「发送回执消息」入口
- 修复 scoped 下暗色模式选择器塌缩导致整页发红的问题
- 修复会话「+」菜单图标与文字折行问题
- 修复推荐名片、转发、添加好友弹窗冒出多余 antd 默认底栏的问题

代码规范:
- 清理 IM 模块类型别名、注释和工具方法写法,保持 Vben 规范
- constants.ts 内容类型判定集合由数组改为 Set
- 优化 message/image/pull 等工具函数的 lint 写法
2026-06-18 05:53:25 -07:00
YunaiV
24813f00f5 feat(im):antd 的 im 迁移进一步对齐 2026-06-17 22:14:05 -07:00
YunaiV
0929ab9409 feat(im):初始化 antd 的 im 迁移 2026-06-17 17:57:24 -07:00