江苏省工伤机构联网结算接口开发相关文档.md 28 KB

江苏省工伤机构联网结算接口开发手册

版本记录

版本号 更改条款及内容 修改日期 修改人
V0.5 建立文档 2020.7.30 马金龙
V2.0 支持电子社保卡扫码 2022.01.05 李艳强
V2.1 体检协议机构使用查询类接口(8101、8103、8106、8107、8109)更改为分页查询 2022.03.15 李万兴

目录


1 引言

1.1 文档编制目的

兵团项目协议机构接口开发手册主要表述了江苏人社工伤联网接口设计方案和对外交易描述。

本报告的阅读对象主要包括用户方相关人员、协议机构软件开发人员及相关的其他人员等。

1.2 背景

系统框架设计为工伤联网部署,工伤联网结算业务相对独立运行,各协议机构需要与中心端系统进行对接。

根据工伤保险业务的发展趋势,需要完成对工伤联网结算系统的改造,使之满足工伤联网精细化、科学化管理的业务要求。

本次系统建设过程将严格依循系统建设规范标准,建成后的系统功能符合相关部门的需求,并进行流程、效率方面的优化,确保系统可靠、稳定、高效运行。

  • 按照部版标准"核心平台四版"为基准建设;
  • 实现全省数据大集中,应用一卡通;

1.3 词汇表

词汇名称 词汇含义 备注
交易 工伤联网接口客户端向接口发出的一种请求消息,接口需要作出应答
工伤联网接口 人社部门向协议机构公开的服务,是人社部门和协议机构之间的一个接口系统,完成两者之间的信息传递,使协议机构具备工伤联网患者业务实时处理功能

参考资料

编号 参考资料 备注
1 《核心平台4.0工伤联网接口设计报告》

2 总体设计

系统架构

系统建设过程中将对已有的部分业务进行优化,涉及工伤联网的全部业务在协议机构自身系统进行操作,全部通过接口方式实现,无用户界面,输入输出均通过动态库方式完成。

网络环境:

协议机构通过专线与工伤联网接口应用连接。从安全可靠方面建议可采用不同运营商的双线路。

机器要求:

大型协议机构配置前置服务器,建议做成双机备份。小型协议机构建议采取集中托管模式。


3 系统接口设计

3.1 接口列表

按照服务内容不同,接口共分成4个大类、17个交易,接口编号为4位阿拉伯数字。接口分类框架和接口列表参见表:

表 1 接口列表

分类 交易编号 交易名称 描述
对账类 1320 总额对账
1321 明细对账
认证类 9001 签到
9002 签退
业务类 1101 读卡
2201 门诊/住院登记
2202 登记(挂号)撤销
2203 登记信息修改
2204 处方明细上报
2205 处方明细撤销
2206 费用预结算
2207 费用结算
2208 费用结算撤销
2209 冲正交易
8101 查询体检排班信息 体检协议机构使用
8102 更新体检排班信息 体检协议机构使用
8103 查询体检预约信息 体检协议机构使用
8104 体检登记 体检协议机构使用
8105 上传体检明细 体检协议机构使用
8106 查询体检结算信息 体检协议机构使用
8107 查询体检明细 体检协议机构使用
8108 体检结果确认 体检协议机构使用
8109 补刷卡登记查询 体检协议机构使用
2301 转诊转院申请信息上传
2302 转诊转院申请信息查询
2303 转诊转院申请信息撤销
下载类 9103 费用明细详细信息下载
9104 处方明细下载
1301 批量数据下载

3.2 用户接口函数

3.2.1 整体说明

本系统提供给医院的是一个动态库接口,无用户界面,输入输出均通过DLL完成。

程序文件名: JSSiInterface.dll

对外提供的接口函数:

初始化函数:

int Si_INIT(char * pErrMsg)

功能描述: 检查整个运行环境:包括网络环境、运行所需文件、参数等的检查

返回值: 成功:返回0 ;失败:返回 -1

