APP下载

基于身份证在精神专科医院门诊挂号信息化系统中的应用

2020-05-21徐建肖正军

电脑知识与技术 2020年9期
关键词:射频识别身份证

徐建 肖正军

摘要:针对精神专科医院精神病人基本上一经确诊,许多病人需终身服药治疗。精神病人就诊频率高,每次就诊时需要根据病人的门诊病历号调取病历资料。传统的挂号方式是操作人员通过手工录入,耗时长,错误率高、效率低。我院采用第二代身份证阅读器,通过射频识别卡技术,以无线传输方式对居民身份证内的芯片进行安全认证,将芯片中的个人信息读出,编写读卡器读取身份证卡号等接口程序,实现病人手持身份证挂号,缩短了挂号时间,具有较强的实用性。

关键词:身份证;射频识别;精神专科医院

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2020)09-0012-02

开放科学(资源服务)标识码( OSID)

1 引言

精神专科医院有专科医院的特点,精神病人不同于其他专科病人,基本上一经确诊,许多病人需终身服药治疗。精神病人就诊频率高,需要每个月到医院复诊,而且需要病历资料保存完整,每次就诊时需要根据病人的门诊病历号调取病历资料,方便医生了解病情。传统的挂号方式是操作人员通过手工录入,耗时长,错误率高、效率低。我院采用第二代身份证阅读器,以无线传输方式对居民身份证内的芯片进行安全认证,将芯片中的个人信息读出,具有较强的实用性。

2 身份证读卡技术介绍

第二代身份证读卡器以二代身份证作为主要对象,用于对二代身份证芯片信息的读取。身份证读卡技术主要是通过射频识别( Radio Frequency Identification,RFID)技术来实现的。即利用无线射频方式在阅读器和射频卡之间进行非接触双向数据传输,以达到目标志别和数据交换的目的[1],识别工作无须人工干预,其应用给许多行业带来革命性变化。

3 实现过程

根据二代身份证读卡器系统配有的SDK软件开发包,写了如下函数(delphi语言编写),在系统中调用。

3.1 定义函数(调用SDK开发包中动态链接库term.dll)

function

CVR_InitComm(Port: integer): Integer; stdcall; extemal 'termb.dll,;//初始化连接

function CVR_CloseComm: Integer; stdcall; ext lllernal'termb.dll,;//关闭连接

function CVR_Authenticate: Integer; stdcall; external 'termb.dll,;//卡认证

function CVR_Read_Content(active: integer): Integer; stdcall;external 7 termb.dllr;//读卡操作

function GetPeopleName(strTmp: pchar; var strLen:integer):ln-teger;stdc all;external' termb.dllr∥得到姓名信息

function GetPeopleSex(strTmp: pchar; var strLen: integer): Inte-ger;stdcall;external 'termb.dll';//得~I性别信息

function GetPeopleBirthday (strTmp: pchar; var strLen: integer):Integer;stdcall;external' termb.dll;;//得到出生日期

function GetPeopleIDCode(strTmp: pchar; var strLen: integer):Integer;stdcall;external ; termb.dll ;;//得到卡号信息

function GetPeopleAddress(strTmp: pchar; var strLen: integer):Integer;stdcall;external ; termb.dll;;//得到地址信息

function readsfz(var v_name, v_sex, v_card, v_birthdav, v_ad-dress:string): string;自定义读卡函数,变量v_nmae,v_sex,v_card,v_birthdav, v_address分别代表“姓名”,“性别”,“身份证号”,“出生日期”,“地址”)

3.2 函数实现

function readsfz(var v_name, v_sex, v_card, v_birthdaY, v_ad-ress:string):string//读取身份

var

s:integer;

name:array[0..1023] of char;

cardno:array[0..1023] of char;

sex:array[0..1023] of char;

birthday:array[0..1023] of char;

address: array[0..1023] of char;

begin

s:=2048;//定义字节长度

