# 用药工具 — 用药配伍(移动端) ## 1. 概述 | 项 | 说明 | | --- | --- | | Base Path | `/app/medication/compatibility` | | 数据表 | `biz_withdrawal_period_standard`、`biz_drug_incompatibility_standard`、`biz_drug_incompatibility_companion` | | 鉴权 | 需登录 | ## 2. 药物名称列表 `GET /app/medication/compatibility/names` 药物1、药物2均从 `biz_withdrawal_period_standard.drug_name` **去重**列表选择;支持 `keyword` 模糊,最多 50 条。 也可复用 `GET /app/medication/drug/names`。 ## 3. 配伍检查 `GET /app/medication/compatibility/check` | 参数 | 必填 | 说明 | | --- | --- | --- | | `drugName1` | 是 | 药物1 | | `drugName2` | 是 | 药物2(须与药物1不同) | **禁忌判定(满足任一即为有禁忌)** 1. `main_drug_name = drugName1` 且存在 `companion_drug_name = drugName2` 的子表记录(`count > 0`) 2. `main_drug_name = drugName2` 且存在 `companion_drug_name = drugName1` 的子表记录(`count > 0`) **配伍结果 `compatResult`** - 有禁忌时:取**命中方向主药**在 `biz_drug_incompatibility_standard.compat_result` 的值 - 若方向1命中,取 `drugName1` 为主药的 `compat_result` - 否则取 `drugName2` 为主药的 `compat_result` - 无禁忌时:不返回 `compatResult` 字段 **响应 `data`** | 字段 | 说明 | | --- | --- | | `drugName1` / `drugName2` | 入参药物名称(trim 后) | | `hasIncompatibility` | 是否有配伍禁忌 | | `compatResult` | 有禁忌时的配伍结果文案(可空) | ## 4. 错误示例 | 场景 | 提示 | | --- | --- | | 未选药物 | 请选择药物名称 | | 两药相同 | 请选择两种不同的药物 |