交易函数:

int Si_Busi(char* inputdata, char* outputdata)

输入参数: inputdata
输出参数: outputdata char*
返回值: 成功 =0 失败 <0

输入、输出参数采用JSON格式的字符串,区分大小写。没有入参的交易也要上传"交易输入"input{}。处方明细上传需要用"费用明细列表"feedetail数据元标识代替"交易输入"input,格式为feedetail[{},{}]。

3.2.2 接口输入、输出报文格式定义

入参格式: inputdata

表 2 交易输入参数定义

序号 数据元标识 数据元名称 类型 长度 代码标识 是否必填 备注
1 infno 交易编号 字符型 4 Y 交易编号详见接口列表
2 msgid 发送方报文ID 字符型 30 Y 协议机构编号(6)+时间(14)+ 顺序号(4)
时间格式:yyyyMMddHHmmss
不可重复
3 recer_sys_code 接收方系统代码 字符型 10 Y 用于多套系统接入,区分不同系统使用。一期建设默认传入"JSYTH"
6 infver 接口版本号 字符型 6 Y 例如:"V1.0",版本号由社保下发接口开发手册版本号为准。
7 opter_type 经办人类别 字符型 3 Y Y 1-经办人;2-自助终端;3-移动终端
8 opter 经办人 字符型 30 Y 按要求传入经办人/终端编号
9 opter_name 经办人姓名 字符型 50 Y 按要求传入经办人姓名/终端名称
10 inf_time 交易时间 日期时间型 20 Y 时间格式:yyyyMMddHHmmss
11 fixmedins_code 协议机构编号 字符型 12 Y
12 sign_no 签到流水号 字符型 30 Y 通过签到【9001】交易获取,除签到交易外不可为空。
13 idfi_mode 识别方式 字符型 3 Y Y 1-实体社保卡;2-电子凭证
14 input 交易输入 字符型 40000 Y 处方明细上报2204交易,用feedetail数据元标识代替input
上传体检明细8105交易,用tjfeedetail数据元标识代替input
15 qrcode_info 电子社保卡二维码 字符型 30 N 当识别方式为"2"时,必填

交易格式定义如下:

{
  "infno": "1101",
  "msgid": "H00001202007301235391234",
  "recer_sys_code": "JSYTH",
  "infver": "V1.0",
  "opter_type": "1",
  "opter": "01",
  "opter_name": "张三",
  "inf_time": "20200730123539",
  "fixmedins_code": "H00001",
  "fixmedins_name": "第一人民医院",
  "sign_no": "79faf82271944fe38c4f1d99be71bc9c",
  "idfi_mode": "1",
  "input": {
    "data_1": {
      "string": "11",
      "number": 23
    },
    "data_2": [
      {
        "key": "value1"
      },
      {
        "key": "value2"
      }
    ]
  }
}

注: 节点data_1(节点标识符(data_1)在各交易中声明)为单行数据示例,节点data_2(节点标识符(data_2)在各交易中声明)为多行数据示例。

出参格式: outputdata char*

表 3 交易输出参数定义

序号 数据元标识 数据元名称 类型 长度 代码标识 是否非空 备注
1 infcode 交易状态码 数值型 4 Y 详见下节
2 inf_refmsgid 接收方报文ID 字符型 30 Y 接收方返回,接收方系统区划代码(6)+时间(14)+流水号(10)
时间格式:yyyyMMddHHmmss
3 refmsg_time 接收报文时间 字符型 17 Y 格式:yyyyMMddHHmmssSSS
4 respond_time 响应报文时间 字符型 17 Y 格式:yyyyMMddHHmmssSSS
7 err_msg 错误信息 字符型 200 交易失败状态下,业务返回的错误信息
warn_msg 提示信息 字符型 200 交易成功状态下,业务返回的提示信息
8 output 交易输出 字符型 40000

交易格式定义如下:

