购药服务(一键购药模式)
#
简介:一键购药模式通常指合作方能够开具处方,通过京东侧提供H5/小程序购药页面链接将处方单号带入,从而进跳转到京东侧进行购药的模式。合作方在自己的页面处理完业务,当用户想要购药时,通过京东侧提供的页面链接,将处方单号(也可以是其他单号,比如保险理赔单号)通过链接带入购药页面,京东侧通过处方单号查询合作方的处方信息(或保险理赔信息等),从而渲染购药结算页面,并且下单满足用户购药的需求。提单后,京东侧会将单据的状态信息,拆单信息,物流信息,发票信息等通过合作方提供的接口地址回传给合作方,从而形成整个一键购药模式的闭环。
#
接入流程说明:
- 合作方通过接口查询与接收京东侧通知获取到药品相关信息,用于生成合作方的处方,处方上的药品需要是京东侧提供的药品;生成处方后通过京东侧提供的url地址从合作方页面跳转到京东大药房页面走购药流程,并接收后续的数据同步。
- 图中的接口需要双方业务沟通具体对接细节决定是否使用,例如业务中不涉及到拆单,则不需要接入拆单通知,不关心提单失败情况,则不需要接入提单失败通知等。
- 调用京东侧统一走宙斯使用标准接口,通知或者查询合作方的接口需要合作方提供URL地址,京东侧会在各个节点调用合作方的接口进行数据同步。
#
一。 【京东】查询【合作方】处方单详情接口入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号或者能够获取购药下单信息的单号(比如:理赔案件号) |
出参参数:
参数名 | 类型 | 描述 |
---|---|---|
prescriptionId | String | 处方单号或者能够获取购药下单信息的单号 |
isEffective | Boolean | 处方是否有效 |
createDate | String | 处方开具时间 |
effectivePeriodEnd | String | 有效期结束时间 |
diseaseDiagnosis | String | 疾病诊断 |
drugList | List\<PrescriptionDrug> | 药品清单 |
patientInfo | PatientInfo | 患者信息 |
picUrl | String | 处方图片地址 |
source | Integer | 处方单来源 1.处方 2.保险 默认为1 |
insurance | InsuranceInfo | 保险信息 |
userAddress | UserAddress | 用户信息地址(需要覆盖地址时) |
PrescriptionDrug
参数名 | 类型 | 描述 |
---|---|---|
drugCode | String | 药品编码 |
drugSkuId | String | 药品skuId |
drugAmount | Integer | 药品数量 |
drugUsage | String | 药品用法 |
drugDosage | String | 药品用量 |
drugDosageUnit | String | 药品用量单位 |
drugFrequency | String | 用药频次 |
drugDays | Integer | 用药天数 |
commonName | String | 通用名 |
spec | String | 规格 |
authorizedNo | String | 批准文号 |
dosageFrom | String | 剂型 |
remark | String | 备注 |
PatientInfo
参数名 | 类型 | 描述 |
---|---|---|
username | String | 用户姓名 |
gender | Integer | 性别;0=女,1=男 |
weight | String | 患者体重 |
age | String | 患者年龄 |
birthday | String | 患者生日,格式为 '1999-09-21' |
allergicHistory | String | 患者过敏史 |
medicalHistory | String | 患者既往病史 |
bearStatus | Integer | 生育状态;0=无,1=备孕期,2=怀孕期,3=哺乳期 |
idCardType | Integer | 证件类型,1.身份证 |
patientIdCard | String | 患者身份证号,需要根据加密方式进行加密返回 |
patientPhone | String | 患者手机号(用于通知用药人处方审核消息),需要根据加密方式进行加密返回 |
InsuranceInfo
参数名 | 类型 | 描述 |
---|---|---|
onInsuranceDate | String | 出险日期,格式为 '1999-09-21' |
validPeriod | String | 购买有效期,格式为 '1999-09-21' |
effectiveYear | String | 生效年度 |
guaranteePlan | String | 保障计划 |
personalPolicyNo | String | 个人保单号 |
isEffective | Boolean | 理赔案件号是否有效 |
effectivePeriodEnd | String | 理赔案件号有效期结束时间 |
provinceId | String | 省ID |
provinceName | String | 省名称 |
cityId | String | 市ID |
cityName | String | 市名称 |
money | String | 理赔金额,请传入整数,分为单位,比如1013 代表10元1角3分 |
UserAddress
参数名 | 类型 | 描述 |
---|---|---|
addressFull | String | 全地址,加密 示例:北京是北京市经济开发区旧宫镇京东总部2号楼西门 |
addressDetail | String | 详细地址,加密 示例:总部2号楼西门 |
name | String | 收货人姓名,加密 |
phone | String | 收货人手机号,加密 |
longitude | String | 经度 |
latitude | Boolean | 纬度 |
data中返回实体示例: {"response":{"code":"0000","data":{"prescriptionId":"b6b4f082129b1e73d2fffbc84bf9ca5d1b3d307cb6e5648cb264a51ff7e34659","isEffective":true,"diseaseDiagnosis":"肺痛","drugList":[{"authorizedNo":"H20190042","commonName":"帕博利珠单抗注射液","dosageFrom":"针剂","drugAmount":2,"drugCode":"1018","drugDosage":"120mg","drugFrequency":"3周一次","drugUsage":"5","remark":"EGFR-和ALK-局部晚期一线治疗","spec":"100mg/4ml"}],"patientInfo":{"bearStatus":0,"birthday":"1966-04-23","gender":1,"idCardType":1,"patientIdCard":"e25bdcd2aad627646eded77ea850637a9707b55366055397c39b9f1d67f0e14b","patientPhone":"8de08d2f004421d4d5e4a06393626aaf","username":"张三"},"picUrl":"https://??.jpg","source":2,"insurance":{"cityId":"320200","cityName":"无锡市","effectiveYear":"2015","guaranteePlan":"医惠锡城2015","money":"333333.0","personalPolicyNo":"0001772987123321","provinceId":"320000","provinceName":"江苏省","validPeriod":"2018-02-08"}},"uuid":"ce7c28ec-1a37-47bf-aec5-9e2fb42b13f5"}}
#
二。 【京东】下单成功购药单号同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
orderId | String | Y | 购药单号 |
createDate | String | Y | 下单时间 |
shipmentType | Integer | Y | 1.商家自送 |
orderStatus | String | Y | 订单状态 |
invoice | InvoiceInfo | N | 发票信息 |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
InvoiceInfo
参数名 | 类型 | 描述 |
---|---|---|
invoiceDate | String | 发票日期 ,格式为 '1999-09-21' |
invoiceCode | String | 发票代码 |
invoiceNo | String | 发票号码 |
invoiceType | Integer | 发票类型 1 电子,2 纸质 |
invoicePic | String | 发票图片 |
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}
#
三。 【京东】下单失败原因同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
failMsg | String | Y | 失败原因描述 |
failCode | String | Y | 失败原因CODE码 |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}
#
四。 【京东】购药单拆单同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
orderId | String | Y | 购药单单号 |
subOrderIdList | List\<String> | Y | 拆单子单id集合 |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}
#
五。 【京东】购药单状态变更同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
orderId | String | Y | 购药单单号 |
subOrderId | String | N | 购药单子单号 |
orderStatus | String | Y | 订单状态 |
operator | String | N | 操作人 |
operateDesc | String | N | 操作说明 |
operateTime | String | N | 操时间 '2020-11-19 20:00:30' |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
orderStatu枚举值 NEEDPAY("NEEDPAY", "待支付"), PAYED("PAYED", "已支付"), AUDIT_PASS("AUDIT_PASS", "审核通过"), AUDIT_UNPASS("AUDIT_UNPASS", "审核不通过"), ORDER_FINISH("ORDER_FINISH", "京东订单完成"), CANCELED("CANCELED", "订单已取消");
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}
#
六。【京东】购药单物流信息同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
orderId | String | Y | 购药单号 |
subOrderId | String | N | 购药单子单号 |
deliverList | List\<DeliverInfo> | Y | 订单物流信息 |
msgId | String | Y | 唯一消息ID,32位 |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
DeliverInfo
参数名 | 类型 | 描述 |
---|---|---|
deliverNo | String | 快递单号 |
deliverName | String | 物流公司名称 |
heading | String | 物流公司头像 |
deliverPhone | String | 物流公司官方客服电话 |
time | String | 物流时间 |
txtStatus | String | 物流状态文本描述,例如:已发货、已揽收 |
description | String | 物流详情描述,例如:已到*营业部 |
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}
#
七。【京东】购药发票同步【合作方】入参参数:
参数名 | 类型 | 是否必传 | 描述 |
---|---|---|---|
prescriptionId | String | Y | 处方单号 |
orderId | String | Y | 购药单号 |
subOrderId | String | N | 购药单子单号 |
invoice | InvoiceInfo | Y | 发票信息 |
sourceTimestamp | Long | Y | 源头消息处理时间戳 |
InvoiceInfo
参数名 | 类型 | 描述 |
---|---|---|
invoiceDate | String | 发票日期 ,格式为 '1999-09-21' |
invoiceCode | String | 发票代码 |
invoiceNo | String | 发票号码 |
invoiceType | Integer | 发票类型 1 电子,2 纸质 |
invoicePic | String | 发票图片 |
出参参数:
data中返回布尔类型值,此接口根据code=0000 && data=true 判定成功
{"response":{"code":"0000","errMsg":"","uuid":"1ded1b62-c60f-4e4f-9620-a78a16b8f284","data":true}}