status: complete created: 2026-07-18 complexity: 🟡中等
本变更修复两个共享前端基础能力缺陷:
AiTable 在排序列、固定选择列或固定操作列存在时,勾选行的背景被不同单元格背景规则覆盖,导致同一选中行出现断层或颜色不一致。AiFormItem 只识别 number、inputNumber,页面 editSchema 中的 input-number 会回退为普通 n-input,数字约束和 min/max/step 等属性失效。完成后应达到:
row-class-name 不被选中态实现覆盖。number、inputNumber、input-number 三种历史写法。src/views 内 editSchema 统一使用规范写法 number,不再出现 type: 'input-number'。AiTable.vue 对固定左列、固定操作列、排序列和悬停状态分别设置背景,其中多处使用 !important。checked-row-keys 只传给 Naive UI 选择框,表格没有为选中数据行增加统一状态类。AiFormItem.vue 的数字分支仅判断 number、inputNumber。AiForm.vue 的必填校验、AiCrudPage.vue 的回填转换、AiCustomQuery.vue 的查询控件识别也分别硬编码数字类型。20 处 type: 'input-number',分布在 16 个 src/views 文件;用户报告的 37 处、25 个文件应来自更早代码基线,本轮以当前工作区为准全部清理。number 作为 AiForm 数字字段标准类型,因此页面统一改为 number;共享组件保留历史别名兼容。checked-row-keys 为行追加 ai-table-row--checked。row-class-name 与选中态类名合并。input-number。src/views 当前 20 处错误类型统一改为 number。forge-admin-ui/src/components/ai-form/ 共享表格、表单、CRUD 与高级查询组件。forge-admin-ui/src/views/{system,ai,data,message,flow} 中使用数字编辑字段的页面。number。inputNumber、input-number 作为输入兼容别名,不作为新增页面的推荐写法。checked-row-keys 决定,不改变行点击行为,不擅自将任意单元格点击转换为勾选。color-mix 混合当前主题主色和表格背景,避免固定浅色值破坏暗色主题。type: 'input-number' 能渲染 n-input-number 并接受 min/max/step。src/views 中 rg -n "type:\\s*['\"]input-number['\"]" 无输出。/system/config 完成“排序后勾选行”与数字字段 min: 0 实测,控制台和页面错误均为 0。execution-log.md。