Files
platforms/docs/操作日志_平台资源搜索配置_20260811.md
2026-08-11 22:23:02 +08:00

44 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 平台资源搜索配置操作日志
操作时间2026-08-11 22:12:26
操作类型:扩展
影响模块:平台总后台 5173、平台 API 搜索、资源契约
## 操作前状态
- 标准列表页无条件显示“关键字”输入框。
- 后端没有搜索元数据,零搜索字段资源会静默返回未筛选列表。
- 工作人员角色等字段页面显示中文,但只能按数据库英文编码搜索。
- 用户地址页面显示搜索框,但实际没有允许搜索的字段。
## 具体操作
- 新增平台路由专用的配置化搜索中间件,其他后台保留原有行为。
- 新增资源搜索策略注册和启动期安全校验。
- 普通文本继续模糊搜索;固定枚举改为中文标签包含匹配并参数化查询编码。
- 资源契约新增 `searchFields`,前端资源定义和可搜索枚举选项消费同一生成契约。
- 标准列表搜索提示与实际显示列求交集;空集合隐藏表单并清除陈旧 `keyword`
- 抽离列表搜索组合函数,使 `CrudListPage.vue` 降至 500 行以内。
- 新增后端单元测试、平台契约测试和前端资源搜索检查脚本。
## 行为变化
- 变更前:所有列表显示笼统搜索框;可能无效或只能输入隐藏英文编码。
- 变更后:仅支持搜索的页面显示,例如“可搜索:用户名、角色”;用户地址等页面不显示。
- 输入“配送”可匹配“配送人员”;输入 `delivery` 不再通过角色枚举字段命中。
- 动态关系名称本轮保持不可搜索,避免扩大个人信息和关联查询边界。
## 验证结果
- 后端 `common``platform``routers` 相关测试通过。
- 前端 `resource-search:check``contract:check``type:check` 通过。
- 用户地址既有展示检查通过前端生产构建通过2615 个模块)。
- `git diff --check` 通过;相关核心文件均控制在 500 行以内。
- 5173 服务可访问且登录页无控制台错误;当前内置浏览器会话未登录,无法对受保护列表进行登录后人工点击验证。
## 风险评估
- 平台总后台的搜索结果集合会按明确可见字段收敛,隐藏字段和枚举英文编码不再产生隐式命中;这是已确认的产品行为。
- 中文枚举匹配在内存中的小型可信目录完成不拼接用户输入SQL 列名和编码均来自静态策略。
- 当前未开放动态关系名称搜索;若后续开放,需要额外权限审计和数据库索引评估。