This commit is contained in:
zlwu committed 2026-08-02 17:18:33 +08:00
1 parent c00f19f8bd
commit 272c68af4b
134 files changed
+930389 -38617

No files matched your search

+1 -1
View File
@@ -44,7 +44,7 @@ Full specs: `openspec/changes/zkxw-engineering-standards/specs/*/spec.md`. Below
- **Miniprogram photo evidence upload** (`miniprogram`, baseline): Photo/album images only — `uni.chooseImage` + `uni.uploadFile` (`name: file`, `formData.folder`, Bearer header) → collect `data.url` → business API submits `imageUrls`. SHALL NOT use Web `el-upload`/`FormData`+`request`, Base64-in-JSON, or document pickers (`chooseMessageFile`). Upload path SHALL be in `API_ENCRYPT_EXCLUDE_PATHS`. Authority: `openspec/.../ui-conventions` §「小程序拍照凭证上传(基线)」+ `api-conventions` §「小程序拍照凭证上传接口」; reference pattern from `sqxp-wx` delivery/supplier evidence upload.
- **Button icons**: All `web-admin` `el-button` with visible text labels SHALL include a leading `<el-icon>` from `@element-plus/icons-vue` (explicit import). See `openspec/.../ui-conventions/spec.md` §「按钮须携带图标」.
- **Sort fields (sort_order/orderNum)**: web-admin 列表、新增弹窗、编辑弹窗中默认不展示排序字段。后续根据功能需要自行添加。
- **Status/conclusion/type fields as Tags**: All status, conclusion, and type fields in table columns and view dialogs SHALL render as `<el-tag>` with semantic colors. Tables: use `<el-tag :type="..." size="small">` in column templates. SystemViewDialog: use `tagType` property on `ViewField`. Semantic colors: `success`=正常/启用/已完成/通过, `warning`=进行中/待确认/已过期, `danger`=异常/已作废/拒绝/不通过, `info`=待执行/待生效/停用/默认, `primary`=特殊分类/来源类型. SHALL NOT use plain text or custom `<span class="tag">`. See `openspec/.../ui-conventions/spec.md` "状态、结论与类型字段使用 Tag 标签展示".
- **Status/conclusion/type fields as Tags**: All status, conclusion, and type fields in table columns and view dialogs SHALL render as `<el-tag>` with semantic colors (**dark background + white text** globally via `el-ui.scss`). Tables: use `<el-tag :type="..." size="small">` in column templates. SystemViewDialog: use `tagType` property on `ViewField`. Semantic colors: `success`/`primary`=`#059669`, `warning`=`#d97706`, `danger`=`#dc2626` (dark bg + white text); `info`=transparent bg + standard text `#1e293b` (avoid Element default `#909399`). SHALL NOT use plain text, custom `<span class="tag">`, or light-fill tags for non-info types. See `openspec/.../ui-conventions/spec.md` "状态、结论与类型字段使用 Tag 标签展示".
- **List primary column view link**: List pages with read-only view dialogs SHALL use `<el-link type="primary">` on the primary name/no column to open the view handler; SHALL NOT duplicate a「查看」button in the operation column when the link exists. Keep `@row-dblclick`. For standard CRUD lists (edit/delete only), SHALL NOT have an operation column—place「编辑」「删除」in the list toolbar (edit requires exactly one selected row; delete supports batch) and in `SystemViewDialog` `#hero-actions`. Reference: `crm/product/index.vue`, `system/user/index.vue`. See `openspec/.../ui-conventions/spec.md` §「列表主标识列链接查看与编辑删除外置」.
- **Template pages** — new pages SHALL match these exactly:
- Standard list: `src/views/system/unit/index.vue`