{
  "infcode": "0",
  "inf_refmsgid": "320101202007301235414321",
  "recer_sys_code": "MBS_LOCAL",
  "refmsg_time": "20200730123541",
  "respond_time": "20200730123539",
  "err_msg": "",
  "warn_msg": "",
  "sign_no": "79faf82271944fe38c4f1d99be71bc9c",
  "output": {
    "data_1": {
      "string": "11",
      "number": 23
    },
    "data_2": [
      {
        "key": "value1"
      },
      {
        "key": "value2"
      }
    ]
  }
}

注: 节点data_1(节点标识符(data_1)在各交易中声明)为单行数据示例,节点data_2(节点标识符(data_2)在各交易中声明)为多行数据示例。

3.2.3 交易状态码说明

交易状态码(infcode)为2位编码,具体规格如下表:

表 4 报文状态说明

序号 STATUS值 值说明 备注
1 0 成功
2 -1 失败

4 接口交易详细设计

此部分主要对工伤联网接口交易的各具体业务作详细说明。

4.1 工伤联网对账

4.1.1 交易功能描述

该交易目前主要完成对帐业务。

4.1.2 交易设计

4.1.2.1 总额对帐(1320)
4.1.2.1.1 交易说明
  1. HIS系统发起对帐请求,中心返回费用信息。
  2. 如果各项费用中某一项与HIS方费用不一致,需要进行费用明细下载后逐条比对。
  3. 可以通过参数"是否包含退费记录"控制是否统计退费记录(一正一负两条)。
  4. 输入参数的对账结束时间与对账开始时间之间的差不能超过31天。
  5. 可以传入对帐开始时间和对帐结束时间,也可以单独传入签到流水号,时间段与签到流水号不应同时传入。
  6. 输入为单行数据,输出为单行数据。
4.1.2.1.2 输入

表 5 输入(节点标识:input)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 stmt_begindate 对帐开始时间 字符型 8 Y
2 stmt_enddate 对帐结束时间 字符型 8 Y
3 sign_no 签到流水号 字符型 30
4 refd_setl_flag 是否包含退费记录 字符型 3 Y 默认是
5 opter 医院经办人 字符型 30
4.1.2.1.3 输出

表 6 输出(节点标识:output)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否非空 说明
1 medfee_sumamt 医疗费总额 数值型 16,2 Y
2 hifp_pay 统筹支付金额 数值型 16,2 Y
3 psn_cash_pay 现金支付总额 数值型 16,2 Y
4.1.2.1.4 本交易对应二级代码
序号 类别名称 代码值 代码名称 备注
1 是否包含退费记录 1
2 是否包含退费记录 0
4.1.2.2 明细对帐(1321)
4.1.2.2.1 交易说明
  1. HIS系统发起明细对帐请求,中心返回指定查询条件的处方明细的合计信息。
  2. 如果各项费用中某一项与HIS方费用不一致,需要进行处方明细下载后逐条比对。
  3. 中心系统只统计有效的处方明细信息, 有效处方明细指正常参与结算的处方。
  4. 输入为单行数据,输出为单行数据。
4.1.2.2.2 输入

表 7 输入(节点标识:input)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y
2 medrcdno 单据号 字符型 20
3 opter 医院经办人 字符型 30
4.1.2.2.3 输出

表 8 输出(节点标识:output)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否非空 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y
2 medrcdno 单据号 字符型 20 Y
3 medfee_sumamt 医疗费总额 数值型 16,2 Y
4 hifp_pay 统筹支付金额 数值型 16,2 Y
5 psn_cash_pay 现金支付总额 数值型 16,2 Y

4.2 认证类

4.2.1 交易功能描述

说明:认证交易开发商直接调用,不需要传入入参。

4.2.2 交易设计

