完整word版医保HIS接口规范1Word文档格式.docx
《完整word版医保HIS接口规范1Word文档格式.docx》由会员分享,可在线阅读,更多相关《完整word版医保HIS接口规范1Word文档格式.docx(66页珍藏版)》请在冰豆网上搜索。
\/;
2.2.接口COM说明
组件库提供交易的COM组件属性如下:
属性
值
AppID
TypeLibraryID
ProgramID
Railway_insure。
InsureInterface
COMClassName
COMClassID
InterfaceType
DualInterface
InterfaceName
InterfaceID
2.3.交易接口函数描述
Init
✓原型定义:
Init(ByRefintAppCodeAsLong,
ByRefstrAppMsgAsString)
参数名称
参数含义
参数类型
参数类别
参数说明
intAppCode
交易标志
long
出口参数
小于0均为失败。
此值数据类型是整数
strAppMsg
交易信息
String
错误信息描述。
intAppCode小于0时存放错误描述,其他intAppCode不用关心该参数内容。
✓函数说明:
初始化函数,HIS应用启动时调用,进行医保交易处理初始化,本交易调用成功后才能进行其他交易处理.
Destroy
✓原型定义:
Destroy()
资源释放函数,在HIS应用退出时调用.
Trade
Trade(
ByvalstrTradeIdAsString,‘交易编号
ByvalstrControlAsString,‘交易控制
ByvalstrInAsString,‘交易输入
ByrefstrSerialIdAsstring,‘交易流水号
ByrefstrOutAsstring,‘交易输出
ByrefintAppCodeAslong,‘交易标志
ByrefstrAppMsgAsstring)‘交易信息
strTradeId
交易编号
入口参数
具体的交易代码见〖交易列表〗
strControl
交易控制
字符串方式,组织方式见业务说明
strIn
交易输入
strSerialId
交易流水号
唯一标识一次交易,VARCHAR(20)
strOut
交易输出
字符串方式,组织方式见业务说明
此值数据类型是整数,范围为—2147483648to+2147483647
intAppCode小于0时存放错误描述,其他intAppCode不用关心该参数内容.
交易主函数,完成所有医疗业务的实际处理.
由于交易调用远程方法,并且可能存在用户交互界面,因此建议所有交易不要纳入HIS系统事务管理。
在交易接口函数定义中,传递的参数都是字符串。
但是在交易详细说明中,数据类型都是逻辑类型,常用类型有三种:
string,number,datetime,下面的表格描述了交易接口进行类型转换的限制和说明。
数据类型
空字符串
格式不合法
其它说明
string
视同空串
无
无特别说明标注的长度为最大长度
number
视同0
返回错误
无特别说明标注的长度为最大长度(小数尾数同)
datetime
视同空值
足19位长,格式如下:
YYYY-MM-DDhh24:
mm:
ss
date
YYYY—MM-DD00:
00:
00
接口调用示例:
VB调用
DimXYobjectAsObject'
定义存放引用对象的变量。
SetXYobject=CreateObject("
Railway_insure.InsureInterface”)
'
检查连接是否建立
IfXYobjectIsNothingThen
MsgBox"
对象为空!
”
EndIf
dimstrTradeIdAsString,‘交易编号
dimstrControlAsString,‘交易控制
dimstrInAsString,‘交易输入
dimstrSerialIdAsstring,‘交易流水号
dimstrOutAsstring,‘交易输出
dimintAppCodeAslong,‘交易标志
dimstrAppMsgAsstring)‘交易信息
strTradeId="
01”
HIS业务处理
CallXYobject.Trade(strTradeId,strControl,strIn,strSerialId,strOut,intAppCode,strAppMsg)
’判断返回信息
IfAppcode<
0Then
MsgBoxAppmsg
delphi调用
注意:
delphi调用时先要usesComObj;
否则不能引用oleobject.
Var
XYobject:
Variant;
//定义存放引用对象的变量。
BusinessID:
String
Ctrl:
Data:
Businesssequence:
Businessvalidate:
Output:
Appcode:
integer
Appmsg:
String;
Begin
try
=CreateOleObject(‘Railway_insure。
InsureInterface'
);
BusinessID:
=’01'
;
XYobject。
Trade(strTradeId,strControl,strIn,strSerialId,strOut,intAppCode,strAppMsg)
//返回结果判断,HIS内部处理
finally
end;
End;
pb调用
oleobjectXYobject
stringstrTradeId‘交易编号
stringstrControl‘交易控制
stringstrIn‘交易输入
stringstrSerialId‘交易流水号
stringstrOut‘交易输出
longintAppCode,‘交易标志
stringstrAppMsg‘交易信息
XYobject=createoleobject
result=XYobject。
ConnectToNewObject("
Railway_insure.InsureInterface"
)
ifresult〈>
0then
messagebox("
error"
,"
failtoconnect"
return
endif
BusinessID=”01”
Trade(strTradeId,strControl,strIn,refstrSerialId,refstrOut,refintAppCode,refstrAppMsg)
//返回结果判断,HIS内部处理
2.4.交易类型和调用流程
1、查询类交易:
包括一般查询交易,例如:
身份确认;
2、处理类交易:
包括门诊结算(退单/作废)、入院办理(回退)、出院结算(退单/取消结算)六个交易,一次完整的处理类交易可以有两种方式:
1)只有处理流程,符合情况是处理流程执行失败(接口返回错误代码及信息);
2)处理流程+取消流程,符合情况是处理流程执行成功,HIS处理失败,调用取消流程。
调用交易的处理流程
interface
_
call
调用处理流程
是否成功
交易失败
HIS
进行处理
6
、
调用失败
2
调用成功
处理是否成
功
调用交易的取消流程
4
处理失败
5
处理成功
3
处理完毕
1
处理流程处理完毕
交易成功
图1-1处理类交易调用流程
2.5.处理交易的不同宕机点和相应的处理
1、处理流程处理完毕
2、调用成功
3、HIS处理完毕
4、处理失败
5、处理成功
在上面5个点系统宕机,系统重新启动后,都没有办法直接决定调用【取消流程】还是【确认流程】;
对于这种情况,应及时通知相关部门(例如:
医保中心),再根据这些交易出的相关信息,查询HIS系统的情况,决定是否调用【取消流程】。
不同的业务交易,判断不同。
门诊结算:
如果HIS系统没有相应的结算信息,则应该调用取消流程。
门诊结算回退:
如果HIS系统没有相应的结算信息,或者有相应的退单信息,则通知医保中心取消相关记录。
2.6.交易列表
序号
交易代码
交易名称
交易类型
广域网支持
备注
1.
01
身份识别
查询类交易
√
患者登记确认
2.
10
门诊费用分解
处理类交易
3.
11
门诊结算
4.
12
门诊结算回退(取消结算)
5.
21
入院办理
6.
22
入院办理回退
7.
23
入院办理信息修改
8.
25
出院办理
9.
26
出院办理回退
10.
31
住院费用明细写入(住院)
11.
42
住院费用明细写入(结算)
12.
51
住院费用分解
13.
52
住院结算
14.
53
住院结算退单
15.
91
服务项目目录获取(三大目录)
16.
94
医院需审核项目上传
HIS基本业务调用说明:
(1)门诊挂号:
01身份识别;
(2)门诊结算:
01身份识别>
〉10门诊费用分解〉>
11门诊结算;
(3)门诊结算取消:
>
12门诊结算回退(取消结算;
(4)入院办理:
01身份识别〉>
21入院办理;
(5)入院办理回退:
〉22入院办理回退;
(6)入院办理信息修改:
23入院办理信息修改;
(7)出院办理:
25出院办理;
(8)出院办理回退:
26出院办理回退;
(9)住院结算:
51住院费用分解>
〉52住院结算;
2.7.交易详细说明部分
01身份识别
处理描述
读卡,验证成功后返回个人医疗信息相关参数。
调用说明
本交易返回HIS参保人员个人信息、参保信息、帐户信息,由HIS完成错误信息控制和相关信息显示。
输入参数
输出参数
医疗保险号@@卡号@@身份证号码@@姓名@@性别@@出生日期@@年龄@@民族@@人员参保类别编码@@人员参保类别@@个人帐户余额@@本年帐户支出累计@@单位编码@@单位名称@@地址@@联系电话@@邮政编码@@户口所在地@@卡状态@@是否在院
小于0表示失败
参数详细说明:
交易控制:
代码
名称
约束
类型
说明
交易输入:
交易输出:
医疗保险号
NOTNULL
VARCHAR(10)
卡号
VARCHAR(12)
IC卡号
身份证号码
VARCHAR(18)
姓名
VARCHAR(20)
性别
VARCHAR
(2)
1男2女
出生日期
DATE
yyyy—MM—dd
7
年龄
例如:
50岁
8
民族
9
人员参保类别编码
VARCHAR(3)
人员参保类别
个人帐户余额
NUMERIC(10,2)
本年帐户支出累计
NUMERIC(10,2)
13
单位编码
CHAR(8)
14
单位名称
VARCHAR(50)
15
地址
VARCHAR(40)
16
联系电话
17
邮政编码
CHAR(6)
18
户口所在地
19
卡状态
CHAR
(1)
0正常、1挂失、2消号、3未办理参保手续、4冻结、5卡不可用
20
是否在院
0否
1是
患者如果在院(在院未结算),门诊结算系统自动以自费患者处理
10门诊费用分解
读卡,身份确认,接口根据传入的明细信息进行明细分割和门诊预结算,明细分割和预结算成功后显示结算结果窗口,由操作员选择[分解]或[取消],如果选择[分解]则完成前置机结算处理,如果[取消],则返回HIS取消结算错误代码;
本交易完成后,完成费用分解。
收费员录入门诊费用明细信息,HIS系统组织明细相关参数调用门诊结算交易,等待费用分解返回结果信息;
如果返回成功则写入HIS数据库门诊结算详细信息,写入成功后调用确认流程,写入失败后调用取消流程;
详细处理流程见:
图1-1处理类交易调用流程;
由于本交易存在用户交互,建议HIS内部事务处理不要包含本交易调用。
医疗保险号@@明细条数@@费用总额@@发票号
记账流水号@@医保项目编码@@医院项目名称(诊疗项目)@@规格@@数量@@单价@@费用总额@@实收费用总额@@开单科室@@开单医生@@开单时间@@结算时间@@HIS项目编码\/。
。
\/
医疗机构代码@@门诊收费流水号@@结算日期@@医保号@@总金额@@起付线@@药品甲类金额@@药品乙类医保内金额@@药品乙类按比例自付金额@@自费药品金额@@普通治疗金额@@普通治疗自费金额@@特检特治医保内金额@@特检特治按比例自付金额@@服务医保内金额@@自费服务金额@@统筹基金支付金额@@大额保险支付@@慢性病自付补助支付金额@@普通门诊自付补助支付金额@@个人帐户支付@@普通门诊个人自付@@本次帐户余额@@慢性病标志@@慢性病病种编码@@医保内金额@@医保外金额@@医保内个人自付
参数详细说明:
CHAR(10)
医疗保险号码
明细条数
NUMBER(3)
费用总额
NUMBER(14,2)
发票号
交易输入:
记账流水号
项目记帐流水号
医保项目编码
见医保目录信息
医院项目名称
VARCHAR2(100)
规格
VARCHAR2(50)
数量
NUMBER(10,2)
本条明细数量
单价
NUMBER(14,4)
单价保留四位小数
NUMBER(14,4)
单条明细费用总额保留4位小数,结算时汇总费用总额保留2位小数
实收费用总额
实际收费额
开单科室
VARCHAR2(20)
开单医生
开单时间
医院收费员录入明细时间
结算时间
明细结算时间
HIS项目编码
交易输出:
医疗机构代码
VARCHAR2(8)
门诊收费流水号
VARCHAR2(16)
结算日期
医保号
总金额
起付线
药品甲类金额
乙类医保内金额
乙类按比例自付金额
自费药品金额
普通治疗金额
普通治疗自费金额
特检特治医保内金额
特检特治按比例自付金额
服务医保内金额
自费服务金额
统筹基金支付金额
大额保险支付
慢性病自付补助支付金额
普通门诊自付补助支付金额
个人帐户支付
普通门诊个人自付
本次帐户余额
24
慢性病标志
CHR
(1)
0否
慢性病病种编码
医保内金额
27
医保外金额
28
医保内个人自付
相关界面:
针对门诊慢性病患者就诊,需要选择的慢性病种类。
界面集中显示患者的参保信息、账户信息以及本次费用的分解计算结果信息,和相关的明细分解结果信息.
11门诊费用结算
读卡,身份确认,接口根据传入的明细信息进行明细分割和门诊预结算,明细分割和预结算成功后显示结算结果窗口,由操作员选择[确认]或[取消结算],如果选择[确认]则完成前置机结算处理,如果[取消结算],则返回HIS取消结算错误代码