2.5 KiB
2.5 KiB
平台资源搜索配置操作日志
操作时间: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 列名和编码均来自静态策略。
- 当前未开放动态关系名称搜索;若后续开放,需要额外权限审计和数据库索引评估。