GetPeopleName(@name[0l,s);//調用GetPeopleName得到姓名信息

v_name:=strpas(@name[oD;//pchar类型转换成string类型

s:=1024;//定义字节长度

作者简介:徐建(1969-),男,江苏扬州人,工程师,主要研究数据库与信息管理。

GetPeopleSex (@sex[0l,s);//调用GetPeopleSex得到性别信息

v_sex:=strpas(@sex[oD;//pchar类型转换成string类型

s:=1024;//定义字节长度

GetPeopleID Code(@cardno[0],s);调用GetPeopleIDCode得到卡号信息

v_card:=strpas(@cardno[OD; //pchar类型转换成string类型

s:=1024;//定义字节长度

GetPeopleBirthday(@birthday[0l,s);//调用GetPeopleBirth-day得到出生日期

v_birthday: =strpas(@birthday[OD; //pchar类型转换成string类型

s:=5 120;//定义字节长度

GetPeopleAddress(@adress[0],s);//调用GetPeopleAddress得到地址信息

v_adress: =strpas(@adress[0]); //pchar类型转换成string类型

result:='1 7:

end;

end.

3.3 系统调用

procedure bLsfzClick(Sender: TObject);

var

p,jst:integer;//定义变量记录读卡的时间范围name,sex,card,birthday,adress:string;//定义变量begin

bt_sfz.Enabled:=false;

p:=0;//给变量赋值

jst:=l;//给变量赋值

name:=”;//定义变量

sex:=”;//定义变量

card:=”;//定义变量

birthdaY:=”;//定义变量

adress:=”;//定义变量

CVR_InitComm(1001);初使化端口

while(p<>1)and (jst<30) do //(10秒内读卡)

begin

sleep(350);

p:=CVR_Authenticate;

jst:=jst+l;

end;

if p=l then

begin

CVR_Read_Content(l);

//调用读卡函数

readsf'z( name,sex,card,birthday,adress);

end;

if trim(name)<>then

begin

ed_sfz.text:=trim(card);

end;

CVR CloseComm;//關闭连接

end;

3.4 数据库部分表格设计

3.4.1 XT_BRZC(病人注册表)

Name

Varchar(10)//姓名

Sex

Varchar(2)性别

Cardcode Varchar(18)/身份证号

Address Varchar(60)/地址

Telephone Varchar(ll)//电话

Birthday Date//出生日期

telephone Varchar(12V/电话

3.4.2 MZ_BRJZXX(病人就诊信息表)

JZH NUMBER(10) ll就诊号

JZSJ Date //就诊时间

JZYSBH Varchar(10)//就诊医生编号

CARDCODE Varchar(18)//身份证号

ZDBH Varchar(30)//诊断编码

JZJL Demo //就诊信息

4 结论

在传统的挂号信息系统中,操作人员通过询问或让患者填写病历本后,在门诊挂号系统的身份登记功能模块中手工录入患者信息。录入患者信息耗时长,遇到不认识的字或者生僻字花费的时间会更长,增加了患者排队挂号时间,而且信息采集错误率高、效率低,影响到病人信息的真实性和可靠性[2,3]。通过身份证读卡技术采集的患者信息全面、准确、快速,病人挂号的时间大大缩短,既减少了工作人员的工作量,又缩短了患者排队等候的时间,有效地提高了就医效率,提升了患者对门诊工作的满意度。

参考文献:

[1]林培通.无线射频识别(RFID)技术的应用[Jl.电脑知识与技术,2011,7(20):5011-5012.

[2]高晓娟,赵红艳,王非.基于移动APP的医院信息系统深度的探讨[J].江苏卫生事业管理,2015(5):129-130.

[3]熊虹,陈功,王洁.关于HIS系统中建立病人主索引lD的研究[J].医疗装备,2010,23(2):27-28.

【通联编辑:王力】_

猜你喜欢

射频识别身份证
辣椒也有身份证
趣说古人的“身份证”
卷烟包装用UHF RFID抗金属标签天线的设计
基于网络与数据智能化的数码印花产品设计定制模式研究
中国古代身份证
身份证里的“X”是什么意思