武汉中心支付

整体流程图

建档

  1. 2.3接口(查档)
    其中 2.3 UserCode 参数从哪里来?(固定值 008632)

  2. 电子健康卡建档流程(在1,既没有用户信息,也没有卡)
    调用2.1接口 ,其中参数有以下

参数名 意义 是否已有
Name 姓名
Sex 性别
BirthDate 出生年月
CivilState 婚姻状况 是 (看是否需要做一层转换)
Telephone 电话
HomeAddress 住址 是(根据身份证上的得到)
IdCard 身份证
PatientType 病人类型(1:普通 15:110病人 16:临时病人) 1
Nationality 国籍 参考标准 156
NativePlace 籍贯 身份证获取
Ethnicity 民族 有,羊老板demo中这个参数传空串
HospitalId 医院id H00042
cardTypeId 卡类型,参考T_BASE_CARD_TYPE:(1:诊疗卡 2:ID卡 4:医保卡) 如果返回多张卡信息 根据这个优先级4:医保卡,8:电子健康卡 2:ID虚拟卡挂号
createUserId 操作用户ID 确认是平台账户id还是医院用户id?? 羊老板demo中没有这个参数
UserCode 用户编号(createUserId有值时UserCode不需要填,否则必填 008632

该接口调用后会返回:
patientId(病人id)、CardTypeId(卡类型)、CardNo(卡号)、PatientNo(病人编号)

  1. CREATE TABLE `tb_user_archive` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  3. `gmt_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  4. `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  5. `is_deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否删除',
  6. `hospital_id` int(11) NOT NULL COMMENT '体检中心',
  7. `id_card` varchar(32) DEFAULT NULL COMMENT '证件号',
  8. `name` varchar(50) NOT NULL COMMENT '姓名',
  9. `gender` tinyint(1) DEFAULT NULL COMMENT '1:男,2:女,9:未知',
  10. `birthday` date DEFAULT NULL COMMENT '出生日期',
  11. `mobile` varchar(15) DEFAULT NULL COMMENT '联系电话',
  12. `address` varchar(255) DEFAULT NULL COMMENT '地址',
  13. `patient_id` varchar(100) DEFAULT NULL COMMENT 'GUID',
  14. `patient_no` varchar(32) DEFAULT NULL COMMENT '病人编号',
  15. `card_type_id` tinyint(1) DEFAULT NULL COMMENT '卡类型,参考T_BASE_CARD_TYPE(1、诊疗卡 2、ID卡 4、医保卡)',
  16. `card_no` varchar(32) DEFAULT NULL COMMENT '卡号',
  17. PRIMARY KEY (`id`),
  18. KEY `idx_id_card` (`id_card`)
  19. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户医院档案';

挂号

定时任务同步排班信息(人数)

  • 3.5 获取排班信息
参数名 意义 是否已有
deptid 科室id 固定的
doctorid 医生id -1
startdate 查询开始日期 下单日期还是体检日期?
enddate 查询截止日期 下单日期还是体检日期?
fulldate 是否填充未排班的日期 true/false
withrealtimeinfo 是否返回实时号 true/false

返回排班集合arrangeinfos,随便获取一个有排期的元素得到rrangeid排班id

  • 3.7提交预约信息
参数名 意义 是否已有
arrangeid 排班id 前继接口中获取
appointtype 预约方式 1
cardno 卡号 前继接口中获取
cardtype 卡类型ID 前继接口中获取
patientname 病人姓名
sex 性别
bornday 生日
homeaddress 住址
hometelephone 家庭电话
idcardnumber 证件号码
staffcode 操作员代码 his分配
PreferenceId 优惠方案id 794F66DE-11F5-4580-A386-A54000AED1F6

返回appointid,record/money,record/treadserialno,record/payplatformid,record/paytype

  • 3.9 更新预约支付信息(指挂号)
参数名 意义 是否已有
appointid 预约ID 前继接口中获取
paytype 预约方式 前继接口中获取
money 支付金额 前继接口中获取
tradeserialno 交易流水号 前继接口中获取
payplatformid 调用支付接口的第三方平台id 前继接口中获取
staffcode 操作员代码 his分配
preferentialplanid 优惠方案ID 794F66DE-11F5-4580-A386-A54000AED1F6

返回
registerid:his登记id
serailnumber:his电脑流水号

redis key: 下单日期 + idcard
过期时间 3小时

默联支付

1.网关渠道配置

武汉中心医院有两个园区,tb_gateway_channel配置两条数据,商户信息新增两条。

2.支付方式

继续使用默联,需要对原有默联请求接口进行改造才能用,可能会影响到安附一。
使用新的支付方式,破坏了原有设计原则

等到默联支付文档出来看是否只有请求路径与HospCode不同的区别(挂号相关的参数先不管),是的话可以在原先的接口请求上改造。
可能需要新增一个支付子类42,这样改造的多,trade和网关支付映射要改。

3.查询每天订单

access_token:

4.默联回调订单支付状态

可以在原先回调接口上修改,把处方号等额外信息存入payload中(目前底层接口已支持)。

5.每天主动拉取订单支付状态

这个需要新实现,目前默联支付请求中没有实现此接口

体检软件订单导出

UnifyPayQueryServiceImpl#getPayRecordForMediator模型新增扩展字段用于导出 支付完成三方提供的信息。

序号 任务 开始时间 结束时间 负责人 人日 进度
1 体检人建档uic接口提供 2021-05-07 2021-05-07 石强海 1
2 体检人查档、建档open-adpaters三方对接 2021-05-07 2021-05-07 潘桃玲 0.5
3 open-adapters流水号查订单接口提供 2021-05-07 2021-05-07 潘桃玲 0.5
4 体检人建档主流程合并、开关 2021-05-08 2021-05-08 潘桃玲 0.25
5 体检人挂号获取排班3.5接口 2021-05-08 2021-05-08 石强海 0.5
6 体检人挂号提交预约信息3.7 2021-05-08 2021-05-08 潘桃玲 0.75
7 体检人挂号预约支付信息3.9,数据存储 2021-05-08 2021-05-08 石强海 0.5
8 体检人挂号合并下单流程 2021-05-10 2021-05-10 石强海 1
9 getPayRecordForMediator导出流水信息修改 2021-05-10 2021-05-10 潘桃玲 0.5
10 建档对接联调 2021-05-11 2021-05-12 潘桃玲、石强海 1.5
11 挂号对接联调 2021-05-12 2021-05-13 潘桃玲、石强海 1.5
12 下单主流程开发测试 2021-05-14 2021-05-14 潘桃玲、石强海 1
13 开通建档功能的医院下单测试 2021-05-17 2021-05-17 陈旭萍 1
14 未开通建档功能的医院下单测试 2021-05-18 2021-05-18 陈旭萍 1

支付排期(todo:等对方支付文档)

文档更新时间: 2021-05-11 11:40