YunaiV
|
fab333fbb7
|
feat(mes):迁移【排班日历】
|
2026-05-25 01:07:52 +08:00 |
YunaiV
|
3c592887b9
|
feat(mes):统一 dv、cal、md 的代码规范
|
2026-05-24 23:11:02 +08:00 |
YunaiV
|
8ab0c53011
|
Merge remote-tracking branch 'origin/master' into migration
# Conflicts:
# apps/web-antd/src/views/iot/home/modules/message-trend-card.vue
# apps/web-antd/src/views/iot/rule/data/sink/config/redis-stream-config-form.vue
# apps/web-antd/src/views/mes/md/client/components/md-client-select-dialog.vue
# apps/web-ele/src/views/iot/home/modules/message-trend-card.vue
# apps/web-ele/src/views/iot/rule/data/sink/config/redis-stream-config-form.vue
# apps/web-ele/src/views/iot/thingmodel/modules/input-output-param.vue
# pnpm-lock.yaml
# pnpm-workspace.yaml
|
2026-05-24 22:20:36 +08:00 |
YunaiV
|
13561b933f
|
feat(mes):优化 cal holiday 的界面,和 vue3 + ep 风格对齐
|
2026-05-24 22:12:02 +08:00 |
YunaiV
|
19911a19c0
|
feat(mes):统一代码规范,form.vue 的
|
2026-05-24 21:38:08 +08:00 |
YunaiV
|
617d50f68f
|
feat(mes):完成 dv 的整体迁移(需要评审)
|
2026-05-24 20:26:00 +08:00 |
YunaiV
|
53a00f6e15
|
feat(mes):完成 cal plan 【排班计划】的迁移
|
2026-05-24 20:16:26 +08:00 |
YunaiV
|
2bcd81dc94
|
feat(mes):完成 cal team 【班组】的迁移
|
2026-05-24 20:12:16 +08:00 |
YunaiV
|
858011bfab
|
feat(mes):重构 tm-tool-type-tree.vue 为 list.vue 更合理
|
2026-05-24 20:00:22 +08:00 |
YunaiV
|
48547bc53b
|
fix: 修复 IoT 迁移页面多处交互与契约问题
- 修复告警记录产品/设备筛选联动
- 清理设备详情延迟刷新 timer,避免卸载后触发查询
- 优化 OTA 固件编辑态只读展示与任务列表分页重置
- 修复场景联动值输入回显和布尔值类型
- 修复设备模拟器输入串台、数值类型提交和服务参数校验
- 更新 IoT bug 归档与迁移说明
|
2026-05-24 19:41:15 +08:00 |
YunaiV
|
eb0f2a5ff2
|
feat(mes):tm tool 基本迁移完毕
|
2026-05-24 19:04:50 +08:00 |
YunaiV
|
51a05bfc39
|
feat(mes):tm tool 的 tm-tool-select.vue 组件
|
2026-05-24 18:36:20 +08:00 |
YunaiV
|
aeff25209d
|
fix(iot): 修复 13 处 bug 并完成 codex 三轮收口
按 codex 两轮 review 分批处理 IoT 模块 13 处 bug,对第二轮反馈中
B42/B47 的类型/字段问题做最终收尾,所有修复 web-antd / web-ele 两端同步。
主要修复:
- B91 设备分组:删除前校验 deviceCount,分组下有设备时弹警告
- B40 物模型 array 数据规格:从 Radio.Group @change 事件正确取值(antd)
- B42 物模型属性历史:list 写入时按 idx 生成 _rowKey,模板 row-key="_rowKey"
list 类型改 IotDeviceApi.DeviceProperty & { _rowKey: string }
匹配后端 IotDevicePropertyMapper.xml 实际返回的字段
(修掉 codex 指出的 antd row-key TS2322 与 ele 同毫秒撞键)
- B119 物模型表单:edit 模式禁用 identifier 编辑
- B47 场景规则主条件:产品/设备切换时清 deviceId/identifier/operator/value
(修掉 codex 指出的 condition.value.param TS2339,Trigger 无 param)
- B44 数据目的数据库配置:SQL 复制按钮 setTimeout 在 onBeforeUnmount 中清理
- B51 场景规则首页统计:total 取接口 result.total,其余基于当前页
- B29 产品卡片视图:图标为 URL 时改用 <img> 渲染,复用 @vben/utils 的 isHttpUrl
- B43 首页设备地图:移除过度设计的 AbortController,回归 vue3 源项目同款
InfoWindow 监听写法,querySelector 限定到 .BMap_bubble_content 子树
- B105 场景规则设备选择器:productId 变化后旧 deviceId 不在新列表则清空
- B45 通用 key-value 编辑器:v-for key 改用递增的 _uid,避免编辑/删除时 DOM 复用错乱
- B132 设备导入表单:beforeUpload 校验 .xls/.xlsx
- B126 设备详情:四个 tab 子组件 v-if 增加 device.id 守卫
附带工具收敛:
- @vben-core/shared/utils 新增 formatDayjs,统一 antd TimePicker/DatePicker
value-format 后回传的 Dayjs|string 归一
- 场景规则首页 updateStatistics 补回 JSDoc,对齐文件内其他 function 风格
验证:
- 改动文件 pnpm exec eslint 0 error
- pnpm -F @vben/web-antd / @vben/web-ele exec vue-tsc --noEmit --skipLibCheck
过滤 src/views/iot/|src/api/iot/ 均 0 hit
|
2026-05-24 10:11:43 +08:00 |
YunaiV
|
241cf76788
|
fix(iot): 修复 21 处 bug(P1×15 + P2×6)
经 codex 4 轮复评定稿,antd / ele 两端同步。
P1(场景规则 / 物模型 / Modbus / Redis sink / 路由):
- B7/B8 隐藏路由 path 与 activePath 对齐 vue3 源(产品 / OTA 固件详情)
- B9 移除后端不存在的 deleteSceneRuleList 封装
- B10 物模型 number specs 恢复 min/max/step/unit 校验
- B11 物模型新增枚举项补 dataType: ENUM
- B12 物模型 struct 非空校验绑 fieldPath,array 嵌套显式覆盖
property.dataSpecs.dataSpecsList,确保父表单 validate 触发
- B13 struct 与 input-output-param 编辑回填 cloneDeep,取消不污染原对象
- B14 Modbus Client 模式 ip/port/timeout/retryInterval 改 dependencies 条件必填
- B19 Redis sink 补 dataStructure(默认 Stream)+ Hash/ZSet 条件字段
- B20 仅 ALERT_RECOVER 强校验 alertConfigId,ALERT_TRIGGER 放行
- B21 conditionGroups 递归校验
· 设备状态/属性 param 必填
· CURRENT_TIME 按 operator 区分:TODAY 免、BETWEEN_TIME 双段、其它单段
· 触发器 / 条件 / 执行器 deviceId 改显式 null/undefined 判断,
保留「全部设备 = 0」(后端 action 支持广播执行)
- B22 事件上报条件改回普通 Input,允许标量值或留空
- B23 antd 当前时间条件 :value / @update:value 绑定 + Dayjs 类型 normalize;
归一逻辑抽到 @vben/utils.formatDayjs(packages/@core/base/shared/utils/date.ts),
供所有 app 复用
- B24 设备控制动作切换无条件清依赖,去掉 isInitialized 冗余守卫
- B26 JSON 参数输入先全部校验通过后再写入父表单
P2(产品 / 设备 / 物模型展示 / 数据源):
- B28 产品 deviceType 去默认值,强制用户显式选择
- B30 设备列表 DeviceName 加点击详情 slot
- B31 设备卡片显示备注名称(nickname || deviceName)
- B32 设备详情 hasLocation 改用 != null,合法 0 坐标不再判空
- B41 物模型数据定义展示顺序改为 name-value
- B46 数据源 getData() 剔除仅 UI 用的 identifierLoading 临时字段
|
2026-05-24 00:32:35 +08:00 |
xingyu4j
|
fb2595ef90
|
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin
|
2026-05-23 18:39:12 +08:00 |
YunaiV
|
f8c869f1ff
|
feat(mes):md client select 迁移
|
2026-05-22 08:41:54 +08:00 |
YunaiV
|
e7361a60ec
|
feat(iot):md 模块,支持生成
|
2026-05-21 18:48:57 +08:00 |
YunaiV
|
2a97bed546
|
feat(mes): 移除多余 defineOptions
|
2026-05-21 17:36:30 +08:00 |
YunaiV
|
33cdfcac3c
|
✨ feat(im): 修管理端 3 处:群消息 atUserNicknames 类型允许 null、移除前端无效的「消息内容」查询入口、表情包宽高加表单校验
|
2026-05-21 15:10:22 +08:00 |
YunaiV
|
d207e3b82c
|
feat(mes): 优化 md 基础模块的迁移
|
2026-05-21 13:23:33 +08:00 |
YunaiV
|
751ba2c782
|
feat(mes): 迁移工作站管理及设备、工具、人员关联
|
2026-05-21 11:10:21 +08:00 |
YunaiV
|
e6e15ca4ef
|
feat(mes): 迁移客户、供应商、车间管理到 vben
|
2026-05-21 10:35:54 +08:00 |
YunaiV
|
f02a5975b8
|
feat(wms): 优化 md unit 的迁移代码(优化代码)
|
2026-05-21 09:15:57 +08:00 |
YunaiV
|
b35ce18c6e
|
feat(wms): 优化 md unit 的迁移代码
|
2026-05-21 09:11:58 +08:00 |
YunaiV
|
9cc52f128c
|
feat(wms): 优化 md item 的迁移代码(继续)
|
2026-05-21 08:45:48 +08:00 |
YunaiV
|
67997bd44d
|
feat(wms): 优化 md item 的迁移代码
|
2026-05-21 08:09:29 +08:00 |
YunaiV
|
6b1425d541
|
feat(mes): 新增 md item 的迁移
|
2026-05-21 00:58:45 +08:00 |
YunaiV
|
ec796b8336
|
fix(iot): 完善 rule data 的迁移
|
2026-05-20 08:45:51 +08:00 |
YunaiV
|
1bdc0d992f
|
feat(mes): 新增 md item type 的迁移
|
2026-05-19 22:20:13 +08:00 |