4.2.2.1 签到(9001)
4.2.2.1.1 交易说明
  1. 进行业务类交易操作前必须进行签到,只有传入有效的业务周期号才能进行业务类操作。
  2. 同一个操作员可在不同的设备签到。
  3. 不同操作员可在同一个设备签到。
  4. 重复签到或在不同设备签到时返回原业务周期号。
  5. 无输入,输出为单行数据。
4.2.2.1.2 输入

输入参数举例:

{
  "infno": "9001",
  "msgid": "H00001202007301235391234",
  "recer_sys_code": "JSYTH",
  "infver": "V1.0",
  "opter_type": "1",
  "opter": "01",
  "opter_name": "张三",
  "inf_time": "20200730123539",
  "fixmedins_code": "H00001",
  "fixmedins_name": "第一人民医院",
  "sign_no": "",
  "input": {}
}
4.2.2.1.3 输出

表 9 输出(节点标识:output)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否非空 说明
1 sign_time 签到时间 日期时间型 Y yyyyMMddHHmmss
2 sign_no 签到流水号 字符型 30 Y 中心根据操作员和中心时间,生成
4.2.2.2 签退(9002)
4.2.2.2.1 交易说明

可以在任何机器签退,签退时撤销该操作员所有设备的签到。

4.2.2.2.2 输入

4.2.2.2.3 输出

4.3 业务类

4.3.1 交易功能描述

该类交易主要完成参保患者挂号登记、处方上报、预结算、结算及撤销结算等各项业务处理。

在事务提交方面,由工伤联网接口自动控制事务。如果客户端需要取消事务,可以发起撤销交易请求。

4.3.2 交易设计

4.3.2.1 读卡(1101)
4.3.2.1.1 交易说明
  1. 通过此交易获取人员信息。
  2. 无输入,输出为单行数据。
  3. 第十二位出参"工伤诊断结论"信息格式:^工伤医疗费资格审核信息ID|受伤部位信息描述|就诊类型^工伤医疗费资格审核信息ID|受伤部位信息描述|就诊类型。协议机构发起门诊/住院登记交易时需要根据实际情况选择一个工伤医疗费资格审核信息ID作为第十二位入参。就诊类型为中文,显示该人员可以开展肢体伤残、职业病、康复中那类就诊。
4.3.2.1.2 输入

4.3.2.1.3 输出

表 10 输出-基本信息(节点标识:output)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否非空 说明
1 psn_no 个人唯一识别码 数值型 16 Y
2 emp_no 单位唯一识别码 数值型 16 Y
3 emp_name 单位名称 字符型 200 Y
4 certno 证件号码 字符型 50 Y
5 psn_name 姓名 字符型 50 Y
6 gend 性别 字符型 6 Y Y
7 age 年龄 数值型 4,1 Y
8 psn_type 工伤人员类别 字符型 3 Y
9 insu_admdvs 统筹区号 字符型 16
10 inhosp_stas 在院状态 字符型 3 Y Y
11 trt_chk_rslt 待遇不享受原因 字符型 500
12 exam_ccls 工伤诊断结论 字符型 2000 Y
13 certificate_type 证件类型 字符型 3 Y
14 birthday 出生日期 数值型 8 yyyyMMdd
4.3.2.1.4 本交易对应二级代码
序号 类别名称 代码值 代码名称 备注
1 性别 1
2 性别 2
3 性别 9 未说明性别
4 工伤人员类别 01 新工伤
5 工伤人员类别 02 老工伤
6 工伤人员类别 03 建筑业
7 工伤人员类别 04 退休职业病
8 工伤人员类别 05 机关事业老工伤纳入
9 工伤人员类别 06 机关事业老工伤确认
10 工伤人员类别 07 伤残军人
11 工伤人员类别 08 非全日制和多单位就业
12 工伤人员类别 09 8023人员
13 工伤人员类别 10 包干老工伤
14 工伤人员类别 11 超龄就业人员
15 工伤人员类别 12 实习生
16 工伤人员类别 13 离职职业病
17 工伤人员类别 14 见习生
18 工伤人员类别 15 新业态人员
19 在院状态 0 未在院
20 在院状态 1 工伤在院
21 在院状态 2 医疗在院
22 证件类型 01 居民身份证
23 证件类型 04 港澳居民来往内地通行证
24 证件类型 06 台湾居民来往大陆通行证
25 证件类型 07 外国人永久居留身份证
26 证件类型 08 外国人护照
27 证件类型 16 港澳台居民居住证
28 证件类型 90 社会保障卡
29 证件类型 99 其他
4.3.2.2 门诊/住院登记(2201)
4.3.2.2.1 交易说明
  1. 门诊/住院流水号应保持院内唯一,不得重复,包括不能与老系统历史数据重复。取消挂号或无费退院后重新办理的,应更换门诊/住院流水号。冲正处理后,再次挂号或住院登记可使用原门诊/住院流水号。
  2. 中心校验医疗类别、人员身份的对应关系。
  3. 输入为单行数据,无输出。
