# 复诊开药接入文档

# 1 背景介绍

该文档主要针对小程序具备线上开处方药的能力, 打通互联网医院的处方药审核的交互, 定义交互的具体流程和协议细节

# 1.1 流程时序图

uml diagram

# 1.2.接口说明

接入前必看

  1. 网关接入请看网关接入标准
  1. 双方请求链接的格式如下:

a、腾讯请求合作方:${合作方提供请求的链接前缀} + 接口名

eg: https://xxxx.partern.com/api/hospitals

b、网关接入文档中的 $app 直接用 docInquiry替代即可

eg: https://med-biz-pre.wecity.qq.com/api/docInquiry/syncDoctorServiceStatus/10000007

  1. 文档中非必传的字段可以不传,如果传了,相应的值必须要有特定的含义。不能为 undefined 或者 null
  1. 文档中的必传字段,根据类型可以有不同的默认值。
  • a) 类型为 int,如果合作方返回-1,意味着该字段合作方无法提供有效值,腾讯侧会丢弃该字段
  • b) 类型为 string,如果合作方返回'',意味着该字段合作方无法提供有效值,腾讯侧会丢弃该字段
  • c) 类型为 array,如果合作方返回[],意味着该字段合作方无法提供有效值,腾讯侧会丢弃该字段
  • d) 类型为 object,直接返回 {},意味着该字段合作方无法提供有效值,腾讯侧会丢弃该字段

# 2 腾讯方提供接口

网关信息:请看公共部分

# 2.1 接收医师问诊消息

  1. 该接口提供给医院方,回传医师的会话信息,包含文字和图片,暂不支持语音和视频
  2. 需携带问诊ID,空消息将被丢弃

接口名:

doctorInquiryMessage

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 message 问诊消息 Message[] ✔️
3 sendTime 时间戳 long ✔️ 标识消息发送的顺序

请求参数: Message

序号 字段 名称 类型 必填 备注
1 msgType 消息类型 int ✔️ 详见 MsgType
2 content 消息内容 string ✔️ 消息内容
3 order 消息顺序 int ✔️ 图文混排时使用

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 2.2 接收医师开具处方信息

  1. 医生开具处方返回信息,可以为拒方和开方。

接口名:

doctorRecipe

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 recipeStatus 开方状态 int ✔️ 详见 RecipeStatus
3 rejectReason 拒方原因 string ✖️
4 diagResult 诊断结果 string ✖️
5 confirmRecipe 确认开方指令 int ✔️ 详见 ConfirmRecipe
6 recipeNo 处方编号 string ✖️ 开方状态为开方状态时,需要带过来
7 medicineInfos 药品列表 MedicineInfo[] ✖️

药品信息 MedicineInfo

序号 字段 名称 类型 必填 备注
1 commonName 通用名称 string ✔️
2 specification 规格 string ✔️
3 packing 包装 string ✔️
4 amount 购买数量 int ✔️
5 approvalNo 批准文号 string ✔️
6 directions 用法 string ✔️
7 singleDosage 单次用量 string ✔️
8 singleFrequency 用量频次 string ✔️
9 medicineId 药品ID string ✔️ 创建会话时传递,开处方时回传

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️
3 rsp 返回详情 RecipeResult ✖️

处方信息: RecipeResult

序号 字段 名称 类型 必填 备注
1 recipeId 处方ID string ✔️
2 inquiryId 问诊ID string ✔️

# 2.3 接收审方信息

  1. 接收审方信息的审核结果信息

接口名:

auditResult

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 recipeId 处方ID string ✔️ 处方ID
3 pharmaId 药师ID string ✔️ 药师ID
4 auditResult 审核结果 int ✖️ 详见 AuditResult
5 rejectReason 驳回原因 string ✖️
6 recipePicture 有效处方图片 string ✖️

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 2.4 改变会话状态

结束状态:会话结束之后,由医生端关闭会话,并回传状态信息

