# 【服务包】接入文档
# 1.接口说明
# 1.1 静态基础数据(合作方
提供)
# 1.1.1 批量获取医院信息
- 该接口主要用来批量获取合作方提供的医院信息
- 如果指定了 hospitalId,就获取指定医院的信息
接口名:
hospitals
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | hospitalId | 医院 ID | string | ✖️ | 缺省时查询所有医院的信息 |
2 | cityCode | 城市 code | string | ✖️ | 缺省时查询所有城市医院 |
3 | areaCode | 区域 code | string | ✖️ | 缺省时查询城市下的所有区域医院 |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | count | 总记录条数 | int | ✔️ | |
4 | rsp | 返回详情 | array[HospitalInfo] | ✔️ |
# HospitalInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | hospitalId | 医院 ID | string | ✔️ | |
2 | hospitalName | 医院名称 | string | ✔️ | 如医院有东、西院区,本次合作的业务在东院区,医院名称就需要返回 XX 医院(东院区),不能返回 xx 医院,同理则返回 XX 医院(西院区) |
3 | hospitalShortName | 医院简称 | string | ✖️ | |
4 | cityCode | 城市编码 | string | ✔️ | 参考附录 CityCode & AreaCode |
5 | areaCode | 区域编码 | string | ✔️ | 参考附录 CityCode & AreaCode |
6 | address | 医院地址 | string | ✔️ | |
7 | detail | 医院介绍 | string | ✖️ | |
8 | tel | 医院联系方式 | string | ✖️ | |
9 | geo | 医院经纬度地址 | string | ✔️ | 格式: 经度,维度 (以高德/腾讯地图为准) |
10 | url | 医院官网链接 | string | ✖️ | |
11 | logo | 医院 logo 链接 | string | ✔️ | |
12 | alias | 医院别名 | string | ✖️ | |
13 | hospitalLevel | 医院等级 | int | ✔️ | HospitalLevel |
14 | hospitalType | 医院类型 | int | ✔️ | HospitalType |
15 | hospitalRules | 医院预约规则 | array[string] | ✖️ | |
16 | branches | 分院列表 | array[HospitalInfo] | ✔️ | |
17 | payMethod | 支付方式 | int | ✖️ | 0:现场支付 1:现场和线上都支持 2:强制线上 |
18 | payPassTime | 非当天支付过期时间 | int | ✖️ | 单位:分 默认:半小时 部分合作方的当天和非当天支付时间不一样 |
19 | todayPayPassTime | 当天支付过期时间 | int | ✖️ | 单位:分 默认:半小时 |
20 | treatGuide | 就诊指引 | string | ✖️ | |
22 | isNeedTreatCard | 是否需要就诊卡 | int | ✔️ | 0:不需要;1:需要 |
# 1.2 动态数据(合作方
提供)
# 1.2.1 批量获取医院服务包列表信息
- 该接口主要用来批量获取合作方医院所提供的服务包信息
- 如果只有一个 hospitalId,就获取单个医院的服务包信息
接口名:
packageList
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | hospitalIds | 医院 ID 集合 | array[string] | ✖️ | 缺省查询所有医院的服务包信息 |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | count | 总记录条数 | int | ✔️ | |
4 | rsp | 返回详情 | array[PackageInfo] | ✔️ |
# PackageInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | hospitalId | 医院 ID | string | ✔️ | |
2 | packageList | 服务包列表 | array[PackageDetailInfo] | ✔️ | |
3 | nurseList | 分配的护士名单 | array[NurseInfo] | ✖️ | 每个服务包可能分配到护士列表名单 |
# NurseInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | nurseName | 护士姓名 | string | ✔️ | |
2 | nursePhone | 护士手机号 | string | ✔️ | |
3 | realTime | 实际上门时间 | string | ✔️ | 格式:yyyy-MM-dd HH:mm:ss 同步状态为21时必填 |
4 | orderComeTime | 预约上门时间 | string | ✔️ | 格式:yyyy-MM-dd 同步状态为20时必填 |
5 | detailComeTime | 详细上门时间 | string | ✔️ | 上午,下午 同步状态为20时必填 |
6 | reason | 取消原因 | string | ✖️ |
# PackageDetailInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | packageNo | 服务包编号 | string | ✔️ | 这里要求同一个合作方全局唯一,便于后续业务数据之间的流转 |
2 | packageName | 服务包名称 | string | ✔️ | 居家护理项目 |
3 | nursingIterms | 服务内容 | string | ✔️ | 项目描述 |
4 | suitPeople | 适用人群 | string | ✖️ | |
5 | siteRequirement | 现场要求 | string | ✖️ | |
6 | feeExplain | 费用说明 | string | ✔️ | |
7 | callFee | 上门费 | int | ✔️ | 单位:分 |
8 | nursingFee | 护理费 | int | ✔️ | 单位:分 |
9 | totalFee | 总费用 | int | ✔️ | 单位:分 |
10 | appointRule | 预约规则 | array[string] | ✖️ | 如果有多条,用数组的方式返回 |
11 | specialDept | 所属护理专科 | string | ✔️ | |
12 | instructions | 使用说明 | string | ✖️ | |
13 | thumbnail | 缩略图 | string | ✔️ | |
14 | detailHeadImage | 详情页头部图片 | string | ✔️ |
# 1.2.2 获取指定服务包的排班号源信息
接口名:
sourceInfo
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | packageNo | 服务包编号 | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | count | 总记录条数 | int | ✔️ | |
4 | rsp | 返回详情 | array[ScheduleInfo] | ✔️ |
# ScheduleInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | scheduleId | 排班 ID | string | ✔️ | |
2 | treatDate | 上门服务日期 | string | ✔️ | 格式:yyyy-MM-dd |
3 | sourceType | 班别代码 | string | ✔️ | 详见 SourceType |
4 | sourceTypeName | 班别名称,如上午、下午 | string | ✖️ | |
5 | sourceInfos | 号源详情 | array[SourceInfo] | ✔️ |
# SourceInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | sourceId | 号源 ID | string | ✔️ | 要求号源 ID 唯一,并且可以对应查询到具体是哪个服务包哪一天的排班等信息 |
2 | sourceBeginTime | 上门服务开始时间 | string | ✔️ | 格式:HH:mm |
3 | sourceEndTime | 上门服务结束 时间 | string | ✔️ | 格式:HH:mm |
4 | leftNum | 剩余可预约数量 | int | ✔️ | 如果有对应的日期排班,但是 leftNum 为 0,将会显示已约满。如果没有对应日期排班,将会显示置灰 |
# 1.2.3 提交订单
- 用户在
腾讯健康
小程序提交订单后,我们就会把相关信息提交到合作方- 等待微信支付回调
腾讯健康
后,会再次通过接口把支付状态同步给合作方- 在提交订单后,要求合作方先锁定一个号源,如果有支付失败或者取消订单的请求再释放号源
接口名:
submitOrder
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | hospitalId | 医院 ID | string | ✔️ | |
2 | sourceId | 号源 ID | string | ✔️ | |
3 | phone | 手机号 | string | ✖️ | |
4 | cardNo | 证件号码 | string | ✖️ | |
5 | cardType | 证件类型 | string | ✖️ | 详见 CardType |
6 | name | 就诊人姓名 | string | ✖️ | |
7 | sex | 就诊人性别 | int | ✖️ | 0 :男,1:女,2:其他 |
8 | birthday | 就诊人出生日期 | string | ✖️ | yyyy-MM-dd |
9 | patientId | 就诊人 ID | string | ✖️ | 如果是就诊卡的模式,只需要带就诊人的 ID 和就诊卡(treatCardNo)即可 |
10 | guardianName | 监护人姓名 | string | ✖️ | |
11 | guardianCardType | 监护人证件类型 | string | ✖️ | 详见 CardType |
12 | guardianCardNo | 监护人证件号 | string | ✖️ | |
13 | guardianPhone | 监护人手机号 | string | ✖️ | |
14 | guardianSex | 监护人性别 | int | ✖️ | |
15 | guardianRelation | 监护人与就诊人关系 | int | ✖️ | 详见 GuardianPatientRelationType |
16 | invoiceTitle | 发票抬头 | string | ✖️ | |
17 | invoiceTitleType | 发票抬头类型 | int | ✖️ | 1:个人 2:公司 |
18 | invoiceEmail | 发票发送邮箱 | string | ✖️ | |
19 | taxNo | 税号 | string | ✖️ | |
20 | remark | 用户备注 | string | ✖️ | |
21 | packageNo | 服务包编号 | string | ✔️ | |
22 | addressRegion | 上门地址--四级区域 | string | ✔️ | eg:广东省 深圳市 南山区 粤海街道 |
23 | addressDetail | 上门地址--详细地址 | string | ✔️ | eg: xxx 小区 xxx 栋 xxx 门牌号 |
24 | addressLongitude | 上门地址--经度 | string | ✔️ | |
25 | addressLatitude | 上门地址--纬度 | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | OrderInfo | ✔️ |
# OrderInfo
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ |
# 1.2.4 同步支付结果
- 如果支付失败,
腾讯健康
会自动扭转订单状态为预约失败且合作方需要释放掉号源- 如果支付成功,
腾讯健康
侧订单会进入到待审核阶段
接口名:
syncPayResult
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | payAmount | 用户实际支付的费用 | int | ✖️ | 单位:分。支付成功微信回调时,用户支付的费用。如果是医保模式,这里是个账金额 |
3 | tradeNo | 第三方支付的交易流水号 | string | ✔️ | 如 :微信支付,这里就是微信支付的商户内部订单号 |
4 | transactionId | 微信支付订单号 | string | ✔️ | 微信支付侧的订单号,不同于商户内部订单号,不能自定义 |
5 | tradeState | 订单状态 | string | ✔️ | SUCCESS—支付成功, REFUND—转入退款, NOTPAY—未支付, CLOSED—已关闭, REVOKED—已撤销(刷卡支付), USERPAYING--用户支付中, PAYERROR--支付失败(其他原因,如银行返回失败) |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.2.5 取消订单
- 当用户发起取消操作时,会将请求同步给合作方去审核
接口名:
cancelOrder
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | Object | ✔️ |
# 1.2.6 同步退款结果
- 用户取消或者合作方侧审核订单不通过时,腾讯健康会发起退款,退款成功后会通过该接口把退款结果同步给合作方
接口名:
syncRefundResult
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | tradeNo | 第三方支付的交易流水号 | string | ✔️ | 如 :微信支付,这里就是微信支付的商户内部订单号 同支付结果同步里面的 tradeNo |
3 | refundId | 微信退款订单号 | string | ✖️ | |
4 | refundAmount | 退款金额 | int | ✔️ | 单位:分 |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.2.7 获取服务码
- 当用户提交的订单被审核通过后,去获取服务码,用于护士上门时核销
- 当
腾讯健康
拉取到服务码后会存储下来,避免频繁请求合作方
接口名:
getServiceQrCode
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | ServiceQrCode | ✔️ |
# ServiceQrCode
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | qrCode | 服务码 | string | ✔️ | base64 编码 |
2 | status | 服务码状态 | int | ✔️ | 0:未使用 1:已核销 |
# 1.2.8 申请开发票
- 在用户下单后,有些场景用户可能要补开发票
接口名:
invoiceApply
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | invoiceTitle | 发票抬头 | string | ✖️ | |
3 | invoiceTitleType | 发票抬头类型 | int | ✖️ | 1:个人 2:公司 |
4 | invoiceEmail | 发票发送邮箱 | string | ✖️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.2.9 售后申请
- 在订单完成后,可能有一些售后行为通过该接口同步
接口名:
postSaleApply
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | type | 售后类型 | array[int] | ✔️ | 详见PostSaleType |
3 | refundAmount | 退款金额 | int | ✔️ | |
4 | reason | 申请原因 | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.3 同步数据(腾讯健康
提供)
# 1.3.1 同步订单审核状态
- 订单生成时,审核通过与否可以通过该接口同步
- 订单取消时,审核通过与否也可以通过该接口同步
接口名:
syncOrderInfo
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | orderStatus | 订单审核状态 | int | ✔️ | 详见OrderStatus |
3 | nurseInfo | 护士信息 | NurseInfo | ✖️ | 当订单审核通过时,需要告知具体分配到的护士信息,同步状态为 20,21必填 |
4 | remark | 备注 | string | ✖️ | |
5 | refundAmount | 退款金额 | int | ✖️ | 单位:分 当 orderStatus 为 22 时,腾讯健康 会进行部分退款操作 |
6 | completeTime | 订单完成时间 | string | ✔️ | 格式:yyyy-MM-dd HH:mm:ss 同步状态为21时必填 |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.3.2 同步售后信息
接口名:
syncPostSaleInfo
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | refundAmount | 退款金额 | int | ✖️ | 如果是退款申请通过,有可能最终退款金额和用户申请的不一致,以该金额为准进行部分退款 |
3 | status | 售后状态 | PostSaleStatus | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.3.3 主动取消订单
接口名:
doCancelOrder
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ | |
2 | refundAmount | 退款金额 | int | ✔️ | 0 代表全部退款 |
3 | refundReason | 退款原因 | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ |
# 1.3.4 查询订单状态
接口名:
queryOrderStatus
请求参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | orderId | 订单 ID | string | ✔️ |
返回参数:
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | code | 状态码 | int | ✔️ | 0:正常,其他:异常。具体见附录说明 |
2 | message | 状态描述 | string | ✔️ | |
3 | rsp | 返回详情 | object | ✔️ | |
rsp
序号 | 字段 | 名称 | 类型 | 必填 | 备注 |
---|---|---|---|---|---|
1 | status | 订单状态 | int | ✔️ | 详见NursingOrderStatus |
# 2.附录
# Code
值 | 说明 |
---|---|
0 | 成功 |
非 0 | 失败 |
-404 | 查找记录为空 |
具体每个业务接口可以再详细对接定义
# HospitalLevel
值 | 说明 |
---|---|
1 | 三甲 |
2 | 三乙 |
3 | 三丙 |
4 | 二甲 |
5 | 二乙 |
6 | 二丙 |
7 | 一甲 |
8 | 一乙 |
9 | 一丙 |
11 | 一级 |
12 | 二级 |
13 | 三级 |
10 | 其他 |
# SourceType
值 | 说明 |
---|---|
0 | 晚上(18:00 - 06:00) |
1 | 上午(06:00 - 12:00) |
2 | 下午(12:00 - 18:00) |
3 | 全天(00:00 - 23:59) |
5 | 其他 |
# HospitalType
值 | 说明 |
---|---|
1 | 国营 |
2 | 民营 |
3 | 合资 |
4 | 外资 |
5 | 个体 |
9 | 其它 |
# CardType
值 | 说明 |
---|---|
01 | 身份证 |
02 | 港澳居民证 |
03 | 护照 |
04 | 军人证 |
05 | 其他 |
# OrderStatus
值 | 类型 | 说明 |
---|---|---|
10 | int | 审核不通过 |
20 | int | 审核通过 |
21 | int | 服务已完成 |
22 | int | 服务已完成(已申请部分退款) |
23 | int | 服务已完成(部分退款已完成) |
24 | int | 服务未完成(已申请全部退款) |
30 | int | 更新上门护士信息 |
# GuardianPatientRelationType
值 | 说明 | 备注 |
---|---|---|
0 | 未知 | |
1 | 本人 | |
2 | 父母 | |
3 | 子女 | |
4 | 夫妻 | |
5 | 亲属 | |
6 | 朋友 |
# PostSaleType
值 | 类型 | 说明 |
---|---|---|
1 | int | 退款 |
2 | int | 服务质量投诉 |
3 | int | 功能问题反馈 |
4 | int | 其他 |
# PostSaleStatus
值 | 类型 | 说明 |
---|---|---|
1 | int | 处理中 |
2 | int | 处理完成 |
3 | int | 审核不通过 |
# NursingOrderStatus
值 | 类型 | 说明 |
---|---|---|
-1 | int | 未知 |
13 | int | 预约中(待审核) |
41 | int | 待上门 |
42 | int | 服务完成 |
44 | int | 医院售后处理中 |
1002 | int | 订单已取消 |
# CityCode & AreaCode
具体的行政区域代码可以参考链接:
← 【在线门诊】接入文档 复诊开药接入文档 →