4.3.2.2.2 输入

表 11 输入(节点标识:input)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y 唯一
2 med_type 医疗类别 字符型 3 Y Y
3 adm_time 门诊/住院入院时间 字符型 Y 按照日期格式YYYYMMDDHH24MISS
4 adm_diag_dscr 诊断疾病编码 字符型 20 Y ICD10病种库,入院只能上传一个病种编码
5 wardarea_name 病区名称 字符型 50
6 adm_dept_codg 科室编码 字符型 50 Y
7 adm_bed 床位号 字符型 20 院内真实床位号
8 atddr_no 医生编码 字符型 50 Y
9 tel 病人联系电话 字符型 20
10 psn_no 个人唯一识别码 数值型 16 Y
11 ipt_no 住院号 字符型 50 住院类交易住院号不能为空
12 qualification_id 工伤医疗费资格审核信息ID 字符型 16 Y 通过读卡交易出参"工伤诊断结论"中获取
4.3.2.2.3 输出

4.3.2.2.4 本交易对应二级代码
序号 类别名称 代码值 代码名称 备注
1 医疗类别 11 门诊肢体残
2 医疗类别 12 门诊职业病
3 医疗类别 13 门诊康复
4 医疗类别 21 住院肢体残
5 医疗类别 22 住院职业病
6 医疗类别 23 住院康复
4.3.2.3 登记(挂号)撤销(2202)
4.3.2.3.1 交易说明
  1. 要撤销的门诊/住院号没有发生费用可以进行登记撤销。如果已发生费用且没有费用结算的,自动将已上传处方作废处理并撤销登记(挂号)。如果已发生费用且已费用结算,则不允许撤销登记(挂号),需要先进行费用结算撤销。
  2. 输入为单行数据,无输出。
4.3.2.3.2 输入

表 12 输入(节点标识:input)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y 同登记时的门诊/住院流水号
4.3.2.3.3 输出

4.3.2.4 登记信息修改(2203)
4.3.2.4.1 交易说明
  1. 用于在院期间修改医疗类别、疾病、病区、科室等信息。
  2. 输入为单行数据,无输出。
  3. 前三位入参不可以修改。第四位后的入参只针对非空信息修改中心就诊登记数据。
4.3.2.4.2 输入

表 13 输入(节点标识:input)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y 同登记时的门诊/住院流水号
2 adm_time 门诊/住院入院时间 字符型 Y 按照日期格式YYYYMMDDHH24MISS
3 psn_no 个人唯一识别码 数值型 16 Y
4 med_type 医疗类别 字符型 3 Y
5 adm_diag_dscr 诊断疾病编码 字符型 20 ICD10病种库
6 wardarea_name 病区名称 字符型 50
7 adm_dept_codg 科室编码 字符型 50
8 adm_bed 床位号 字符型 20 院内唯一流水
9 atddr_no 医生编码 字符型 50
10 tel 病人联系电话 字符型 20
11 ipt_no 住院号 字符型 50 住院类交易住院号不能为空
4.3.2.4.3 输出