接口名:

changeConversationStatus

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊单ID string ✔️ 问诊ID
2 inquiryStatus 状态 int ✔️ 查看附录说明

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 3 医院方提供接口

# 3.1 获取在线(接诊)状态的医生

获取在线(接诊)状态的医生

接口名:

getOnlineDoctor

请求参数:

序号 字段 名称 类型 必填 备注
1 doctorIds 查询医生列表ID string[] ✖️ 不传时,查询全部医生状态

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️
3 rsp 返回详情 DoctorOnlineInfo[] ✔️

复核信息 DoctorOnlineInfo

序号 字段 名称 类型 必填 备注
1 doctorId 医生ID string ✔️
2 hospitalId 医院ID string ✔️
3 status 接诊状态 int ✔️ 详见 OnlineStatus

# 3.2 创建问诊会话信息

创建会话信息

接口名:

createConversation

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 inquiryStatus 问诊单状态 int ✔️ 详见 InquiryStatus
3 doctorId 医生ID string ✔️
4 patientInfo 就诊人信息 PatientInfo ✔️
5 diseaseInfos 疾病标签信息 DiseaseInfo[] ✔️
6 medicineInfos 药品信息 MedicineInfo[] ✔️

患者信息 PatientInfo

序号 字段 名称 类型 必填 备注
1 name 姓名 string ✔️
2 age 年龄 string ✔️
3 gender 性别 int ✔️ 详见 Gender
4 idCard 身份证 string ✔️
5 encryptType 身份证加密类型 int ✔️ 0/空:不加密,1:加密

疾病标签信息 DiseaseInfo

序号 字段 名称 类型 必填 备注
1 diseaseName 疾病名称 string ✔️

药品信息 MedicineInfo

序号 字段 名称 类型 必填 备注
1 commonName 通用名称 string ✔️
2 specification 规格 string ✔️
3 packing 包装 string ✔️
4 amount 购买数量 int ✔️
5 approvalNo 批准文号 string ✔️
6 medicineId 药品ID string ✔️

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 3.3 接收患者问诊消息

建立会话之后,用户给医师发送消息

接口名:

consumerInquiryMessage

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 message 问诊消息 Message[] ✔️
3 sendTime 时间戳 long ✔️ 标识消息发送的顺序

请求参数: Message

序号 字段 名称 类型 必填 备注
1 msgType 消息类型 int ✔️ 详见 MsgType
2 content 消息内容 string ✔️ 消息内容
2 order 消息顺序 int ✔️ 图文混排时使用

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 3.4 同步订单信息

同步订单信息:商家发货信息的同步信息

接口名:

syncOrderInfo

请求参数:

序号 字段 名称 类型 必填 备注
1 inquiryId 问诊ID string ✔️ 问诊ID
2 recipeId 处方ID string ✔️ 处方ID
3 storeInfo 药房信息 StoreInfo ✔️

药房信息 StoreInfo

序号 字段 名称 类型 必填 备注
1 storeName 商家门店信息 string ✔️

返回参数:

序号 字段 名称 类型 必填 备注
1 code 状态码 int ✔️ 详见 Code
2 message 状态描述 string ✔️

# 4 附录说明

# Code

返回报文异常码定义

code msg
0 成功
非0 异常

# InquiryStatus

问诊会话状态定义

code msg
1 问诊中
2 医生主动结束问诊
3 问诊超时结束

# MsgType

发送消息类型

code msg
1 文本
2 图片

# RecipeStatus

处方开方状态

code msg
0 拒方状态
1 开方状态

# ConfirmRecipe

确定开方指令

code msg
0 未确认
1 已确认

# AuditResult

审核结果

code msg
0 不通过
1 通过

# ReAuditResult

复核结果

code msg
0 不通过
1 通过

# OnlineStatus

医生在线状态

code msg
0 不在线
1 在线

# Gender

性别

code msg
0 未知
1
2