# 小程序配置模块重构:联系我们 / 常见问题 / 协议政策 > **服务**: hl-user-service (端口 8081) > **PR**: https://git.1814.love:8443/wx/HL/pulls/773 > **Issue**: https://git.1814.love:8443/wx/HL/issues/766 > **日期**: 2026-04-17 > **影响范围**: 管理端三大配置模块(联系我们 / 常见问题 / 协议政策)的所有写接口和大部分读接口 --- ## 背景 小程序配置模块历史遗留问题较多: - Status 字段混用 Integer(0/1) 与 String("启用/停用") - VO 命名不统一:`FaqCategoryVO` / `AgreementRequest` 等不符合团队规范 - 协议政策每类型应只有一条记录,但历史接口允许多记录 CRUD,数据可能出现同类型多条 - 没有字典校验 / 条件必填 / 幂等 / 富文本 XSS 过滤,业务错常见 500 本次整改按团队规范重构三个模块,统一 VO 命名、字段类型、错误码、安全策略。 ## 字段统一变更(全三模块) ### Status 字段:Integer → String | 旧值 | 新值 | |------|------| | `1` | `"ACTIVE"` | | `0` | `"INACTIVE"` | 影响所有请求体 / 响应体中的 `status` / `enabled` 字段,前端请求与展示都需切换成大写英文常量。 数据库迁移由 DDL 完成(幂等 SQL,已在 PR 中附带)。 ### 业务错误码:500 → 400 字典值非法、条件校验失败、资源不存在等业务错从 `code=500` 改为 `code=400`,并附中文消息。HTTP 始终 200,前端按 `code` 区分。 ### 写接口全部加 @Idempotent 9 个写接口启用幂等控制(3~5 秒窗口),前端连点 / 重试会被返: ```json { "code": 429, "success": false, "message": "请勿重复提交" } ``` 改 body 后可再次提交。 ### 富文本 XSS 过滤(后端自动处理) 以下字段提交时后端自动清洗 `