docs/sql/migrations/2026-06-29-operation-audit.sql(扩展 sys_api_request_log / _his:tenant_no、business_title、business_type、business_id、oper_summary + 索引)docs/sql/shanxia2.0.sqlapp/core/context.py:oper_log_meta ContextVar(title/type/id/summary)→ oper_log_context.pyapp/core/oper_log_decorator.py:@oper_log(...) 装饰器api_request_log_middleware.py:解析 real_name、tenant_no;落库语义字段;推断兜底SysApiRequestLog / SysApiRequestLogHis ORMoper_log.py:优先读落库语义列;列表支持 businessId、businessTitle、tenant_no DB 筛选schemas/monitor/operlog.py 与 monitor.py 请求体字段api_request_log_crud.py 历史表字段(列表仍走 operlog API)@oper_log(增删改、公海、转移等)@oper_log(新增/修改/删除/导出/作废)API_REQUEST_LOG_EXCLUDE_PATHS(默认空)api/monitor/operlog 类型与查询参数扩展views/system/operlog/index.vue(P01)+ 详情弹窗router/modules/sqxp.ts + 菜单 SQL(system:operlog:list)CustomerDetailDialog、contract/detail Tab 改为 businessId 查询API_REQUEST_LOG_ENABLED=true(config.py)./scripts/update-graph.sh backend(frontend 待有 import 变更后可再跑)sys_api_request_log_his@oper_log 全覆盖