重庆跨统筹区就医结算平台接口调用参考手册
4.2. 对于ID识别设备的操作(ID_ CALL)
ID识别就是操作医疗保险管理部门发行的各种医疗保险卡,IPAPI中提供 了详细的操作函数来支持这些设备的操作。具体采用的身份识别方式由本地医疗保险管理部门决定。IPAPI可以处理磁卡,IC卡,射频卡,条码卡,指纹仪器,虹膜识别,等多种身份识别方式。 函数定义
string ID_ CALL(string func_id,
string instr);
func_id为具体的功能子号,instr为调用参数,返回值也是一个串,其中func_id不同来决定是调用的何种功能。init:初始化环境,exit:退出环境,havepass:读卡,并判断是否有密码,chkpass:验证密码,get:从设备中取得数据,put: 向设备发送指令。其中之一 get,put命令根据设备的不同,有不同的功能。以下对每个功能调用进行详细的说明。
? init
功能说明: 初始化身份识别设备驱动程序
参数说明: func_id=\为设备参数,设备不同意义不同。 返回值说明:\表示成功,\表示失败
备注: 必须先通过set_SYS_CFG 设置设备驱动程序,参数名称为\
电话(传真):028-85217600
成都莲合创想科技有限公司
重庆跨统筹区就医结算平台接口调用参考手册
? exit
功能说明: 卸除身份识别设备驱动程序 参数说明: func_id=\无意义。 返回值说明: \表示成功,\表示失败 备注: <无>
? havepass
功能说明: 读卡,并判断是否有密码,取卡上信息必需先做此步骤 参数说明: func_id= \ \返回值说明: \有密码,\无密码,\操作失败 备注: <无>
? chkpass
功能说明: 密码效验
参数说明: func_id=\%
? get
功能说明: 从身份识别设备上取得数据
成都莲合创想科技有限公司
电话(传真):028-85217600
重庆跨统筹区就医结算平台接口调用参考手册 参数说明: func_id=\为要取得的数据名称。 返回值说明: \表示失败, 其他表示取得了相关的数据.
备注:instr有可能是需要取得的数据名称,也可能是数据命令。根据不同的设
备驱动,命令有很大的不同。
Instr参数对应功能说明:
*type: 取得卡片类别oper|insure|error,必需先读卡 *organ_id: 取得就医卡发卡的经办机构,错误返回* *insure_id: 返回就医保参保号,错误返回* *card_no: 返回卡号,错误返回* *oper_id: 返回操作员号。错误返回*
*familycard: 返回是否家庭卡标志。\家庭卡,\个人卡,家庭卡读取
的(insure_id)字段为家庭编号,个人卡读取的insure_id为医保号
? put
功能说明:发送控制命令或写数据到身份识别设备上。 参数说明: func_id=\发送的命令或要写的数据。 返回值说明: \表示失败, 其他表示取得了相关的数据.
备注:instr有可能是需要取得的数据名称,也可能是数据命令。根据不同的设
成都莲合创想科技有限公司
电话(传真):028-85217600
重庆跨统筹区就医结算平台接口调用参考手册
备驱动,命令有很大的不同。 Instr参数对应功能:
以下以莲合公司的IC卡为例说明ID_CALL的操作方式。
string strpwd = ““;
retstr = m_ipapi.ID_Call(“havepass”,”%”); //判断有无密码 if (retstr == “Y”) {
//有密码,效验密码
frmCardPwd frmPwd = new frmCardPwd(); try {
frmPwd.ShowDialog(); strpwd = frmPwd.strpwd;
retstr = m_ipapi.ID_Call(“chkpass”,”%” + strpwd);//验证密码 if (retstr == “*”) //验证失败,并取错误信息 {
Messagebox.Show(“ERROR:“ +m_ipapi.get_SYS_CFG(“msgno”) + “\\n” + m_ipapi.get_SYS_CFG(“msg”));
m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return -1; }
} catch {
Messagebox.Show(“验证密码失败!” + retstr); m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return -1; } }
else if (retstr == “*”) {
Messagebox.Show(“判断有无密码出错”); m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return -1;
成都莲合创想科技有限公司
电话(传真):028-85217600
*pop: 弹卡
重庆跨统筹区就医结算平台接口调用参考手册
}
retstr = m_ipapi.ID_Call(“get”,”*type”); // 分析卡片类型,操作员卡/就医卡 if (retstr == “oper”) {
// 操作员卡,可以取医院号(hospital_id),操作员号(oper_id),和操作员名称(name) // Messagebox.Show(“卡类型错误,需要医保卡!”); m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return -1; }
else if (retstr == “insure”) {
// 如果是就医卡,则可以取卡号(card_no),经办人机构号(organ_id),医保号(insure_id) card_no = m_ipapi.ID_Call(“get”,”*card_no”); organ_id = m_ipapi.ID_Call(“get”,”*organ_id”); insure_id = m_ipapi.ID_Call(“get”,”*insure_id”);
/*家庭卡标志,部分险种使用一户一卡形式,如果为家庭卡时需要HIS放做个查询选择界面。具体在需要使用的地方,单独文档介绍*/
insure_id = m_ipapi.ID_Call(“get”,”*familycard”); m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return 0; } else {
// 如果不是操作员卡(oper),也不时就医卡(insure),那么肯定就是非法卡。 Messagebox.Show(“非法卡” + retstr); m_ipapi.ID_Call(“put”,”*pop”); // 弹卡// return -1; }
4.3. 对于数据集操作功能 (DS_CALL)
函数作用说明:业务交易调用中,主要有两个部分需要用到此函数
(1) 涉及多参数需要HIS前端传入时,IPAPI提供DS_CALL函数,先将参数
写入数据集缓存中,然后调用交易函数进行业务。
(2) 查询医保多行数据时,先调用调用具体的查询交易,然后再调用
成都莲合创想科技有限公司
电话(传真):028-85217600
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库医保接口调用参考手册(3)在线全文阅读。
相关推荐: