在线观看国产中文字幕/国产好大好紧好爽好湿视频唱戏/最近中文高清字幕免费/今天高清在线播放

 
 
資料名稱 iF6報鐘器-公共接口程序(SQL方式)—硬件設(shè)備驅(qū)動V1.01
更新時間 2013-9-14 16:09:17
下載地址
http://pan.baidu.com/share/link?shareid=3212436965&uk=624116759
資料說明
我公司提供以數(shù)據(jù)庫作為開發(fā)接口的方式與第三方應(yīng)用程序作對接,底層接口程序“智能語音報鐘系統(tǒng)iF6設(shè)備驅(qū)動服務(wù)”(下稱設(shè)備驅(qū)動)負責(zé)完成通過RS232/RS485和刷卡器進行通訊的工作;第三方合作軟件公司依據(jù)自己需求,開發(fā)的應(yīng)用程序(下稱應(yīng)用程序)可根據(jù)接口協(xié)議與設(shè)備驅(qū)動對接,主要分為以下三步完成。
1、設(shè)備驅(qū)動程序完成了對設(shè)備發(fā)來的RS232/RS485格式數(shù)據(jù)解包,并將信息內(nèi)容保存至數(shù)據(jù)表FXT_MESSAGE中,并將相應(yīng)的記錄狀態(tài)(message_status字段)設(shè)置成為“請求”;
2、應(yīng)用程序定期(如1秒鐘,具體時間可由應(yīng)用程序自行定義)對數(shù)據(jù)表FXT_MESSAGE進行檢索,查詢是否有新增的“請求”記錄;獲得請求信息后,完成請求所要求的功能,并將結(jié)果寫回數(shù)據(jù)表FXT_MESSAGE中,修改相應(yīng)字段。修改方法為:將處理結(jié)果寫入response_conten字段中,并將message_status設(shè)置為“響應(yīng)”。
3、設(shè)備驅(qū)動程序掃描數(shù)據(jù)表FXT_MESSAGE,查詢是否有“響應(yīng)”信息,并將響應(yīng)內(nèi)容發(fā)送至對應(yīng)的設(shè)備,設(shè)備收到驅(qū)動發(fā)來的信息后,對信息進行處理(如顯示成功/失敗、到鐘提醒、報警等),然后通知驅(qū)動程序處理成功,驅(qū)動程序修改記錄狀態(tài)為null,此時驅(qū)動完成了整個信息處理。對于完成了的信息記錄,應(yīng)用程序可進行任意操作(比如移除、清除等)
 
工作流程圖如下:
圖一:接口流程圖
 
 
二、驅(qū)動安裝及運行環(huán)境需求
1、安裝設(shè)備驅(qū)動需要確保有Java的運行環(huán)境,以及RS232串口驅(qū)動;
2、需安裝SQLSERVER數(shù)據(jù)庫,數(shù)據(jù)庫與設(shè)備驅(qū)動可以分別在不同的服務(wù)器或工作站中運行;
三、數(shù)據(jù)庫接口表結(jié)構(gòu)
    FXT_SETTING表格說明
     字段名稱
數(shù)據(jù)類型
是否為空
詳細說明
agent_name
nvarchar
NOT NULL
代理名稱
com_id
int
PK
串口號
baud_rate
int
NULL
波特率
start_bits
int
NULL
開始位
stop_bits
int
NULL
停止位
data_bits
int
NULL
數(shù)據(jù)位
parity
int
NULL
校驗位
    此表格存放串口號代理器,一個串口號可以接128個設(shè)備。
    FXT_MENU表格說明
     字段名稱