4.3.2.4.4 本交易对应二级代码
序号 类别名称 代码值 代码名称 备注
1 医疗类别 11 门诊肢体残
2 医疗类别 12 门诊职业病
3 医疗类别 13 门诊康复
4 医疗类别 21 住院肢体残
5 医疗类别 22 住院职业病
6 医疗类别 23 住院康复
4.3.2.5 处方明细上报(2204)
4.3.2.5.1 交易说明
  1. 允许同时上传多条处方明细。
  2. 协议机构门诊随时上传处方,住院可以在摆药时上传,也可以每天晚上批量上传。
  3. 按处方时间顺序上传,同一药品、项目、材料正数在前,负数在后。
  4. 同一个包内应只包含同一次住院的费用明细,不同住院的明细分别打包上传。
  5. 第九位入参总金额为单条处方数据的费用总额,等于第七位入参单价乘以第八位入参数量后四舍五入到小数点后两位。
  6. 第十二位入参是否按最小计量单位,如果为是表示该处方按最小计量单位收费。中心进行限价控制时会使用整装的限价除以包装数量后的最小计量限价进行计算。
  7. 单次交易最多允许上传50条处方。
  8. 输入为多行数据,输出与输入行数一一对应。
4.3.2.5.2 输入

表 14 输入-费用明细列表(节点标识:feedetail)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否必填 说明
1 ipt_otp_no 门诊/住院流水号 字符型 20 Y 同登记时的门诊/住院流水号
2 list_type 三大目录类别 字符型 3 Y Y
3 rxno 处方号 字符型 20 Y
4 feedetl_sn 处方流水号 字符型 30 Y 单次就诊内唯一
5 fee_ocur_time 处方日期 字符型 Y 按照日期格式YYYYMMDDHH24MISS
6 med_list_codg 收费项目中心编码 字符型 50 Y
7 pric 单价 数值型 16,4 Y
8 cnt 数量 数值型 16,4 Y
9 umamt 总金额 数值型 16,2 Y 单条处方的总金额等于单价*数量后四舍五入两位。
10 bilg_dr_codg 医生编码 字符型 50 Y
11 bilg_dept_codg 科室编码 字符型 50 Y
12 min_unit 是否最小计量单位 字符型 3 Y 空默认为否
13 allSelfFlag 全额自费标志 字符型 3 Y 空默认为否
4.3.2.5.3 输出

表 15 输出(节点标识:output)

序号 参数代码 参数名称 参数类型 参数长度 代码标识 是否非空 说明
1 rxno 处方号 字符型 20 Y
2 feedetl_sn 处方流水号 字符型 30 单次就诊内唯一
fee_ocur_time 处方日期 字符型 Y 按照日期格式YYYYMMDDHH24MISS
3 med_list_codg 收费项目中心编码 字符型 20 Y
4 umamt 总金额 数值型 16,2 Y
5 ownpay_amt 自费金额 数值型 16,2 Y 丙类费用
6 alwpay_amt 超限价金额 数值型 16,2 超上限部分
7 pric_uplmt_amt 支付上限 数值型 16,2
8 chrgitm_lv 收费项目等级 字符型 3 Y
9 memo 说明信息 字符型 1000
4.3.2.5.4 本交易对应二级代码
序号 类别名称 代码值 代码名称 备注
1 三大目录类别 1 药品
2 三大目录类别 2 诊疗项目
3 三大目录类别 3 材料
4 是否最小计量单位 0
5 是否最小计量单位 1
6 收费项目等级 1 甲类
7 收费项目等级 2 乙类
8 收费项目等级 3 丙类
9 全额自费标志 0
10 全额自费标志 1

注: 由于文档内容较长,我将分步进行优化。这是第一部分的优化,包含了文档的基本结构、目录、引言、总体设计、系统接口设计和部分业务类交易的详细设计。

让我继续优化文档的剩余部分...