# 还在用老接口的功能(按功能清点) > **核对时间**:2026-09-17(Session 036/037) > **核对方法**:全仓库 grep 网络调用点 → **逐个反查调用方** → 再看它支撑了哪些 > 用户能感知的行为。复核命令见文末,可重跑。 老接口 = `{VITE_API}`(`//qingpu-data-api.metamaker.cn`)。 ## 一、已经迁到新接口的(不用管) 对话(`POST /api/chat`,SSE)、会话列表 / 历史 / 改名 / 删除、点赞点踩的**落库**(DMS 1887/1889)、 政策卡片与协议内容(随 `/api/chat` 下发)、惠企政策库数据(静态 json)。 ## 二、还在用老接口的功能 ### 1. 企业身份识别(登录 + 拉企业信息)—— **在用,且牵连最广** **用户看到什么**:右上角账号区。未登录显示「青浦区区内企业登录」(可点,跳一网通办), 登录后显示**企业名 + 首字母头像 + 退出登录**,还会飘一个气泡「识别到您为我们区内企业,推荐登录」。 **怎么走到老接口**: | 入口 | 接口 | |---|---| | 从一网通办带 `?access_token=` 跳回来 | `POST /enterprise/login` 换 `credit_code` + `authToken` | | 带 `?credit_code=` 跳回来 | `GET /fta_ent_policy/enterprise_info` 直接拉企业信息 | **这个身份一共被 5 处依赖**(所以它不只是"显示个名字"): 1. 账号区显示企业名与头像 2. 判断"是否登录"(`isEnterpriseLoggedIn`) 3. **历史数据分家**:登录 → `ba_chat_history`;访客 → `ba_temp_chat_history` 4. **会话列表**:登录后按 credit_code 拉远端会话(现走 DMS) 5. **DMS 记录归属**:`c_credit_code` = 企业信用代码,未登录则 `访客_<访客id>` > ⚠️ 前端**只用企业信息的 `name` 与 `credit_code` 两个字段**(其余 19 个字段零引用)—— > 所以真要用 DMS 的企业信息(栏目 1888)替换它,成本很低。 ### 2. 使用统计(页面浏览 / 回答反馈)—— **在用,且与 DMS 双写** | 埋点 | 用户什么时候触发 | 上报内容 | |---|---|---| | 页面浏览 | 打开页面(`onMounted`) | `visitor_id`(localStorage 里的访客 id)、`business_code`(= policyMode)、`env`(= 构建 mode) | | 回答反馈 | **点赞 / 点踩 / 取消** | 同上 + 反馈内容 | - 接口:`POST {统计基址}/assistant_statistics/page_view`、`/assistant_statistics/feedback` - 基址取 `VITE_ASSISTANT_STATISTICS_BASE_URL`(**只有 `.env.qingpu` 配了**),否则回退 `VITE_API` - ⚠️ **点赞是双写**:既写 DMS 的 `c_feedback_*`(业务数据),又发统计接口(运营数据) ### 3. 语音输入 —— **在用** - 触发:点输入框的麦克风 - 接口:`{VITE_ASR}/api/human_asr/v2/asr/gen_auth` 取鉴权,再开 WebSocket 走识别流 - 与对话协议无关,本轮迁移没碰它 ### 4. 图片 / 附件上传 —— **用户触发不到(入口被注释)** - 原设计:输入框的上传按钮(图片、pdf/doc/xlsx 等)→ `POST /common/qp_signed_url` 取 OSS 签名 → 直传 OSS - 现状:新协议 `/api/chat` 只收 `{thread_id, question}`,附件传不上去, **上传入口整块被注释**(`BusinessAssistantMobileInputShell.vue` 里有说明) - 但代码与 OSS 地址仍活着(地址还是**硬编码**在 `useBusinessAssistantUpload.ts` 里的), 等后端定了附件契约才能接上 ### 5. 政策事项列表的「远端查询」—— **几乎不可达** - 原设计:列表数据本地都没有时,去模型服务查 `{VITE_MODEL_SERVER}/v1/policies` - 现状:`fetchPolicyList` 里前面两档(惠企政策库 262 条 / 本轮卡片兜底)**几乎总能命中**, 第三档基本走不到 ### 6. `openid` 换 token —— **只在 test 构建** - 触发:页面初始化的内联脚本 - 现状:只在 `VITE_USE_KNOWLEDGE_API === false` 时执行,四份 env 里**只有 `.env.test` 是 false** ## 三、已经没有人调用的(死代码,只标注未删) | 位置 | 原本支撑的功能 | 为什么死了 | |---|---|---| | `src/network/api/card/index.js` 的 `getMediaList` | 卡片里的媒体文件信息(图片/附件的展示) | 无调用方 | | 同上的 `giveFeedback` | 点赞点踩**落库**(旧接口版) | 反馈改走 DMS 后,最后一个调用点消失 | | 同上的 `appendHistory` | 把每轮问答追加到服务端历史 | 早就注释掉了,历史改由接口的 `enable_history` 控制 | | `useBusinessAssistantChat.ts:2` 的 `import cardAPI` | — | **未使用的 import**,是上面这个模块唯一的引用 | | `PolicyListUpdatedMatch.vue` | 旧协议 `` 卡片列表 | 仍被 `BusinessRecord` 挂载,但**新协议不再产出这种块**,只有旧历史内容可能触发 | > 清理这些要另开一轮,并先确认没有旧数据依赖。 ## 四、复核方法(可重跑) ```bash # 1. 列出所有网络调用点 grep -rn "fetch(\|new WebSocket\|new EventSource\|axios" src/ index.html \ --include=*.ts --include=*.vue --include=*.js --include=*.html # 2. 对每个点反查调用方(以 card/index.js 为例) grep -rn "getMediaList\|giveFeedback\|appendHistory\|network/api/card" src/ \ --include=*.ts --include=*.vue --include=*.js | grep -v "^src/network/api/card/index.js" ``` **判据**:出现在第 1 步 ≠ 还在用。必须做第 2 步——**没有调用方的就是死代码**。 第二节每条的「触发条件」也是这么查的(例如第 5 条要看 `fetchPolicyList` 前面两档 return 才能判断它几乎走不到)。