Files
tms-erp-web/.workbuddy/memory/2026-08-25.md
T
gxwebsoft 01c3bb5b57 refactor(ui): 优化多页面表单布局及样式统一
- 统一用 section-card 组件替换原有分段结构,简化模板结构
- 调整表单列宽为 6 栅格,提高响应式适配效果
- 修改标题类名,采用一致的 archive-page-form__title
- 精简并合并样式,移除各页面冗余标题和分段样式声明
- 全站业务状态标签改为普通文字,不显示背景和圆点,字体颜色统一
- 优化 element-ui.scss 中表格操作列的 el-link 样式,兼容多层 DOM 结构
- 增加表格操作列 el-tooltip 单元格自动宽度,防止内容裁切
- 调整正式结算列表操作列宽度,提升显示空间
- 简化部分页面表单控件宽度样式,统一控件宽度及间距
- 删除多处无用样式,减少样式冗余,提高代码可维护性
2026-08-25 11:23:42 +08:00

3.7 KiB
Raw Blame History

2026-08-25

全站操作列按钮居中统一

  • 根因:pre-settlement 等手写操作列用 <div class="xxx__links"> 包裹 el-link,而全局 element-ui.scss 第 904 行原选择器为 :has(> .el-link)(仅命中直接子元素),导致包了一层 div 的操作列未被居中规则命中,按钮靠左。
  • 修复:将 .el-table .el-table__body .cell:not(.avue-crud__menu) 相关的三处选择器 :has(> .el-link) 全部放宽为 :has(.el-link)(第 904 / 935 / 954 行),兼容"el-link 被 div 包裹"的手写操作列;.avue-crud__menu(Avue 内置操作列)原已居中不受影响。
  • 另在 pre-settlement.vue.pre-settlement-page__linksjustify-content:center 兜底。
  • 结论:全站所有基于 el-link 的操作列(无论是否包裹 div)统一居中,符合 AGENTS.md 操作列规范。

全站业务状态标签改为普通文字(无颜色圆点)

  • 根因:用户反馈审批状态列显示为带彩色圆点的文字(如截图),要求改成"普通的文字不要颜色"。此前 .status-text 是"文字 + 彩色圆点"风格。
  • 修复:修改 src/styles/element-ui.scss.el-tag.status-text 全局规则,去掉 &::before 圆点,并将 color 强制设为 var(--el-text-color-regular)font-weight:normalmargin:0,背景边框保持透明。所有带 class="status-text"el-tag 自动生效,无需逐页改模板。
  • 结论:全站业务状态(调度状态/运单状态/审批状态等)统一为普通文字,不再带彩色圆点。

/payment 下全部表单页板块风格统一

  • 需求:所有 /payment 表单页(invoice-receipt / invoice-application / payment-application / bill-ledger / bill-payment / receipt-claim-record / receipt-flow)统一为"页面标题无蓝标 + 每个蓝标板块用白底卡片包裹 + 板块间距 12px",参考 business/project-apply/form。
  • 实现:页面标题改用全局 archive-page-form__title(蓝标已注释,无竖条);各 <section class="X-form-page__section"><div class="X-form-page__section-title">标题</div> 整体改为全局组件 <section-card title="标题">(白底卡片 + 4px 主色竖条 + 卡间 12px,由 src/styles/element-ui.scss 全局 .section-card 提供);带按钮的板块(附件信息/开票内容)用 <section-card title="..."><template #extra>按钮</template>
  • 清理:删除各文件 scoped 中 __title/__section 相关的废弃 CSS(蓝标 ::before、板块间距、heading 等);payment-application.payment-form-page__section-actions(按钮行右对齐)属有效独立样式,清理时被误删,已补回。
  • 校验:用 @vue/compiler-sfc 对 7 个文件做 template/script 编译,全部通过。

/payment 板块表单控件统一 4 列(span=6)

  • 需求:用户要求 /payment 下"板块表单控件都改成 4 列"。此前列数不一致:多数页用 el-col :span="12"2 列),invoice-application 用 :span="8"3 列),bill-payment / bill-ledger 是"两列各叠多个控件"的嵌套结构。
  • 实现:
    • 直接网格(每列一个控件):payment-application、invoice-receipt、receipt-claim-record、receipt-flow 的 :span="12":span="6"invoice-application 的 :span="8":span="6"(两处 el-row)。
    • 嵌套网格:bill-payment、bill-ledger 拆成每个字段独立 el-col :span="6"(真 4 列),gutter 48→24;备注保留 :span="24" 整行。
    • 媒体查询同步:.el-col-12/.el-col-8 窄屏折叠规则改成 .el-col-6(≤1024/1200/900/768px 折叠为整行)。
  • 结论:全 /payment 表单页板块表单控件统一为 4 列网格,备注/长文本仍整行;pre-settlement-editor「结算基本信息」此前也已改 :span="8"span="6"