Files
KCGL/inventory-web
yueli 6068625562 feat(audit): 审计日志业务化——对象名与字段中文化、操作来源与类型筛选
一、target_name 业务化(后端 audit_listener.py)
  优先级:业务标识(request_no/outbound_no/borrow_no/sku/bom_no…)→
          名称字段 → 关联物料名 → 「中文表名 - 业务号或ID」。
  新增 TABLE_LABELS 表名到中文的映射(18 张白名单表全覆盖)。
  用户看到的从 scrap_approval ID:371 变为
  「出库申请单 - APR-OUT-20260805-1550-0005」这类可理解的对象描述。

二、前端字段中文化(AuditLog.vue)
  · fieldMap 由 11 项扩充到 110+ 项,覆盖审批单/流水/库存/主数据/系统管理五类;
  · 修复关键 bug:fieldMap 原先只作用于「变更对比」区,「删除快照」与
    「新增详情」两区直接渲染原始 key(label 直接取 String(key)),
    这正是详情里满是英文列名的直接原因。现三区统一经 fieldLabel() 取值。

三、时间显示修正
  后端已改写北京时间,前端原先补 Z 当 UTC 解析会造成二次 +8 小时,
  改为按 +08:00 理解该字符串。

四、新增两类筛选
  · 操作来源(真实用户 / 系统操作 / 全部),默认「真实用户」。
    历史存量含约 1.8 万条 username=system 的噪声日志,会把列表刷屏。
  · 操作类型别名归一:历史数据中 action 有两套写法(早期装饰器写中文
    新增/修改/删除,现行监听器写大写 CREATE/UPDATE/DELETE),导致下拉
    同时出现二者、且选中文项只能搜到 3-4 月的老数据。现 ACTION_ALIASES
    把任意写法归一化后展开匹配,下拉只暴露 3 个规范值,
    历史数据无需迁移即可被正确检索。
2026-09-10 14:16:39 +08:00
..
2026-01-28 17:44:39 +08:00
2026-01-26 13:47:53 +08:00
2026-01-26 13:47:53 +08:00
2026-01-26 13:47:53 +08:00
2026-01-26 13:47:53 +08:00

Vue 3 + TypeScript + Vite

This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 <script setup> SFCs, check out the script setup docs to learn more.

Learn more about the recommended Project Setup and IDE Support in the Vue Docs TypeScript Guide.