# DMS 栏目与字段配置 五个已接入栏目的默认 ID、栏目名称和业务字段名统一保存在 [`config/dms_schema.json`](../config/dms_schema.json)。`records`(助手问答记录)、`sessions`(助手会话)、`demands`(诉求词)、`basic`(企业基础信息)、`honor`(企业荣誉信息)是程序内部固定别名。 每个栏目中,`id` 是 DMS 栏目 ID,`name` 是启动时核对的栏目名称;`fields` 左侧为程序内部字段键,右侧为 DMS 模型中的实际字段名。修改 DMS 字段时只改右侧,不改左侧。`types` 只需列出非默认 `text` 类型,键使用程序内部字段键。父栏目名称在顶层 `parent`。DMS 内置的 `id`、`state`、`column_id`、`create_time`、`update_time`、`title` 是接口协议字段,不作为业务字段重命名。 会话三个栏目原有环境变量 `DMS_RECORDS_COLUMN_ID`、`DMS_SESSIONS_COLUMN_ID`、`DMS_DEMANDS_COLUMN_ID` 仍可覆盖配置文件里的 ID;若要统一从文件维护,应移除这些旧覆盖项。企业两栏只从配置文件取 ID。配置变更后重启进程;已创建的 DMS 内容不会自动迁移或改名。严格作用域开启时,还须同步调整 `DMS_ALLOWED_SCOPES_JSON` 中允许的栏目名称。 程序仍先按栏目 ID 读取元数据,核对栏目名、父栏目和模型字段类型,再访问内容。字段名映射应用于查询条件、写入内容和读取结果;配置非法或服务端模型不符会停止相应 DMS 操作。`sh deploy-offline.sh check-dms`也读取本文件及现有环境变量,按实际映射只读核对五个栏目的元数据。修改配置不能替代服务端栏目、模型和历史数据迁移。离线部署须重新生成单包,旧包不会自动包含新配置。 新环境可在`.env`中设置`DMS_BASE_URL`为服务主机、`AUTH_PORT`为认证端口、`DMS_PORT`为数据端口。客户端使用账号密码向认证端口的`/proxy_oauth/user/login`获取token,token仅保存在内存,再向数据端口的`/proxy_dms`访问栏目与模型;未设置端口时沿用`DMS_BASE_URL`的端口。HTTP 401或DMS 212时有界重新登录;无需手动获取token。直接`/dms`且未配置认证端口时仍要求提供token,避免猜测认证地址。`check-dms`只验证栏目元数据和字段类型,不因栏目暂无记录而失败。 2026-09-30的`dev`本地配置已依据当前服务核验:父栏目“营商助手”1883,助手问答记录1889、助手会话1887、诉求词1891、企业基础信息1888、企业荣誉信息1886。五个名称均与真实元数据一致;65个字段映射value各删除一层`c_`并通过模型类型核验。其他环境应重新核验,不能直接复用这些ID。 会话与企业列表共用精确空结果契约:仅`selectContentList`返回`code=202`且`message`与`content`均为“数据不存在”时视为空列表。其他202、权限/认证失败、元数据和写入错误仍明确失败。真实合成草稿已验证新增、更新及回读;销毁请求`state=4`获成功响应,草稿列表确认测试记录退出。当前服务未返回销毁状态的记录,因此尚未验证销毁记录的归档回读或可恢复性;不能把销毁操作称为物理删除。