圖書館管理系統(tǒng)與一卡通接口設(shè)計(jì)
文章出處:http://botanicstilllife.com 作者:陰小建,王文琳 人氣: 發(fā)表時(shí)間:2011年11月17日
校園一卡通系統(tǒng)借助Ic卡技術(shù)和校周網(wǎng)絡(luò)環(huán)境將原本獨(dú)立運(yùn)行的各個(gè)教學(xué)、生活部門的計(jì)算機(jī)管理系統(tǒng)銜接起來(lái),可以極大提高教學(xué)、生活管理效率,有助于增強(qiáng)各部門資源共享,促進(jìn)師生人事信息統(tǒng)一,提高財(cái)務(wù)收支透明度,一卡通系統(tǒng)是高校數(shù)字化建設(shè)的重要環(huán)節(jié),在推動(dòng)學(xué)院信息化建設(shè)方面起到十分積極的作用。山東教育學(xué)院于2008年9月啟動(dòng)校同一卡通系統(tǒng)建設(shè)工程。校園一卡通除了用于師生校同消費(fèi)外,還在人事信息、財(cái)務(wù)結(jié)算、學(xué)生上機(jī)、醫(yī)療衛(wèi)生、圖書館流通檢索等各方面發(fā)揮重要作用。一卡通系統(tǒng)投人使用后,方便了師生,真正實(shí)現(xiàn)了“手持一卡,走遍校同”的預(yù)期建設(shè)目標(biāo)。
圖書館作為一卡通建設(shè)的一個(gè)重要組成部分,不但完善了一卡通系統(tǒng)的完整性,也對(duì)圖書館管理水平、服務(wù)質(zhì)量以及未來(lái)開(kāi)展的新形式讀者服務(wù)帶來(lái)積極影響。
一、圖書館管理系統(tǒng)與校園一卡通對(duì)接目標(biāo)
我館于2006年底開(kāi)始使用廣州網(wǎng)創(chuàng)公司開(kāi)發(fā)的“In—terlib”圖書館集成管理系統(tǒng)。該套系統(tǒng)承擔(dān)著我館采、編、瀏覽、檢及讀者信息管理等業(yè)務(wù)環(huán)節(jié),通過(guò)將集成管理系統(tǒng)與校園一卡通對(duì)接,可以提高我館管理和服務(wù)水平。
1、減少讀者持有各種卡、證的數(shù)量,提高辦卡效率,減少辦卡成本。我館的讀者卡一直以來(lái)都是自制的,不但要購(gòu)買各項(xiàng)設(shè)備、材料,在新生人學(xué)、新教師入校時(shí)還要指派々人突擊辦理讀者證。種種兇素造成了澳者辦證時(shí)間長(zhǎng)、成本高,流通部門工作壓力大,很難保證讀者滿意。校園一卡通南學(xué)校一忙通中心統(tǒng)一制作,代替讀者證和其他各類卡、證后,從根本上減少了師生辦證費(fèi)用和辦證時(shí)間。
2、規(guī)范讀者數(shù)據(jù)庫(kù)信息。由于各時(shí)期辦證要求不同,辦證人員操作不規(guī)范等因素導(dǎo)致現(xiàn)有的讀者數(shù)據(jù)庫(kù)信息不統(tǒng)一、不完整。實(shí)現(xiàn)對(duì)接后,師生第一次持一卡通來(lái)館借閱時(shí),Interlib將自動(dòng)調(diào)取一卡通中心數(shù)據(jù)庫(kù)相關(guān)信息,按照對(duì)應(yīng)關(guān)系完整、準(zhǔn)確的生成注冊(cè)信息,隨后通過(guò)人工分組授予不同的借閱權(quán)限。從而避免手工錄入信息時(shí)易產(chǎn)生的誤差,保證讀者庫(kù)數(shù)據(jù)準(zhǔn)確、規(guī)范。
3、提供更加智能化的管理和深層次的個(gè)性化服務(wù)。新圖書館落成后,依托一卡通建設(shè)的統(tǒng)一門禁系統(tǒng),不但可以阻止非本院師生進(jìn)入圖書館占用教學(xué)資源,還能開(kāi)發(fā)出讀者流量統(tǒng)計(jì)分析、員T考勤等附加功能,為更加嚴(yán)格的管理和更優(yōu)質(zhì)的服務(wù)創(chuàng)造了條件。
Interlib系統(tǒng)具有豐富的網(wǎng)上自助服務(wù),讀者激活網(wǎng)上圖書館后可以辦理預(yù)約、續(xù)借、薦購(gòu)、收取催還通知等業(yè)務(wù),還可以通過(guò)E—mail向咨詢部門尋求幫助。由于原先的讀者數(shù)據(jù)庫(kù)中的信息不完整、不規(guī)范,導(dǎo)致網(wǎng)上自助服務(wù)不易實(shí)現(xiàn)。借助與校園一膏通對(duì)接過(guò)程中對(duì)讀者數(shù)據(jù)進(jìn)行全面梳理,將對(duì)未來(lái)開(kāi)展更加豐富的的讀者服務(wù)打下了基礎(chǔ)。
4、規(guī)范收支手續(xù),加強(qiáng)收支監(jiān)管。一直以來(lái),我館流通罰款、工本費(fèi)均以收取現(xiàn)金為主,通過(guò)手工開(kāi)具的收據(jù)存根和管理系統(tǒng)內(nèi)的}己錄作為結(jié)算依據(jù)。這樣操作既存在大額款項(xiàng)假幣難辨,小額款項(xiàng)零錢難找的問(wèn)題,也缺少嚴(yán)格的財(cái)務(wù)監(jiān)督機(jī)制。開(kāi)通一卡通后,讀者產(chǎn)生的所有費(fèi)用均通過(guò)一卡通中心代扣、代繳,收入款項(xiàng)集中記錄在圖書館專用商戶賬號(hào)上,由財(cái)務(wù)處監(jiān)督管理。扣款明細(xì)分別保存在圖書館管理系統(tǒng)數(shù)據(jù)庫(kù)和一卡通中心交易數(shù)據(jù)庫(kù)中,隨時(shí)可以對(duì)照檢查,確保交易準(zhǔn)確。
二、Interlib系統(tǒng)與一卡通對(duì)接實(shí)現(xiàn)過(guò)程
當(dāng)讀者持一卡通來(lái)到圖書館辦理開(kāi)通、借還、繳納罰款或其他費(fèi)用時(shí),需要使用讀卡器讀取卡片內(nèi)保存的卡號(hào),通過(guò)一卡通接口程序連接一卡通中心數(shù)據(jù)庫(kù),調(diào)用對(duì)應(yīng)信息中的學(xué)工號(hào)、現(xiàn)有金額等相關(guān)信息,反饋至Interlib系統(tǒng),再進(jìn)行相應(yīng)的處理,并將處理結(jié)果通過(guò)一卡通接口程序反饋給一卡通中心數(shù)據(jù)庫(kù),從而做到交易信息“雙軌制”記載。
具體流程見(jiàn)圖1:一卡通工作流通圖。
圖I:一卡通T作流程圈
根據(jù)操作流程,接口程序需要將Interlib與一卡通中心數(shù)據(jù)庫(kù)的數(shù)據(jù)關(guān)聯(lián)起來(lái),需要處理初始化讀卡器動(dòng)態(tài)庫(kù)與讀卡器設(shè)備,進(jìn)行一卡通交易、一卡通查詢,以及下載一卡通文件等工作。下面根據(jù)設(shè)計(jì)步驟,簡(jiǎn)要說(shuō)明開(kāi)發(fā)過(guò)程。
1、Interlib讀者信息數(shù)據(jù)庫(kù)與一卡通中心數(shù)據(jù)庫(kù)的關(guān)聯(lián)由于我館部分讀者信息是由老管理系統(tǒng)轉(zhuǎn)移過(guò)來(lái)的,因此存在數(shù)據(jù)格式不統(tǒng)一、讀者信息字段設(shè)置的太少,部分關(guān)鍵字段數(shù)據(jù)有缺失等問(wèn)題。經(jīng)調(diào)研,我們決定在清還圖書的基礎(chǔ)上,重建讀者信息庫(kù)。新建讀者數(shù)據(jù)庫(kù),新注冊(cè)讀者數(shù)據(jù)全部從一卡通中心直接調(diào)用,鑒于一卡通中心的數(shù)據(jù)來(lái)自學(xué)院人事處和教務(wù)處,并增加了部分實(shí)用的字段,如照片和E—mail等,從而可以保證數(shù)據(jù)的準(zhǔn)確性以及確保與學(xué)院其他部門一致。
Interlib與一卡通中心數(shù)據(jù)庫(kù)各自都有完整的字段設(shè)置。要將兩個(gè)數(shù)據(jù)庫(kù)關(guān)聯(lián)起來(lái),首先需要確定數(shù)據(jù)庫(kù)連接的關(guān)鍵字段,并以此作為數(shù)據(jù)對(duì)應(yīng)的依據(jù)。本系統(tǒng)使用一卡通中心數(shù)據(jù)庫(kù)中的學(xué)工號(hào)和Interlib中的讀者證號(hào)作為相互關(guān)聯(lián)的關(guān)鍵字段。
對(duì)應(yīng)關(guān)系圖如圖2:
圖2:數(shù)據(jù)庫(kù)對(duì)應(yīng)關(guān)系圖
建立對(duì)應(yīng)關(guān)系后。讀者注冊(cè)時(shí)由讀卡器讀取一卡通卡號(hào),經(jīng)過(guò)~卡通接口程序?qū)⒖ㄌ?hào)發(fā)送至一卡通中心數(shù)據(jù)庫(kù)驗(yàn)證,調(diào)取相應(yīng)的學(xué)工號(hào),返回給Interlib。Interlib根據(jù)返回信息檢查讀者庫(kù)中是否存在該讀者證號(hào),如不存在則顯示提示信息。Interlib調(diào)用一卡通中心數(shù)據(jù)庫(kù)中注冊(cè)所需字段數(shù)據(jù),根據(jù)映射關(guān)系自動(dòng)生成讀者注冊(cè)信息,完成新讀者注冊(cè)。
2、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
在與Interlib圖書館集成管理系統(tǒng)對(duì)接時(shí),所以最有效的數(shù)據(jù)共享格式是MARC格式。當(dāng)接口程序?qū)⒁豢ㄍㄖ行臄?shù)據(jù)庫(kù)中的數(shù)據(jù)傳送給Interlib時(shí),一卡通接口程序把可提供的(有用的)信息通過(guò)Interlib提供的API函數(shù)組成一個(gè)MARC記錄,然后發(fā)送Interlib。Interlib接收到該MARC記錄,取出相應(yīng)的字段進(jìn)行處理。
因此一卡通接口程序需要為每一種類型的操作對(duì)應(yīng)一個(gè)提前定義好的MARC元數(shù)據(jù)結(jié)構(gòu)包,例如卡操作包,卡消費(fèi)/退費(fèi)包,賬戶信息包等等,為雙方的數(shù)據(jù)代碼轉(zhuǎn)換提供了橋梁。下面示例卡消費(fèi)/退費(fèi)包MARC記錄定義。
采用MARC作為數(shù)據(jù)傳輸格式的最大便利就是可擴(kuò)展,當(dāng)有新的需求時(shí),僅僅增加或修改各項(xiàng)MARC定義即可。
3、第三方動(dòng)態(tài)庫(kù)、讀卡器初始化
一卡通讀卡器獲取讀者信息替代了原先的條碼掃描,一卡通接口程序首先要初始化讀卡器的動(dòng)態(tài)庫(kù),驅(qū)動(dòng)讀卡器。
根據(jù)讀卡器廠商給出的API函數(shù),動(dòng)態(tài)庫(kù)初始化函數(shù)
定義如下:
BOOL WINAPI TA—Init(char IP,short port,unsigned short SysCode,unsigned short TerminalNo,bool ProxyOffline,ULONG MaxJnl);
函數(shù)功能:初始化接口程序動(dòng)態(tài)庫(kù)
入口參數(shù):
IP一一卡通代理服務(wù)器IP地址。
port一一卡通代理服務(wù)器端口號(hào)。
SysCode一各單位商戶號(hào)。
TerminalNo一一卡通讀卡器代碼。
出口參數(shù):
PmxyOffiine一一卡通代理服務(wù)器是否脫機(jī)。
MaxJnl一最大流水號(hào)。
讀卡器初始化函數(shù)定義如下:
int—stdcall TA—CRInit(char CardReaderType,int port,long Baud—Rate);
函數(shù)功能:初始化讀卡器。
入口參數(shù):
CardReaderType一讀卡器類型,0為usb類型讀卡器,1為串口讀卡器。由于使用USB讀卡器,所以不考慮port和Baud—Rate字段的定義。
驅(qū)動(dòng)成功后,Interlib就可以借助接口程序與一卡通中心通信了。由于日常工作中,讀F器一般設(shè)置為輪詢讀卡狀態(tài),在一定的時(shí)間間隔內(nèi),不停的發(fā)出讀卡指令,快速讀取~卡通內(nèi)信息。
輪詢讀卡函數(shù)定義如下:
int—stdcaU TA—FastGetCardNo(unsigned int CardNo);
函數(shù)功能:快速讀取卡片序列號(hào),用于輪詢讀卡。
出口參數(shù):CardNo一讀取的卡片序列號(hào)。
一卡通讀取成功后,需要短”嘀”聲,代表讀卡成功,通過(guò)發(fā)聲函數(shù)可以實(shí)現(xiàn),函數(shù)定義為:
int—stdeall TA—CRBeep(unsigned int BeepMSecond);Beep—Second;
函數(shù)功能:讀卡器蜂鳴
入口參數(shù):BeepSecond一讀每器蜂鳴的時(shí)間,單位為毫秒。
4、一卡通交易模塊設(shè)計(jì)
代扣、代繳是一卡通的主要功能之一。通過(guò)交易/退費(fèi)函數(shù)實(shí)現(xiàn)。
調(diào)用函數(shù)定義如下:
int—stdcall TA—Consume(CardConsume pCardCons,bool lsVerfy,short TimeOut=10);
入口參數(shù):
pCardCons一>CardNo一消費(fèi)卡片的卡號(hào)。
pCardCons一>Operator一操作員代碼的操作員
代碼,填寫兩個(gè)字節(jié)的操作員代碼。
pCardCons一>TranAmt一卡片消費(fèi)的交易額,必須小于0
IsVerfy一是否驗(yàn)證消費(fèi)限額,第一次調(diào)用時(shí)需要驗(yàn)證,如果返回值是超過(guò)消費(fèi)限額,則第三方程序驗(yàn)證消費(fèi)密碼,如果驗(yàn)證通過(guò),這個(gè)參數(shù)就可以設(shè)置為false(不驗(yàn)證消費(fèi)限額),如果驗(yàn)證不通過(guò),繼續(xù)驗(yàn)證密碼。
pCardCons一>TranJnl一流水號(hào)。
TimeOut一交易超時(shí)時(shí)間,缺省為10秒。
出口參數(shù):
pCardCons一>RetCode一后臺(tái)交易的返回值。
pCardCons一>BackJnl一交易的后臺(tái)流水號(hào)。
pCardCons一>Balance一卡片余額。
5、信息查詢與文件下載模塊設(shè)計(jì)當(dāng)新讀者注冊(cè)時(shí),需要調(diào)取一卡通服務(wù)器數(shù)據(jù)庫(kù)中的賬號(hào)信息。需要下載照片等文件。
賬戶信息查詢函數(shù)定義如下:
int—stdcall TA—InqAcc(AccountMsg pAccMsg。short TimeOut=10);
函數(shù)功能:根據(jù)帳號(hào)/卡號(hào)/學(xué)]:號(hào)/證件號(hào)精確查詢帳戶信息
人口參數(shù):pAccMsg一>AccountNo一消費(fèi)卡片的帳號(hào)。
pAccMsg一>CardNo一消費(fèi)卡的卡號(hào)
pAccMsg一>StudentCode一學(xué)t號(hào)
pAccMsg一>IDCard一證件號(hào)碼
TimeOut一交易超時(shí)時(shí)間,缺省為10秒
出口參數(shù):
pAceMsg一從數(shù)據(jù)庫(kù)中讀Hj的帳戶信息,包括姓名Name、性別、SexNo、部門代碼DeptCode、矗號(hào)CardNo、帳號(hào)AccountNo、學(xué)】:號(hào)StudentCode、身份證號(hào)IDCard、身份代碼PID、身份序號(hào)IDNo、余額Balance、過(guò)期時(shí)間Expire.Date、補(bǔ)助序號(hào)SubSeq、是否在本系統(tǒng)內(nèi)開(kāi)通IsOpenlnSys。pAccMsg一>RetCode一后臺(tái)交易的返回值。
備注:pAccMsg一>AccountNo、pAccMsg一>CardNo、pAcc—Msg一>StudentCode、pAccMsg一>IDCard這四個(gè)參數(shù)是選擇查詢條件,必須輸入一個(gè)。文件下載函數(shù)采用照片下載為示例,定義如下:
int—stdcall TA—DownPhotoFile(char{IDNo,char$PhotoFn,short Timeout=lO);
函數(shù)功能:根據(jù)身份序號(hào)下載相片文件
入口參數(shù):
IDNo一要查詢的人的身份序號(hào),必須是12個(gè)字節(jié)的字符串
PhotoFn一查詢成功后生成的相片文件名
TimeOut一交易超時(shí)時(shí)間,缺省為10秒
備注:下載完成的相片文件放到Photo目錄下
三、結(jié)束語(yǔ)
隨著數(shù)字化建設(shè)的深入,高校圖二擋館在越來(lái)越多的方面需要借助一卡通開(kāi)展工作,一卡通所包含的功能也有待豐富。展望未來(lái)的校園一卡通系統(tǒng),將在現(xiàn)有應(yīng)用的基礎(chǔ)上進(jìn)行擴(kuò)展,逐步建立起一個(gè)以圖書館一一校園金融服務(wù)平臺(tái)為核心的網(wǎng)絡(luò)。持卡人可以根據(jù)實(shí)際應(yīng)用情況使用電話銀行、手機(jī)銀行,以及遍布網(wǎng){5館各個(gè)角落的自助設(shè)備享受眾多先進(jìn)的服務(wù)項(xiàng)目。,最終實(shí)現(xiàn)基于Intrant和圖書服務(wù)中心的電子教學(xué)與電子商務(wù)圈,形成集中式管理、動(dòng)態(tài)
核算,建立真正網(wǎng)絡(luò)化的工作方式。