數(shù)據(jù)類型
是否為空
詳細說明
menu_type
nvarchar
PK
刷卡器中可更新菜單類型,包括:上鐘模式;技師類別;服務(wù)類型;商品編號
menu_item
nvarchar
PK
菜單項目,具體的菜單項目內(nèi)容
此表格存放的數(shù)據(jù)將在設(shè)置功能啟動的時候自動從數(shù)據(jù)庫中讀取。
FXT_MESSAGE表說明:
字段名稱
數(shù)據(jù)類型
是否為空
詳細說明
com_id
int
PK
串口號
device_id
int
PK
設(shè)備號
request_time
datetime
PK
請求時間,精確到毫秒 (ms)
request_type
nvarchar
NULL
請求命令類型,如:上鐘、加鐘、服務(wù)、查詢、小費、商品等等
request_param
nvarchar
NULL
請求命令參數(shù)列表,如:小費金額:202;技師卡號:0001488298
response_time
Datetime
NULL
響應(yīng)時間,精確到毫秒 (ms)
response_type
Nvarchar
NULL
響應(yīng)類型:包括“返回信息”、“催鐘”、“報警”等等
response_content
Nvarchar
NULL
響應(yīng)內(nèi)容,一段簡體文字(GB2312)或者一個編號,以供發(fā)出聲音
message_status
Nvarchar
NULL
信息狀態(tài),“請求”、“響應(yīng)”為空等
具體的創(chuàng)建表格SQL文件請參考db/createdatabase.sql文件的
請求例子格式如下:
com_id
device_id
Request_time
Request_type
Request_param
Message_status
1
1
2011-9-6
10:10:10.168
加鐘
加鐘時間:60;客人卡號: 0008888868;技師卡號:0006666866
請求
在實際施工中,通過串口擴展卡,一個PCI插槽可以擴展8個串口,每個串口最多可以連接128個房間。客戶應(yīng)該在自己的系統(tǒng)中建立房間與串口號和設(shè)備號的對應(yīng)關(guān)系。這樣通過串口號,和設(shè)備號,軟件就可以得到是哪個房間發(fā)送的信息了。
四、命令內(nèi)容的詳細格式
請求參數(shù)根據(jù)不同的請求類型即命令內(nèi)容的不同,擁有的參數(shù)個數(shù)和參數(shù)名稱是不一樣的,具體的參數(shù)需要根據(jù)刷卡器設(shè)置的菜單類型來決定;應(yīng)用程序應(yīng)先將參數(shù)列表解釋成為“名=值”對的方式放在存儲表中,然后根據(jù)需要來獲得相關(guān)的參數(shù)值,從而調(diào)用不同的功能方法。    例如加鐘:
命令類型       加鐘
命令參數(shù)       模式編號:01;加鐘鐘數(shù):1;技師卡號:0006666866
應(yīng)用軟件應(yīng)該根據(jù)命令類型的不同,對命令參數(shù)進行分析,獲得每個必要的參數(shù)值。對命令參數(shù)處理時需要使用正則表達式:首先以分號作為間隔獲得參數(shù)名稱和值對,將其以參數(shù)名為主鍵,存入哈希表中,然后根據(jù)參數(shù)名稱獲得值來作相應(yīng)處理。
1、應(yīng)用程序獲得有效請求的方法:
由于應(yīng)用程序程序可能是由不同的語言編寫的,所以方法會有一定差異,但是應(yīng)用標準的SQL數(shù)據(jù)庫語言或者ODBC接口,使用以下SQL查詢語句通常可以完成這個功能:
select * from fxt_message where request_time>getDate()-0.001 and message_status='請求';
其中request_time>getDate()-0.001表示請求時間不超過1分30秒的記錄,也可就通過編程動態(tài)計算獲得。
獲得數(shù)據(jù)庫記錄后,有可能同時存在多個記錄,應(yīng)該根據(jù)每一個記錄的串口號、設(shè)備號、請求類型、請求參數(shù)逐個進行處理,調(diào)用不同的方法處理。
2、應(yīng)用程序返回信息
本接口可以接受的返回信息可以不是固定的,可根據(jù)國標字庫顯示相應(yīng)的文字,常用信息:
起鐘成功 加鐘成功 小費成功 錯誤技師卡    已經(jīng)起鐘 房間錯誤 出鐘成功
應(yīng)鐘成功 服務(wù)成功 沒有起鐘 錯誤部長卡    錯誤客人卡    錯誤模式編號
錯誤商品編號  錯誤技師編號  排鐘成功 點鐘成功 選鐘成功 括鐘成功
撤鐘成功 退技師成功    更換房間成功  商品成功 贈送成功 錯誤技師類別
應(yīng)用程序可根據(jù)流程需要,自行設(shè)置相應(yīng)的返回信息,但字體不能超過31個中文字符或62個英文字符。
使用以下SQL查詢語句通常可以完成這個功能:
update fxt_message
set response_time=getDate(),
response_type='返回信息',
response_content='$信息內(nèi)容$',
message_status='響應(yīng)'
where com_id='$com_id$' and device_id='$device_id$' and request_time=$請求時間$
其中$信息內(nèi)容$根據(jù)上一步驟處理結(jié)果所返回的情況,動態(tài)確定;
其中$com_id$、$device_id$和$請求時間$根據(jù)獲取請求時查詢所得相應(yīng)值來確定。