第一篇:銀行排隊(duì)叫號(hào)系統(tǒng)需求分析 設(shè)計(jì)文檔
銀行排隊(duì)叫號(hào)系統(tǒng)的分析與UML建模
一、需求分析
近年來,由于各行各業(yè)的信息化、智能化建設(shè)越來越普及,整個(gè)社會(huì)對(duì)各個(gè)行業(yè)的辦事效率的要求也越來越高。例如像銀行辦業(yè)務(wù),在顧客辦業(yè)務(wù)過程中排隊(duì)現(xiàn)象在所難免,為了在排隊(duì)時(shí)減少顧客的等待時(shí)間,為顧客辦業(yè)務(wù)創(chuàng)造一個(gè)良好的環(huán)境,銀行排隊(duì)叫號(hào)系統(tǒng)應(yīng)運(yùn)而生。銀行排隊(duì)系統(tǒng)的功能性需求包括以下內(nèi)容:
1、排隊(duì)系統(tǒng)可以分為票務(wù)打印系統(tǒng)和窗口操作系統(tǒng)。
2、票務(wù)打印系統(tǒng)(1)顯示
發(fā)號(hào)機(jī)上的顯示屏使用液晶顯示,顯示對(duì)待辦業(yè)務(wù)的選擇;(2)輸入
輸入過程即通過觸摸屏對(duì)業(yè)務(wù)進(jìn)行選擇的過程;(3)輸出打印
號(hào)票打印內(nèi)容應(yīng)該包括業(yè)務(wù)名稱、排隊(duì)號(hào)碼、時(shí)間等;
3、窗口操作系統(tǒng)基本包括顯示屏、語言提示,叫號(hào)按鈕(1)顯示屏
使用點(diǎn)陣式LED顯示,顯示內(nèi)容應(yīng)該是下一個(gè)號(hào)碼以及辦理業(yè)務(wù)窗口;(2)語音提示
語音播報(bào)時(shí)用語音的形式通過廣播或者音箱給人一提示信息。語音提示不需要用戶一直盯著提示屏或者排隊(duì)情況。選擇使用語音芯片,實(shí)現(xiàn)的功能應(yīng)該是當(dāng)操作員按下按鈕后,語音播放下一個(gè)辦理者的票號(hào)。(3)叫號(hào)按鈕
設(shè)置叫號(hào)按鈕,以便于操作員控制窗口模塊的顯示屏及語音提示。滿足上述需求的系統(tǒng)主要包括以下幾個(gè)小的系統(tǒng)模塊:
(1)派號(hào)功能模塊。派號(hào)功能模塊主要是用于在用戶進(jìn)入服務(wù)大廳后,根據(jù)自己的業(yè)務(wù)需要,通過自助式觸摸屏號(hào)票機(jī)領(lǐng)取票號(hào);或者用戶在服務(wù)大廳業(yè)務(wù)咨詢臺(tái)進(jìn)行業(yè)務(wù)咨詢后,咨詢員可以為用戶打印排隊(duì)號(hào)票。號(hào)票是由排隊(duì)服務(wù)器根據(jù)當(dāng)前情況自動(dòng)生成。
(2)叫號(hào)功能模塊。工作人員可以通過座席軟件鍵盤上的設(shè)置鍵對(duì)客戶進(jìn)行叫號(hào);也可通過按鍵控制器對(duì)客戶進(jìn)行叫號(hào);系統(tǒng)可以設(shè)置單語或雙語進(jìn)行語音播放;以及通過LED顯示屏和其它視頻顯示設(shè)備顯示票號(hào)。
(3)預(yù)約功能模塊。用戶可以通過電話預(yù)約領(lǐng)取排隊(duì)號(hào);預(yù)約成功后取得預(yù)約號(hào);系統(tǒng)將此預(yù)約號(hào)按預(yù)約時(shí)間插入當(dāng)前的排隊(duì)隊(duì)列,在系統(tǒng)處理后進(jìn)行優(yōu)先呼叫;在同時(shí)間下辦理業(yè)務(wù)時(shí),可以進(jìn)行預(yù)約服務(wù),優(yōu)先辦理。同時(shí)用戶可以在網(wǎng)上進(jìn)行預(yù)約。用戶可以在正常受理業(yè)務(wù)的工作日和系統(tǒng)進(jìn)行網(wǎng)上預(yù)約。系統(tǒng)將此預(yù)約日期的預(yù)約號(hào)檢索到排隊(duì)序列中。
(4)管理功能模塊。實(shí)現(xiàn)窗口靈活安排,根據(jù)業(yè)務(wù)需要設(shè)置叫號(hào)規(guī)則;業(yè)務(wù)分類排隊(duì)管理;鼠標(biāo)、鍵盤、按鍵控制器混合使用??梢园礃I(yè)務(wù)和窗口分類統(tǒng)計(jì)業(yè)務(wù)辦理情況。
二、用例圖
● 客戶能夠通過該系統(tǒng)進(jìn)行如下活動(dòng):
(1)顧客取票:需要辦理業(yè)務(wù)的顧客到取票機(jī)前取號(hào),并獲得打印。(2)顧客休息等待:取到排隊(duì)號(hào)的顧客在休息區(qū)休息等待,留意顯示屏信息和語音提示。
(3)營業(yè)員按鈕呼叫:窗口操作員按“下一位”,當(dāng)前窗口就顯示顧客排隊(duì)號(hào)并語音呼叫“請(qǐng)XX到X”。(4)顧客到窗口辦理業(yè)務(wù):休息區(qū)的顧客聽到呼叫就到相應(yīng)窗口進(jìn)行一對(duì)一服務(wù)。
根據(jù)以上的描述畫出相應(yīng)的用例圖如下:
三、系統(tǒng)類圖 我們可以識(shí)別系統(tǒng)中存在的主要實(shí)體類:顧客,柜臺(tái)營業(yè)員,維修管理員,保安。界面類:取票機(jī)。
根據(jù)以上的描述畫出相應(yīng)的類圖如下:
四、系統(tǒng)動(dòng)態(tài)模型 顧客取號(hào)排隊(duì)辦理業(yè)務(wù)工作流程:
(1)取號(hào):顧客取一張?zhí)柶保厦嬗刑?hào)碼、時(shí)間、辦理的業(yè)務(wù)類型等(2)休息等待:持號(hào)票在休息區(qū)休息并留意顯示屏音箱叫號(hào)。(3)按鍵叫號(hào):工作人員辦完一筆業(yè)務(wù)后按下叫號(hào)器上的下一位按鈕(4)前去辦理:叫號(hào)時(shí)根據(jù)顯示屏音箱的信息到指定位置享受一對(duì)一的服務(wù)。根據(jù)以上的描述畫出序列圖如下:
柜臺(tái)營業(yè)員辦理業(yè)務(wù)工作流程:
(1)登 錄:工作開始前,輸入員工代碼進(jìn)行登錄。(2)退 出:在工作結(jié)束后,退出系統(tǒng)。(3)順 呼:呼叫第一位或下一位顧客。
(4)重 呼:第一次呼叫顧客時(shí)沒有響應(yīng),重新進(jìn)行呼叫。
(5)轉(zhuǎn)移窗口:對(duì)單一業(yè)務(wù)隊(duì)列可在窗口間進(jìn)行轉(zhuǎn)移;對(duì)多業(yè)務(wù)隊(duì)列,不但可以在本業(yè)務(wù)隊(duì)列窗口間轉(zhuǎn)移,還可以在不同的業(yè)務(wù)隊(duì)列窗口間轉(zhuǎn)移。(6)優(yōu)先呼叫:碰到緊急或有特殊關(guān)系的顧客,可優(yōu)先呼叫。
(7)回 呼:顧客錯(cuò)過機(jī)會(huì)或需多柜臺(tái)服務(wù)時(shí),鍵入其號(hào)碼進(jìn)行呼叫(注:回呼的號(hào)碼必須是已被呼叫過的號(hào)碼)。(8)棄 號(hào):多次呼叫后,顧客依然沒有響應(yīng),可能顧客已棄號(hào),然后呼叫下一位顧客。
(9)詢 問:查詢當(dāng)前等待人數(shù)。根據(jù)以上的描述可畫出序列圖如下:
管理員管理業(yè)務(wù)工作流程:
(1)系統(tǒng)管理:對(duì)系統(tǒng)中排隊(duì)機(jī)、顯示屏、座席及其它與系統(tǒng)相關(guān)的硬件進(jìn)行管理;
(2)管理顧客動(dòng)態(tài):可實(shí)時(shí)提供當(dāng)前各部門所有顧客取號(hào)時(shí)間、服務(wù)情況和等待人數(shù)等有關(guān)參考信息;
(3)員工效率管理(即監(jiān)督工作):可獲知員工幾時(shí)上班、幾時(shí)下班、服務(wù)人次、平均和最長及最短服務(wù)時(shí)間等有關(guān)信息;
(4)統(tǒng)計(jì):統(tǒng)計(jì)多種有價(jià)值的信息,供管理層決策參考
五、狀態(tài)圖 排隊(duì)叫號(hào)系統(tǒng)包含以下六種狀態(tài):顧客到達(dá)、取票、等候辦理、辦理業(yè)務(wù)、柜員呼叫、顧客離去。它們之間的轉(zhuǎn)換規(guī)則是:
(1)需要辦理業(yè)務(wù)的顧客到達(dá)取票機(jī)前取票,并獲得打印。
(2)取到排隊(duì)號(hào)的顧客在休息區(qū)休息等待,留意顯示屏信息和語音提示。(2)柜臺(tái)營業(yè)員辦完一筆業(yè)務(wù)后按下叫號(hào)器上的下一位按鈕。(3)叫號(hào)時(shí)根據(jù)顯示屏音箱的信息到指定位置前去辦理業(yè)務(wù)。(4)辦理完業(yè)務(wù)后即可離開。根據(jù)以上的描述可繪制出狀態(tài)圖如下:
六、活動(dòng)圖 顧客對(duì)象的活動(dòng)圖:
(1)顧客在取票機(jī)的界面上輸入選擇所需辦理的相關(guān)業(yè)務(wù)。
(2)界面將信息傳遞到控制業(yè)務(wù)邏輯的對(duì)象中心顯示屏(動(dòng)態(tài)顯示所有等待服務(wù)的顧客號(hào)碼以及相關(guān)的業(yè)務(wù)信息)進(jìn)行驗(yàn)證,然后傳遞到窗口顯示屏(顯示顧客、業(yè)務(wù)受理員號(hào)碼及宣傳、服務(wù)用語)。(3)窗口顯示屏獲得到的信息顯示顧客辦理業(yè)務(wù)的詳細(xì)信息。柜員對(duì)象的活動(dòng)圖:
(1)柜員獲取中心顯示屏傳遞過來的信息,然后通過對(duì)象呼叫機(jī)進(jìn)行按鍵呼叫。(2)叫號(hào)時(shí)顧客根據(jù)顯示屏音箱的信息到指定位置前去辦理業(yè)務(wù),辦完業(yè)務(wù)后即可離開。
管理員對(duì)象的活動(dòng)圖:
(1)可實(shí)時(shí)提供當(dāng)前各部門所有顧客取號(hào)時(shí)間、服務(wù)情況和等待人數(shù)等有關(guān)參考信息。
(2)可獲知員工幾時(shí)上班、幾時(shí)下班、服務(wù)人次、平均和最長及最短服務(wù)時(shí)間等有關(guān)信息,進(jìn)行監(jiān)督。
(3)可監(jiān)督維修人員對(duì)系統(tǒng)中排隊(duì)機(jī)、顯示屏、座席及其它與系統(tǒng)相關(guān)的硬件進(jìn)行管理。
通過以上的描述可繪制出活動(dòng)圖如下:
七、系統(tǒng)構(gòu)件圖 在排隊(duì)叫號(hào)系統(tǒng)中,可以對(duì)參與者和主要的業(yè)務(wù)實(shí)體類分別創(chuàng)建對(duì)應(yīng)的構(gòu)件進(jìn)行映射。我們前面在類圖中創(chuàng)建的顧客類、柜臺(tái)營業(yè)員類、系統(tǒng)管理員類,所以可以映射出相同的構(gòu)件類,包括顧客構(gòu)件、柜臺(tái)營業(yè)員構(gòu)件、排隊(duì)叫號(hào)系統(tǒng)構(gòu)件,此外,還必須有一個(gè)主程序構(gòu)件。由以上描述可繪制出構(gòu)件圖如下:
八、系統(tǒng)部署圖 在排隊(duì)叫號(hào)系統(tǒng)中,系統(tǒng)包括四個(gè)節(jié)點(diǎn),分別是:主控箱節(jié)點(diǎn),對(duì)系統(tǒng)中排隊(duì)機(jī)、顯示屏、座席及其它與系統(tǒng)相關(guān)的硬件進(jìn)行管理;排隊(duì)機(jī)節(jié)點(diǎn),提供顧客排隊(duì)取號(hào)的票據(jù);叫號(hào)器節(jié)點(diǎn),提供給柜臺(tái)營業(yè)員通過叫號(hào)機(jī)對(duì)客戶進(jìn)行叫號(hào);窗口顯示屏節(jié)點(diǎn),用于動(dòng)態(tài)顯示所有等待服務(wù)的顧客號(hào)碼以及相關(guān)業(yè)務(wù)的信息;音箱節(jié)點(diǎn),用于提示顧客辦理相關(guān)業(yè)務(wù)。由以上描述可繪制出部署圖如下:
第二篇:銀行排隊(duì)系統(tǒng)需求分析報(bào)告
銀行排隊(duì)系統(tǒng)需求分析報(bào)告
1.引言
編寫目的
隨著時(shí)代的發(fā)展,信息技術(shù)在各服務(wù)行業(yè)中的重要作用得到充分體現(xiàn),通過服務(wù)模式的信息化,可以極大提高服務(wù)質(zhì)量,節(jié)約人力成本,提高工作效率。
本產(chǎn)品是針對(duì)銀行的排隊(duì)取號(hào)業(yè)務(wù)而開發(fā)的新一代銀行排隊(duì)系統(tǒng)。本產(chǎn)品較現(xiàn)有的銀行排隊(duì)系統(tǒng)在功能上有一定的擴(kuò)充,這體現(xiàn)在用戶端用戶體驗(yàn)的提升以及銀行內(nèi)部管理人員的管理效率的提升。
本產(chǎn)品目前版本號(hào):ver.1.0 1.2項(xiàng)目風(fēng)險(xiǎn) 1.3 文檔約定
1.4 預(yù)期讀者和閱讀建議 用戶:各大銀行
開發(fā)人員:熊宇軒,蔣雅楠,劉昕
項(xiàng)目經(jīng)理:王萌
營銷人員:暫缺
測(cè)試人員:蔣雅楠
文檔編寫入員:熊宇軒 1.3定義
靜態(tài)數(shù)據(jù):系統(tǒng)固化在內(nèi)的描述系統(tǒng)實(shí)現(xiàn)功能的一部分?jǐn)?shù)據(jù)。動(dòng)態(tài)數(shù)據(jù):在軟件運(yùn)行過程中用戶輸入的后系統(tǒng)輸出給用戶的一部分?jǐn)?shù)據(jù),也就是系統(tǒng)要處理的數(shù)據(jù)。
數(shù)據(jù)字典:數(shù)據(jù)字典中的名字都是一些屬性與內(nèi)容的抽象和概括,它們的特點(diǎn)是數(shù)據(jù)的“嚴(yán)密性”和“精確性”,沒有半點(diǎn)含糊。1.4參考資料
NEUSOFT實(shí)習(xí)資料
2任務(wù)概述
2.1目標(biāo)
本系統(tǒng)的設(shè)計(jì)目標(biāo)是能夠?qū)崿F(xiàn)客戶銀行排隊(duì)取號(hào),柜員柜臺(tái)叫號(hào)功能,并且使銀行管理者能夠查詢排隊(duì)記錄。系統(tǒng)應(yīng)該具有簡單,易用,小巧,經(jīng)典的特色,應(yīng)該能夠?qū)︺y行排隊(duì)取號(hào)業(yè)務(wù)進(jìn)行優(yōu)化,使其系統(tǒng)化,高效化,智能化。并保證工資管理的準(zhǔn)確性,簡易性,為學(xué)校財(cái)務(wù)人員提供便利。相應(yīng)的需求如下:
(1)普通客戶排隊(duì)取號(hào)
(2)VIP客戶優(yōu)先取號(hào)
(3)移動(dòng)端預(yù)約客戶身份驗(yàn)證取號(hào)
(4)柜員叫號(hào)
(5)客戶對(duì)柜員服務(wù)進(jìn)行評(píng)分
(6)數(shù)據(jù)的統(tǒng)計(jì),并且在經(jīng)理客戶端顯示數(shù)據(jù)
(7)經(jīng)理手動(dòng)插隊(duì)權(quán)限
(8)登錄信息管理。(9)人性化服務(wù)體驗(yàn)提升功能 本軟件系統(tǒng)的開發(fā)設(shè)計(jì)思想是:
1.系統(tǒng)應(yīng)符合銀行管理的規(guī)定,滿足銀行客戶和管理人員的需要,并達(dá)到操作過程中的直觀、方便、實(shí)用、安全等要求;
2.系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)維護(hù)人員對(duì)其進(jìn)行補(bǔ)充、維護(hù);
3.系統(tǒng)應(yīng)具備數(shù)據(jù)庫維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)行數(shù)據(jù)的添加、刪除、修改、備份等操作。
2.2用戶的特點(diǎn)
本軟件的最終用戶是各銀行網(wǎng)點(diǎn),由于該單位的員工的學(xué)歷、素質(zhì)較高,具有一定的計(jì)算機(jī)操作技能。本軟件需要至少一名系統(tǒng)管理人員,由于本軟件系統(tǒng)的易用性,并不需要受過專業(yè)訓(xùn)練人員。
2.3假定和約束
由于本軟件系統(tǒng)較小,且在linux系統(tǒng)下采用c 語言開發(fā),故在一般環(huán)境下基本沒有什么限制。
一個(gè)更為完善的工資管理系統(tǒng),應(yīng)提供更為便捷與強(qiáng)大的信息查詢功能,如相應(yīng)的網(wǎng)絡(luò)操作及服務(wù),由于開發(fā)時(shí)間和計(jì)算機(jī)數(shù)量有限,該系統(tǒng)并未提供這一功能。對(duì)信息的保護(hù)手段僅限于設(shè)置用戶級(jí)別,以及提供數(shù)據(jù)文件的備份,比較簡單,不能防止惡意的破壞,安全性能有待進(jìn)一步完善。
3需求規(guī)定
3.1對(duì)功能的規(guī)定
3.1.1功能模塊及描述
本系統(tǒng)主要功能模塊如下,系統(tǒng)功能模塊圖如圖: 1)用戶排隊(duì)取號(hào)模塊
叫號(hào)機(jī)當(dāng)前服務(wù)信息: 普通用戶VIP用戶預(yù)約用戶 圖1-1 該模塊可以實(shí)現(xiàn)普通用戶取票,VIP 用戶取票,移動(dòng)客戶端預(yù)約用戶身份驗(yàn)證取號(hào)業(yè)務(wù)。三個(gè)按鈕對(duì)應(yīng)三個(gè)不同的服務(wù)客戶對(duì)象類型,右側(cè)的對(duì)話框顯示當(dāng)前叫號(hào)情況。
普通用戶和VIP用戶會(huì)跳轉(zhuǎn)至圖1-2所示的頁面
窗體標(biāo)題負(fù)債業(yè)務(wù)當(dāng)前等候人數(shù)資產(chǎn)業(yè)務(wù)當(dāng)前等候人數(shù)中間業(yè)務(wù)當(dāng)前等候人數(shù)
圖1-2-1
三個(gè)按鈕對(duì)應(yīng)不同的業(yè)務(wù)類型,按下之后就可以取票,通過socket通信將排隊(duì)請(qǐng)求上傳到服務(wù)器,并在服務(wù)器端口進(jìn)行多線程任務(wù)管理,自動(dòng)為客戶分配排隊(duì)號(hào)碼。負(fù)債業(yè)務(wù)對(duì)應(yīng)柜臺(tái)1-3,資產(chǎn)業(yè)務(wù)對(duì)應(yīng)4-6,中間業(yè)務(wù)對(duì)應(yīng)7-9。
圖1-2-2 預(yù)約用戶可跳轉(zhuǎn)至圖1-2-2的界面,輸入手機(jī)號(hào)和驗(yàn)證碼來驗(yàn)證信息,并且取已預(yù)約的號(hào)
2)員工叫號(hào)模塊 叫號(hào)界面正在為 服務(wù)叫號(hào)正在呼叫下一個(gè)
圖1-3 員工可使用圖1-3所示界面進(jìn)行叫號(hào),叫號(hào)按鈕按下之后,會(huì)自動(dòng)生成正在呼叫的客戶排隊(duì)號(hào)碼。為了防止有的客戶取號(hào)之后又離開銀行的廢票現(xiàn)象的發(fā)生,我們?cè)O(shè)置了跳轉(zhuǎn)至下一個(gè)排隊(duì)用戶的按鈕。右側(cè)的對(duì)話框顯示正在服務(wù)的客戶,在柜員對(duì)面的客戶服務(wù)端按下開始服務(wù)按鈕之后,柜員的正在呼叫對(duì)話框內(nèi)將被置空,而有側(cè)的對(duì)話框會(huì)顯示相應(yīng)服務(wù)信息。
3)用戶服務(wù)模塊
用戶界面評(píng)分1開始服務(wù)2345結(jié)束服務(wù)
圖1-4 開始服務(wù)和結(jié)束服務(wù)按鈕對(duì)應(yīng)柜員端相應(yīng)功能,在按下結(jié)束服務(wù)按鈕之前,用戶要通過右側(cè)的按鈕對(duì)服務(wù)進(jìn)行評(píng)分。評(píng)分情況和服務(wù)時(shí)間可在經(jīng)理端顯示
4)經(jīng)理管理模塊
業(yè)務(wù)情況排隊(duì)情況業(yè)務(wù)分類序號(hào)刷新插隊(duì)退出排隊(duì)號(hào)取號(hào)時(shí)間已等候時(shí)間負(fù)債業(yè)務(wù)已受理情況資產(chǎn)業(yè)務(wù)柜員評(píng)分信息統(tǒng)計(jì)中間業(yè)務(wù)
圖1-5-1 經(jīng)理可使用圖1-5-1所示界面來查看當(dāng)前排隊(duì)信息,并且可以通過上方的插隊(duì)按鈕幫助特殊客戶插隊(duì)。業(yè)務(wù)情況排隊(duì)情況業(yè)務(wù)分類序號(hào)刷新插隊(duì)退出排隊(duì)號(hào)開始時(shí)間結(jié)束時(shí)間負(fù)債業(yè)務(wù)已受理情況資產(chǎn)業(yè)務(wù)柜員評(píng)分信息統(tǒng)計(jì)中間業(yè)務(wù)
圖1-5-2 經(jīng)理可以通過左側(cè)的已受理情況按鈕查詢以往客戶的排隊(duì)情況。業(yè)務(wù)情況排隊(duì)情況業(yè)務(wù)分類柜員號(hào)刷新插隊(duì)退出姓名已受理人數(shù)平均分負(fù)債業(yè)務(wù)已受理情況資產(chǎn)業(yè)務(wù)柜員評(píng)分信息統(tǒng)計(jì)中間業(yè)務(wù)
圖1-5-3 經(jīng)理可以通過評(píng)分按鈕來查看客戶對(duì)柜員的評(píng)分情況,便于內(nèi)部考核使用。信息統(tǒng)計(jì)排隊(duì)情況已受理情況柜員評(píng)分信息統(tǒng)計(jì)刷新
圖1-5-4 經(jīng)理可以查看總體的數(shù)據(jù)統(tǒng)計(jì)概要。
5)柜員/經(jīng)理登陸模塊
柜員登陸柜員號(hào)密碼登陸 系統(tǒng)可以通過查詢數(shù)據(jù)庫中的記錄來識(shí)別柜員/經(jīng)理的身份。
4.業(yè)務(wù)流程圖
系統(tǒng)的業(yè)務(wù)流程圖如下圖所示:
普通用戶取號(hào)VIP用戶取號(hào)插隊(duì)插隊(duì)插隊(duì)負(fù)債業(yè)務(wù)資產(chǎn)業(yè)務(wù)中間業(yè)務(wù)預(yù)約用戶取號(hào)等待叫號(hào)插隊(duì)柜員叫號(hào)開始服務(wù)經(jīng)理結(jié)束服務(wù)返回記錄客戶評(píng)分5.數(shù)據(jù)庫管理
5.1 動(dòng)態(tài)數(shù)據(jù)描述 輸入數(shù)據(jù):菜單選項(xiàng),查找關(guān)鍵字,新建記錄項(xiàng)。輸出數(shù)據(jù):由查詢關(guān)鍵字確定的數(shù)據(jù)庫記錄集合。內(nèi)部生成的數(shù)據(jù):中間查詢結(jié)果。數(shù)據(jù)庫描述
5.2數(shù)據(jù)庫描述
本系統(tǒng)使用MySQL數(shù)據(jù)庫
第三篇:排隊(duì)叫號(hào)系統(tǒng)示例文檔
前言
電信市場(chǎng)的迅猛發(fā)展在給電信企業(yè)帶來巨大商機(jī)的同時(shí)也帶來了巨大壓力。為了給客戶提供方便、快捷的服務(wù),通信企業(yè)在全國各地建立了眾多的服務(wù)中心,每天接待許許多多的客戶??蛻粼谵k理 繳費(fèi)、開通新服務(wù)、申請(qǐng)新賬戶、余額查詢、賬單詳細(xì)查詢等業(yè)務(wù)時(shí)需要排若干次隊(duì),甚至經(jīng)常發(fā)生排錯(cuò)隊(duì)伍的現(xiàn)象,耗費(fèi)了大量的時(shí)間和精力;另一方面,嘈雜、混亂的工作環(huán)境也影響了工作人員的辦事效率與服務(wù)質(zhì)量。
因此,為了提供高效率的服務(wù)、營造良好的工作環(huán)境,通信企業(yè)需要以高科技的客戶管理手段代替 傳統(tǒng)的人工排隊(duì)方式,從根本上解決傳統(tǒng)排隊(duì)給客戶及企業(yè)帶來的不利影響。
排隊(duì)管理系統(tǒng)是針對(duì)通信的行業(yè)特點(diǎn)專門研制開發(fā)出的、適用于各通信企業(yè)的理想的客戶解決方案。該系統(tǒng)可以根據(jù)客戶的流量即時(shí)調(diào)整工作人員及服務(wù)窗口的數(shù)量,最大程度減少客戶等候時(shí)間,很好地解決客戶在接受服務(wù)過程中所遇到的各種排隊(duì)、等候、擁擠和混亂現(xiàn)象。同時(shí)也能統(tǒng)計(jì)客戶情況及職員的工作狀況,為企業(yè)管理層提供有效的管理手段和決策依據(jù)。
設(shè)計(jì)思想
2.1基本情況及要求
提高營業(yè)大廳的綜合管理水平和合理的安排顧客辦理各種業(yè)務(wù),通過叫號(hào)服務(wù),讓顧客坐下來等候,避免窗口擁擠和排隊(duì),并且能合理的安排窗口服務(wù),減少顧客的等候時(shí)間;與此同時(shí),通信公司還可以通過排隊(duì)系統(tǒng)的數(shù)據(jù)生成對(duì)大廳的服務(wù)進(jìn)行科學(xué)化管理。
系統(tǒng)要求智能化管理 ,柜臺(tái)業(yè)務(wù)負(fù)責(zé)人可以根據(jù)實(shí)時(shí)顧客流量合理分配柜臺(tái)數(shù)量,實(shí)行動(dòng)態(tài)的科學(xué)管理。
根據(jù)柜員個(gè)人的業(yè)務(wù)能力可以劃分成不同的業(yè)務(wù)級(jí)別,在自己的級(jí)別內(nèi)可以實(shí)現(xiàn) “互助”式的柜臺(tái)轉(zhuǎn)移呼叫操作,并要隨著業(yè)務(wù)員能力的提高和降低隨時(shí)進(jìn)行增加和減少的量化控制。
統(tǒng)計(jì)業(yè)務(wù)人員在遇到特殊情況時(shí),能夠通過操作器、語音、計(jì)算機(jī)對(duì)話框等手段進(jìn)行對(duì)話和同級(jí)之間的調(diào)整。
在顧客需在多個(gè)柜臺(tái)(業(yè)務(wù))服務(wù)時(shí)),可持同一張?zhí)柶弊詣?dòng)進(jìn)入排隊(duì)隊(duì)列,而不需重新取號(hào)。
語音要求和背景音樂相融合或互相切換,并能播發(fā)其他相關(guān)語音信息。
通過柜員用操作器可進(jìn)行重呼、插隊(duì)、轉(zhuǎn)移、預(yù)約功能操作。
管理人員可通過表格、圖形兩種方式查詢、打印排隊(duì)信息與柜員工作量等數(shù)據(jù),并可設(shè)置系統(tǒng)服務(wù)參數(shù)。2.2 系統(tǒng)設(shè)計(jì)思想 系統(tǒng)設(shè)計(jì)基于適應(yīng)性、可靠性、應(yīng)用可設(shè)計(jì)性、系統(tǒng)完整性、結(jié)構(gòu)開放性的設(shè)計(jì)思想,采用模塊化的結(jié)構(gòu)方式,統(tǒng)一管理、分布處理,充分保證整個(gè)系統(tǒng)的先進(jìn)可靠性和良好的擴(kuò)展性。使?fàn)I業(yè)大廳通過本排隊(duì)管理系統(tǒng)的使用,形成良好有序的工作秩序,為顧客營造安靜、舒適的環(huán)境,為員工改善工作環(huán)境,提高工作效率,樹立良好的公眾形象。
充分考慮營業(yè)大廳現(xiàn)有的工作流程和行業(yè)特點(diǎn),結(jié)合以往安裝使用的實(shí)際經(jīng)驗(yàn),使系統(tǒng)的設(shè)計(jì)與現(xiàn)有情況相適合;設(shè)備上還要考慮到現(xiàn)在或?qū)砗同F(xiàn)有網(wǎng)絡(luò)的適當(dāng)融合(如,服務(wù)語音監(jiān)控錄入系統(tǒng)、電視系統(tǒng)、大屏幕系統(tǒng)等)
系統(tǒng)設(shè)計(jì)除考慮顧客正常流程時(shí)排隊(duì)處理,還充分考慮顧客由于某些原因而出現(xiàn)特殊情況如漏號(hào)、需轉(zhuǎn)移至其它柜臺(tái)、優(yōu)先辦理、取錯(cuò)號(hào)碼時(shí)的排隊(duì)處理,保證系統(tǒng)有秩序地進(jìn)行。
基于柜員的工作情況需求,本系統(tǒng)可支持的呼叫終端采用物理呼叫器或虛擬呼叫終端,支持兩種同時(shí)采用的方式,使柜員能夠根據(jù)現(xiàn)實(shí)情況選擇適合的方式,并可隨著大廳計(jì)算機(jī)化的建立而逐步增加虛擬終端的使用比例。
本系統(tǒng)設(shè)計(jì)了強(qiáng)大的管理和統(tǒng)計(jì)功能,為通信行業(yè)進(jìn)行現(xiàn)代化的科學(xué)管理提供了有效而便利的手段。
充分考慮系統(tǒng)工作的可靠性設(shè)計(jì),具有軟件升級(jí)時(shí)的數(shù)據(jù)自動(dòng)保護(hù)功能,避免因系統(tǒng)升級(jí)而造成數(shù)據(jù)丟失或損壞。具有分散處理或備份功能,萬一主控計(jì)算機(jī)系統(tǒng)出現(xiàn)故障,另外副主控計(jì)算機(jī)仍然運(yùn)行,待網(wǎng)絡(luò)恢復(fù)后自動(dòng)將有關(guān)數(shù)據(jù)上傳。2.3 排隊(duì)系統(tǒng)設(shè)備配置
現(xiàn)場(chǎng)情況: 多 種業(yè)務(wù),多個(gè)柜臺(tái)
設(shè)備配置: 立式取號(hào)機(jī) 1 臺(tái) ;漢字窗口顯示屏每個(gè)柜臺(tái)(窗口)1 塊;物理呼叫器每個(gè)柜臺(tái)(窗口)1 只; 2.4 業(yè)務(wù)隊(duì)列設(shè)計(jì)
2.5 取號(hào)機(jī)面板示意圖 :
2.6 票號(hào)示意圖
? 系統(tǒng)概述
3.1 排隊(duì)系統(tǒng)說明
3.1.1 顧客辦理業(yè)務(wù)流程圖
3.1.2 顧客辦理業(yè)務(wù)示意圖
3.2 硬件系統(tǒng)功能說明
3.2.1 取號(hào)機(jī)(立式)
立式,按鍵式取號(hào),顧客通過取號(hào)機(jī)自助取號(hào);
取號(hào)機(jī)面板上設(shè)立代表服務(wù)內(nèi)容的按鍵(對(duì)應(yīng)相應(yīng)的服務(wù)隊(duì)列)顧客按鍵后,打印機(jī)打印出一個(gè)票號(hào),同時(shí)系統(tǒng)內(nèi)部將該號(hào)碼轉(zhuǎn)移到相應(yīng)的服務(wù)隊(duì)列中去排隊(duì);面板上和取號(hào)機(jī)上可根據(jù)需要印上行業(yè)標(biāo)志 LOGO等;
取號(hào)機(jī)可以根據(jù)客戶要求,在打印紙將要用盡時(shí)發(fā)出警報(bào)提醒,便于操作員及時(shí)更換打印紙。
取號(hào)機(jī)外觀可以是立式,也可以根據(jù)現(xiàn)場(chǎng)配制臺(tái)式;
取號(hào)機(jī)為用戶提供多種功能接口
網(wǎng)絡(luò)接口 :用于連接網(wǎng)絡(luò)主機(jī),便于網(wǎng)絡(luò)管理及數(shù)據(jù)傳輸。磁卡機(jī)接口 :用于特種行業(yè)的身份識(shí)別,如重要大戶等。
顯示接口 :用于連接電視機(jī)、LED顯示屏等,使娛樂、排隊(duì)一替化。
觸摸屏接口:用于連接觸摸屏,使取號(hào)用戶在查詢中直接取號(hào)。
顯示取號(hào)時(shí)間、等候人數(shù)、等候時(shí)間。
可以設(shè)置在任意時(shí)間段不出號(hào)票。
可以在取號(hào)機(jī)內(nèi)安置語音系統(tǒng)用于呼叫或其它特殊需要。
可以根據(jù)客戶要求設(shè)定等候人數(shù) “臨界值”,當(dāng)某一個(gè)服務(wù)取號(hào)等候人數(shù)超過一定數(shù)量時(shí),可以發(fā)出提示告知當(dāng)前等候人數(shù)較多,大概需要等候時(shí)間等等(選項(xiàng));或者當(dāng)排隊(duì)人數(shù)超過 “臨界值”后,自動(dòng)向計(jì)算機(jī)(或警告顯示屏)傳輸警告界面,提示有關(guān)負(fù)責(zé)人需要增加服務(wù)柜臺(tái)等信息。取號(hào)機(jī)按鍵壽命 50萬次以上,為了便于將來業(yè)務(wù)變更和調(diào)整的需要面板可以更換;
取號(hào)機(jī)系統(tǒng)可以采用整體式(如顧客在取號(hào)機(jī)的觸摸屏上查詢,查詢清楚后,可以按觸摸屏上的取號(hào)提示,同樣可以在取號(hào)機(jī)上得到一個(gè)票號(hào))。
如果將來有采用觸摸屏技術(shù)取號(hào),可以采用我司即將推出的新款取號(hào)機(jī)機(jī)箱(觸摸屏式),屆時(shí)只需要改裝即可無須花費(fèi)整機(jī)的價(jià)錢。3.2.2 呼叫器
特殊功能
呼叫器分為物理呼叫器和虛擬呼叫器,二者可并用或單獨(dú)使用。
工作人員通過呼叫器呼叫顧客辦理業(yè)務(wù)。
通過定義鍵,可以在對(duì)服務(wù)過的顧客號(hào)碼進(jìn)行標(biāo)注業(yè)務(wù)類別,如,某一個(gè)大項(xiàng)服務(wù)名稱中含有 4 種以上的種業(yè)務(wù),可設(shè)定其業(yè)務(wù)編碼為 01、02、03、04? 在順呼下一位顧客前,可以通過 功能 + 輸入代碼的方式將剛辦理完畢的業(yè)務(wù)進(jìn)行標(biāo)注,體現(xiàn)在業(yè)務(wù)報(bào)表中,為杜絕遺漏標(biāo)注的操作,可以進(jìn)行設(shè)定,如果沒有標(biāo)注業(yè)務(wù)類別操作,順呼鍵將無法繼續(xù),用以提醒柜員進(jìn)行標(biāo)注操作(上述功能已經(jīng)在上海滬東供電公司成功運(yùn)用)。6 位 LCD 液晶顯示:前兩位顯示隊(duì)列號(hào),后四位顯示顧客排隊(duì)號(hào)碼
查詢功能:可通過呼叫器查詢等候人數(shù)、查詢服務(wù)過人數(shù)或者通過
柜臺(tái)號(hào) + 功能 + 查詢的操作方式查詢其它業(yè)務(wù)的排隊(duì)等候人數(shù)。轉(zhuǎn)移插入功能:呼叫器可將當(dāng)前票號(hào),轉(zhuǎn)移插入到其他隊(duì)列的任何位置。
根據(jù)營業(yè)安排,可以隨時(shí)改變業(yè)務(wù)內(nèi)容去幫助其它柜臺(tái)。
對(duì)有特殊要求的柜臺(tái)(例如,顧客需要先遞交申請(qǐng)單據(jù)進(jìn)行審驗(yàn)然后等候通知的情況下)還可以將操作器設(shè)置成手動(dòng)輸入號(hào)碼進(jìn)行呼叫的方式,柜員將審驗(yàn)通過顧客的號(hào)碼輸入操作器上然后進(jìn)行呼叫(該功能已經(jīng)應(yīng)用到北京 301 醫(yī)院的藥房取藥系統(tǒng)、大連車管所和沈陽出入境管理處也將采用該種呼叫方式)。
基本功能:
工作人員通過呼叫器呼叫顧客辦理業(yè)務(wù)。
登錄:在一天工作開始前,輸 入員工代碼(最大 4 位數(shù))進(jìn)行登錄(對(duì)于工作位置固定的員工,可以進(jìn)行設(shè)置,每天只需要按 “ 登錄 ” 鍵即可,無須輸入員工代碼,簡化登錄的操作過程)。
退出:在一天工作結(jié)束后,退出系統(tǒng)。
當(dāng)工作人員暫時(shí)離開,可通過終端關(guān)閉此柜臺(tái),同時(shí),該柜臺(tái)顯示屏自動(dòng)關(guān)閉。可選擇物理終端(硬件組成,放在柜臺(tái)上),和虛擬終端(軟件,安裝在電腦中)兩種功能。
順呼:呼叫第一位或下一位顧客。
重呼:第一次呼叫顧客時(shí)沒有響應(yīng),可以多次重新進(jìn)行呼叫。
棄號(hào):多次呼叫后,顧客依然沒有響應(yīng),可能顧客已棄號(hào),然后呼叫下一位顧客;還可以按照客戶要求,系統(tǒng)內(nèi)進(jìn)行設(shè)置,在重呼若干次仍舊沒有前來的情況下,系統(tǒng)直接按棄號(hào)處理(漏號(hào)顧客處理方法之一)
優(yōu)先:碰到緊急或有特殊關(guān)系的顧客,可優(yōu)先呼叫。
轉(zhuǎn)移:偶爾顧客拿錯(cuò)部門號(hào)票或需要多柜臺(tái)服務(wù),可即時(shí)傳送其他部門,無須重新取號(hào)等待。
延后:當(dāng)多次重呼后,顧客依然沒有響應(yīng),把該顧客延后到本服務(wù)類型的最后一位(漏號(hào)顧客處理方法之二)
柜臺(tái):可修改柜臺(tái)服務(wù)類型,從而實(shí)現(xiàn)臨時(shí)幫助其它服務(wù)柜臺(tái)的目的。
清屏:清除錯(cuò)誤的輸入。插前:顧客需多柜臺(tái)服務(wù)時(shí),完成一段服務(wù)后,其號(hào)碼被轉(zhuǎn)移到另一隊(duì)列的首位。
儲(chǔ)存:當(dāng)呼叫時(shí)而顧客恰好不在,可暫時(shí)儲(chǔ)存,然后繼續(xù)呼叫下一位顧客,辦理完畢后再重新呼叫,顧客無須擔(dān)心錯(cuò)過時(shí)間。
詢問:查詢當(dāng)前等待人數(shù)。
查看:查看儲(chǔ)存的號(hào)碼。(暫未實(shí)現(xiàn),因?yàn)樾枨竺嫘。绻幸罂梢詫?shí)現(xiàn))
密碼登錄:根據(jù)需要,可設(shè)定用戶個(gè)人密碼,使用密碼登錄。
呼叫終端物理參數(shù)
長 :16 cm 寬 :9 cm 高 :3.5 cm 電源電壓 :12V(由通信控制器供電)最大功耗 :2W 3.2.3 窗口屏
(1).數(shù)碼管窗口顯示屏
? 安裝于服務(wù)窗口上方;
? 4位數(shù)碼管顯示,動(dòng)態(tài)閃爍顯示該窗口正在呼叫號(hào)碼;
? 靜態(tài)顯示正在辦理業(yè)務(wù)中的顧客排隊(duì)號(hào)碼。
數(shù)碼管窗口屏物理參數(shù) 37.5cm * 14.3cm * 5cm 最大功耗 :20W
(2).點(diǎn)陣窗口顯示屏
? 安裝于服務(wù)窗口上方;
? φ 5,4個(gè)漢字顯示,動(dòng)態(tài)顯示該窗口正在呼叫號(hào)碼、文明禮貌用語和廣告信息; ? 靜態(tài)顯示正在辦理業(yè)務(wù)中的顧客排隊(duì)號(hào)碼;
? 靜態(tài)還可以顯示四個(gè)漢字以內(nèi)的服務(wù)業(yè)務(wù)名稱 如 “話費(fèi)查詢”等 ? 顯示次數(shù)可以按照客戶要求設(shè)定。? 滾動(dòng)方式可以按照客戶要求設(shè)定。
? 設(shè)置屏幕保護(hù)功能 ,在長時(shí)間不用時(shí),可以進(jìn)行熄屏保護(hù)。點(diǎn)陣窗口顯示屏 物理參數(shù) 點(diǎn)陣 42.6cm * 12.4cm * 5cm 最大功耗 :20W
3.2.4 綜合屏
? 安裝于等候區(qū);
? 動(dòng)態(tài)閃爍顯示辦理某項(xiàng)業(yè)務(wù)的顧客序號(hào)和相應(yīng)窗口號(hào); ? 靜態(tài)顯示正在辦理某項(xiàng)業(yè)務(wù)的顧客序號(hào)和相應(yīng)窗口號(hào); ? 每組綜合屏的數(shù)量可以自行定義; ? 所顯示業(yè)務(wù)類型可自行定義。
? 閃爍次數(shù)可以設(shè)定;顯示單元可以增加用以增加效果。
? 安裝于等候區(qū)顯要處,動(dòng)態(tài)閃爍顯示,提示某位顧客前去相應(yīng)窗口辦理;
? 呼叫時(shí)帶有尖頭方向指示,使得聽到呼叫的顧客很容易分辨窗口的左右方向,節(jié)省尋找對(duì)應(yīng)窗口時(shí)間。綜合顯示屏:
3.2.6 通訊控制器
通訊控制器是用于連接系統(tǒng)各設(shè)備、為設(shè)備提供電源和通訊信號(hào)。
通訊控制器共有 16個(gè)RS-485總線接口(RJ-45網(wǎng)絡(luò)接口)一個(gè)PC機(jī)用RS-232串口(DB9口)。一個(gè)電源指示燈、一個(gè)狀態(tài)指示燈。
電源: 15V-20A開關(guān)電源供電(內(nèi)置電源適配器)。3.2.7 語音系統(tǒng)
吸頂式
? 利用樂音或語音傳遞排隊(duì)等待信息;
? 語音的呼叫方式根據(jù)客戶的要求設(shè)定,例如:順呼為 “叮咚”提示音加語音呼叫,重呼時(shí)為直接語音呼叫等等 ?
? 采取背景音樂與語音呼叫相融合形式; ? 音源設(shè)置要合理,避免大廳回音或震蕩;
? 提示音除了 “叮咚”音外可以有多種樂音供客戶進(jìn)行個(gè)性化選擇。? 可以分樓層、分業(yè)務(wù)類型進(jìn)行不同樂音提示和控制。? 呼叫次數(shù)可以按照要求設(shè)定。
語音提示 “叮咚 請(qǐng)×××1到 ××號(hào)窗口 + 請(qǐng)×××2等候” 3.2.8 告警信息屏(可選)
? 告警信息屏用于對(duì)系統(tǒng)出現(xiàn)特殊情況時(shí) ,提供文字告警信息。如:打印紙張將盡、某隊(duì)列人數(shù)超量、前臺(tái)柜員求助信息等。顯示標(biāo)題和安裝方式可由用戶自行選擇。? 安裝數(shù)量根據(jù)要求而定。3.3 網(wǎng)絡(luò)系統(tǒng)說明
3.3.1 網(wǎng)絡(luò)結(jié)構(gòu)示意圖
3.3.2 設(shè)備連接示意圖
排隊(duì)管理系統(tǒng)說明
網(wǎng)點(diǎn)排隊(duì)系統(tǒng)結(jié)構(gòu)圖
3.4 軟件系統(tǒng)說明
3.4.1 軟件結(jié)構(gòu)示意圖
3.4.2 管理軟件功能
3.4.2.1 底層數(shù)據(jù)庫模塊
底層數(shù)據(jù)庫模塊對(duì)系統(tǒng)中硬件設(shè)備、管理信息、人員信息、柜臺(tái)參數(shù)、隊(duì)列參數(shù)等提供底層數(shù)據(jù)支持,并進(jìn)行處理,作為上層模塊的信息源。
3.4.2.2 硬件設(shè)置模塊
硬件系統(tǒng)模塊是設(shè)置系統(tǒng)硬件設(shè)備地址及相關(guān)硬件參數(shù),顯示硬件設(shè)備的工作狀態(tài)。
3.4.2.3 前臺(tái)操作模塊
前臺(tái)操作模塊是對(duì)前臺(tái)各項(xiàng)業(yè)務(wù)進(jìn)行操作處理。并提供內(nèi)部通信服務(wù)。
3.4.2.4 實(shí)時(shí)監(jiān)控模塊
實(shí)時(shí)監(jiān)控模塊是對(duì)業(yè)務(wù)隊(duì)列的實(shí)時(shí)信息及前臺(tái)員工處理業(yè)務(wù)的實(shí)時(shí)信息進(jìn)行監(jiān)控。管理人員可以通過監(jiān)控信息對(duì)前臺(tái)柜員及隊(duì)列情況進(jìn)行直觀的觀察。
3.4.2.5 權(quán)限管理模塊
權(quán)限管理模塊是對(duì)系統(tǒng)操作人員的權(quán)限進(jìn)行管理,為系統(tǒng)提供安全障。3.4.2.6 數(shù)據(jù)分析模塊
數(shù)據(jù)分析模塊對(duì)系統(tǒng)中的各項(xiàng)數(shù)據(jù),進(jìn)行有效分析??商峁┒喾N數(shù)據(jù)分析結(jié)果如:顧客流量曲線圖、業(yè)務(wù)隊(duì)列柱狀圖、顧客業(yè)務(wù)餅形圖。并為報(bào)表打印模塊提供數(shù)據(jù)基礎(chǔ)。(后附示意圖,僅供參考)
3.4.2.7 報(bào)表打印模塊
報(bào)表打印模塊在系統(tǒng)數(shù)據(jù)分析的基礎(chǔ)上,對(duì)數(shù)據(jù)進(jìn)行直觀化的報(bào)表輸出。(后附部分報(bào)表,僅供參考)
3.5 特殊功能說明
3.5.1 遠(yuǎn)程告警系統(tǒng):是通過實(shí)時(shí)監(jiān)控模塊、數(shù)據(jù)分析模塊、前臺(tái)操作模塊及其他設(shè)備所提供的信息,進(jìn)行系統(tǒng)分析發(fā)后出告警提示。如:某取號(hào)機(jī)打印紙張將盡、某窗口設(shè)備連接異常、某隊(duì)列等候人數(shù)超量等信息提示??膳浜细婢畔⑵?、樂音提示及電腦主機(jī),使管理人員能及時(shí)準(zhǔn)確的掌握,前臺(tái)所出現(xiàn)的一切情況,作出正確判斷、快速解決問題。
3.5.2 斷電保護(hù)功能
操作系統(tǒng)在突然斷電的情況下,可保留原有數(shù)據(jù),并在重新啟動(dòng)后繼續(xù)記錄
工程施工
4.1 布線
本系統(tǒng)采用總線形網(wǎng)絡(luò)結(jié)構(gòu),連接線纜使用五類雙絞線,接頭為 RJ45,因此可以利用大樓原有的綜合布線作為系統(tǒng)的傳輸線纜,避免了再次布線的繁瑣、節(jié)約了工程費(fèi)用。主通信控制器放置在總控制室,通過傳輸線纜連接整個(gè)大樓的排隊(duì)系統(tǒng)終端設(shè)備。
4.2 設(shè)備安裝
各個(gè)通信控制器放置在各樓層原有網(wǎng)絡(luò)系統(tǒng)接口附近,自帶電源示適配器,接 220V 交流電源;
取號(hào)機(jī)根據(jù)現(xiàn)場(chǎng)環(huán)境放置在各樓層入口處或其它位置,通過五類線與子通信控制器連接;
信息顯示屏安裝在柜員工作臺(tái)上方位置,通過五類線和端子盒與子通信控制器連接。
物理呼叫終端放置在柜員的辦公臺(tái)上,與端子盒之間通過 PS-2 線連接,端子盒通過五類線與子通信控制器連接,不需接電;
系統(tǒng)軟件通過機(jī)算機(jī)串口與主通信控制器連接,通過 RJ45 接口接入大樓局域網(wǎng);
系統(tǒng)服務(wù)器放置在大樓信息中心,可用現(xiàn)有設(shè)備。
4.3 系統(tǒng)運(yùn)行環(huán)境
溫度:-10 ℃ — 55 ℃ 濕度: 45% — 90% 為保證系統(tǒng)的可靠穩(wěn)定運(yùn)行,建議為系統(tǒng)服務(wù)器使用 UPS 進(jìn)行斷電保護(hù)。電腦最低配置如下: 主 頻 : P4 1G 以上 內(nèi) 存 : 256M 以上 硬 盤 : 40G 以上 顯示器 : VGA 14 英寸 RS-232 口
網(wǎng) 卡 : 10/100M 以太網(wǎng)卡 操作系統(tǒng) : WINDOWS2000
售后服務(wù)
5.1 系統(tǒng)安裝
我公司的工程技術(shù)人員,均經(jīng)過專業(yè)培訓(xùn),具有豐富的理論和實(shí)踐工作經(jīng)驗(yàn) , 對(duì)安裝與調(diào)試的每一個(gè)環(huán)節(jié)都采取嚴(yán)格的質(zhì)量管理,以確保每一個(gè)環(huán)節(jié)品質(zhì)達(dá)到優(yōu)良;這一服務(wù)的標(biāo)準(zhǔn)是:我們將安排由專門工程師提供現(xiàn)場(chǎng)的安裝、調(diào)試服務(wù)。服務(wù)的驗(yàn)收以系統(tǒng)達(dá)到預(yù)計(jì)的性能和功能,并得到客戶的滿意與認(rèn)可為準(zhǔn)。
5.1.1 公司對(duì)工程的每一個(gè)環(huán)節(jié),無論其大小,都派專業(yè)技術(shù)人員到現(xiàn)場(chǎng)安裝,避免完全依賴當(dāng)?shù)卮戆惭b所可能導(dǎo)致的任何失誤;
5.1.2 公司負(fù)責(zé)系統(tǒng)所有器件、設(shè)備、材料到工程現(xiàn)場(chǎng)的運(yùn)輸、安裝及調(diào)試工作;
5.1.3 對(duì)于安裝所涉及的各個(gè)器件部分,必須在總公司連續(xù)運(yùn)行一周以后,經(jīng)
全部檢測(cè)合格后方可打包發(fā)送。
5.2 售后服務(wù)及質(zhì)量保證
及時(shí)響應(yīng)
如客戶有任何關(guān)于合同中所涵蓋的系統(tǒng)技術(shù)問題,在工作時(shí)間內(nèi)可隨時(shí)撥打公司電話,我們將通過電話協(xié)助或派技術(shù)人員客戶及時(shí)解決難題,從接到求助電話到技術(shù)人員到達(dá)現(xiàn)場(chǎng)不超過 12 小時(shí)。
在工程結(jié)束后,鑒于貴公司是初次安裝排隊(duì)系統(tǒng),為確保系統(tǒng)穩(wěn)定運(yùn)行和彌補(bǔ)預(yù)先理想設(shè)定流程和實(shí)際發(fā)生情況之間的差異情況,我司將派專人專項(xiàng)負(fù)責(zé)該工程后期工作,主要任務(wù): 協(xié)助解決運(yùn)行初期所遇到的技術(shù)問題,隨時(shí)發(fā)現(xiàn),隨時(shí)調(diào)整;
負(fù)責(zé)對(duì)相關(guān)人員的技術(shù)專項(xiàng)培訓(xùn),熟悉整個(gè)系統(tǒng)的各個(gè)環(huán)節(jié),便于維護(hù);
負(fù)責(zé)對(duì)操作員工的專項(xiàng)培訓(xùn),達(dá)到熟練運(yùn)用,避免前一個(gè)月試運(yùn)行期間由于操作失誤給系統(tǒng)運(yùn)行帶來的不便;
負(fù)責(zé)對(duì)貴公司技術(shù)負(fù)責(zé)人的專項(xiàng)培訓(xùn)和技術(shù)交流,做到一般小問題可以自行解決,不耽誤運(yùn)行;
負(fù)責(zé)收集前期運(yùn)行時(shí)期可能出現(xiàn)的問題,反饋總公司進(jìn)行調(diào)整(系統(tǒng)硬件、新增加的特殊要求、預(yù)想流程和實(shí)際運(yùn)用之間差異以及運(yùn)行之前沒有考慮到的實(shí)際因素等)
5.2.3 提供專項(xiàng)的操作和維護(hù)技術(shù)手冊(cè)
我司將為客戶項(xiàng)目成立一個(gè)專門的管理小組,并將指派一名項(xiàng)目經(jīng)理專門負(fù)責(zé):與客戶就項(xiàng)目的實(shí)施、變更管理、售后服務(wù)進(jìn)行單點(diǎn)聯(lián)系和統(tǒng)一的協(xié)調(diào)。該項(xiàng)目經(jīng)理有責(zé)任協(xié)調(diào)和組織豐富的資源為客戶提供最優(yōu)質(zhì)的服務(wù)。
項(xiàng)目經(jīng)理將會(huì)對(duì)客戶項(xiàng)目的售后服務(wù)情況進(jìn)行記錄,包括故障登記、備件更換和服務(wù)措施完成情況等,并與客戶保持及時(shí)溝通。希望客戶方亦指派一名專門的聯(lián)絡(luò)代表,以便在項(xiàng)目需要專業(yè)性支持和維護(hù)時(shí),作為客戶方面的代表與我們的項(xiàng)目經(jīng)理進(jìn)行溝通與合作。在整個(gè)維修和服務(wù)的執(zhí)行過程中,負(fù)責(zé)合理調(diào)配資源,并爭(zhēng)取將整個(gè)售后服務(wù)實(shí)施過程中對(duì)用戶業(yè)務(wù)的影響降到最低。
5.3售后承諾
5.3.1 我公司對(duì)該系統(tǒng)壹年保修、終身維護(hù)。
5.3.2 保修期自系統(tǒng)安裝、調(diào)試完畢并經(jīng)雙方驗(yàn)收合格之日算起。保修期內(nèi),屬系統(tǒng)本身技術(shù)問題或其他非人為因素而造成的故障,由公司免費(fèi)保修。保修期滿后,只收取維修工本費(fèi),或另簽訂維護(hù)協(xié)議。
5.3.3 為確保系統(tǒng)的良好運(yùn)轉(zhuǎn),具體維護(hù)方案如下:
安裝、日常維護(hù)、維修服務(wù)檔案,詳細(xì)記錄設(shè)備的使用、維修情況。
試運(yùn)行 1-2個(gè)月后,召開雙方技術(shù)碰頭會(huì),主要用于改進(jìn)和調(diào)整,理想設(shè)定和實(shí)際運(yùn)行之間有無不足和改進(jìn)以及經(jīng)過運(yùn)行和實(shí)際操作后需要新增的功能等。
正常運(yùn)行一年后,免費(fèi)進(jìn)行第二次升級(jí)和開發(fā)工作。
對(duì)于硬件設(shè)備提供長期的后備器件,先更換后維修,保證客戶的正常使用。
免費(fèi)提供系統(tǒng)使用培訓(xùn)和軟件維護(hù)。協(xié)助提供消耗品,保證易耗品的供應(yīng)。
我們將在管理上、制度上、物資上、技術(shù)上全面考慮該項(xiàng)目的售后服務(wù),為該系統(tǒng)少出問題、不出問題提供全面保障。
5.4 排隊(duì)管理系統(tǒng)運(yùn)行后續(xù)服務(wù)
5.4.1 排隊(duì)管理系統(tǒng)采取完全開放式接口,隨時(shí)變更每一個(gè)窗口的業(yè)務(wù)類型,及對(duì)業(yè)務(wù)窗口的增加、刪除、變更等可與所有開發(fā)平臺(tái)接口,方便做系統(tǒng)的二次開發(fā)和功能擴(kuò)展。
5.4.2排隊(duì)系統(tǒng)今后的任何一次革新或升級(jí)(以及外觀的改善)如果客戶需要,我司都將免費(fèi)和為客戶予以更換和調(diào)整.
第四篇:排隊(duì)叫號(hào)系統(tǒng)介紹
排隊(duì)技術(shù)發(fā)展史回顧
排隊(duì)技術(shù)最早出現(xiàn)于上個(gè)世紀(jì)的六、七十年代 , 開始主要集中在歐美等西方國家,后迅速得到普及。在國外,人們?nèi)ャy行等機(jī)構(gòu)辦理業(yè)務(wù)時(shí),先取號(hào)再等候呼叫已屬于常識(shí),生產(chǎn)排隊(duì)管理系統(tǒng)的公司也隨著市場(chǎng)的發(fā)展逐漸形成一個(gè)專門的行業(yè)--排隊(duì)技術(shù)產(chǎn)業(yè)。
起初 , 人們只是在進(jìn)入營業(yè)場(chǎng)所的門口前領(lǐng)取一個(gè)早已制作好的號(hào)牌或印有號(hào)碼的紙條 , 然后等著麥克風(fēng)里的人工呼叫。隨著現(xiàn)代技術(shù)的不斷發(fā)展特別是計(jì)算機(jī)技術(shù)的應(yīng)用,使排隊(duì)技術(shù)進(jìn)入一個(gè)全新的天地,就是我們今天看到的樂音提示、語音合成呼叫(Voice-calling);呼叫終端(OperationTerminal);以柜臺(tái)顯示(CounterDisplay)和綜合顯示(Main Display)為主的各種數(shù)碼管顯示、LCD 顯示、LED 顯示、PDP 顯示...;號(hào)碼發(fā)放也由取號(hào)機(jī)自動(dòng)打印(Ticket Dispenser)到觸摸屏查詢?nèi)√?hào)、特殊識(shí)別取號(hào)等等...排隊(duì)系統(tǒng)的服務(wù)范圍也從營業(yè)廳迅速拓展到其他行業(yè)如:電信、快餐廳、涉外辦事機(jī)構(gòu)、海關(guān)、醫(yī)院、藥房等行業(yè)。。服務(wù)功能也由單純的優(yōu)化服務(wù)環(huán)境和客戶秩序管理漸漸滲透到使用者的服務(wù)系統(tǒng)管理之中,成為使用機(jī)構(gòu)行之有效的輔助服務(wù)手段。
在我國,排隊(duì)產(chǎn)品概念的引進(jìn)不過三、四年光景,特別是在中國加入 WTO 以后,批國人走出國門,將很多優(yōu)秀和先進(jìn)的服務(wù)方法、理念帶回國內(nèi)?!?排隊(duì)技術(shù) ” 也隨之被引進(jìn)國內(nèi),并在我國特有的高速經(jīng)濟(jì)發(fā)展的環(huán)境里得到迅速的普及和應(yīng)用?!?排隊(duì) ” 這個(gè)我們?cè)偈煜げ贿^的詞匯因?yàn)?“ 排隊(duì)技術(shù) ” 的出現(xiàn)而改變了它原有的含義 , 在銀行、電信、郵局、海關(guān)、保險(xiǎn)公司等公共場(chǎng)所,您再也無須透支體力和精力去排隊(duì),以往那種習(xí)慣了的 “ 排隊(duì)長龍 ” 不見了,取而代之的是用您只需先取出一個(gè)票號(hào),就可以到一旁休息區(qū)等候,當(dāng)排到您時(shí),通過語音、顯示就會(huì)提醒您到相應(yīng)的窗口辦理業(yè)務(wù)...“ 一對(duì)一 ” 式的服務(wù)在尊敬顧客的同時(shí)又使得您的隱私得到極大的尊重,“ 一米線 ” 形同虛設(shè)的現(xiàn)象一去不復(fù)返 , 無形的 “ 一米線 ” 更拉近了服務(wù)者與被服務(wù)者的距離。
在產(chǎn)品的使用者方面:通過排隊(duì)系統(tǒng)安排辦理順序,極大減輕了工作人員的精神壓力,即提高了工作效率又避免了工作中可能導(dǎo)致的失誤。不僅如此,管理者還可以通過排隊(duì)系統(tǒng)中的管理功能對(duì)操作員進(jìn)行工作分配,消除服務(wù)瓶頸,依靠時(shí)實(shí)的管理統(tǒng)計(jì)功能為管理者提供詳實(shí)的動(dòng)態(tài)數(shù)據(jù),讓有限的人力、設(shè)施資源得到最合理和高效的利用,更重要的是:在 “ 一切以顧客為中心 ” 的今天,排隊(duì)系統(tǒng)已在服務(wù)機(jī)構(gòu)和顧客之間架起一座新式的個(gè)性化聯(lián)接橋梁,成為企業(yè)打造服務(wù)品牌,吸引客源、提高綜合效益的重要輔助手段。不難看出,排隊(duì)技術(shù)在中國的迅速普及和應(yīng)用是我國經(jīng)濟(jì)騰飛,文明進(jìn)步的必然結(jié)果。由于我國國情特殊,不同的行業(yè)、地域?qū)е鹿芾砗头?wù)模式上的千差萬別,“中國的”、“本地的”、“ 特有的”排隊(duì)技術(shù)已成為當(dāng)今中國排隊(duì)產(chǎn)品發(fā)展的必然選擇和發(fā)展趨勢(shì)。
我們有理由相信,科學(xué)的進(jìn)步,經(jīng)濟(jì)的發(fā)展,必將帶動(dòng)精神文明與物質(zhì)文明的進(jìn)一步提高,排隊(duì)技術(shù)必將為更多的用戶所接受,并由日常工作中的輔助設(shè)備逐漸成為必備的設(shè)施之一,服務(wù)行業(yè)的市場(chǎng)將會(huì)被更加有序的挖掘、開發(fā)和推廣,將文明服務(wù)和文明管理推上一個(gè)嶄新的、更高的臺(tái)階!
排隊(duì)產(chǎn)品基本知識(shí)
標(biāo)準(zhǔn)的排隊(duì)系統(tǒng)主要包括:取號(hào)操作系統(tǒng)、顯示系統(tǒng)、語音系統(tǒng)、呼叫操作終端系統(tǒng)組成 :
1、取號(hào)操作系統(tǒng)(Number Taking System)
協(xié)助要排隊(duì)的人自助取號(hào);并能夠依據(jù)不同業(yè)務(wù)隊(duì)列的排列順序依次自動(dòng)打印出一一對(duì)應(yīng)的排隊(duì)號(hào)碼和信息。
系統(tǒng)在打印票號(hào)的同時(shí),將票號(hào)信息通過網(wǎng)絡(luò)傳遞給排隊(duì)主控系統(tǒng)并分配到相應(yīng)的隊(duì)列中排隊(duì),等候系統(tǒng)呼叫響應(yīng)。
2、呼叫操作系統(tǒng)(Working Terminal / Operation Terminal)
又稱呼叫操作終端,是叫號(hào)方將呼叫信息發(fā)布出去的操作系統(tǒng),系統(tǒng)終端還可以配合各種與呼叫有關(guān)的其它操作功能,并能夠監(jiān)測(cè)和查詢有關(guān)排隊(duì)、呼叫信息包括顯示等。呼叫操作終端又可以分為:(1)物理操作系統(tǒng)終端 :物理器件,置于操做桌面;
(2)虛擬操作系統(tǒng)終端 :安放在計(jì)算機(jī)系統(tǒng)內(nèi),通過網(wǎng)線連結(jié)。
3、信息顯示提示系統(tǒng)(Display System)
具調(diào)查結(jié)果顯示:人們接受信息的來源約有 2/3 是通過眼睛,既所謂視覺提示取得的,另外 1/3 是來自聽覺系統(tǒng),即語言提示。排隊(duì)系統(tǒng)中,依據(jù)人們的接受信息特點(diǎn)來發(fā)揮系統(tǒng)的呼叫信息傳遞的目的。排隊(duì)系統(tǒng)中的視覺提示主要是指顯示系統(tǒng);聽覺提示主要是指系統(tǒng)的語音呼叫。
顯示系統(tǒng)
顯示系統(tǒng)是排隊(duì)系統(tǒng)中的一個(gè)重要系統(tǒng)組成部分,它可以最直接、最有效的將呼叫信息內(nèi)容呈現(xiàn)和傳示給排隊(duì)者并引起視覺注意,引導(dǎo)指示排隊(duì)者到對(duì)應(yīng)的呼叫點(diǎn)辦理業(yè)務(wù)。
在顯示技術(shù)非常成熟的今天,有多種顯示方式司可供用戶選擇如:數(shù)碼管顯示 LED 點(diǎn)陣顯示、LCD 顯示、PDP 等離子技術(shù)顯示等等。其中,由于 LED 點(diǎn)陣顯示具有諸多優(yōu)點(diǎn),因而在排隊(duì)行業(yè)中得到比較廣泛的應(yīng)用。
按照顯示功能和安放位置,顯示系統(tǒng)又分為終端顯示系統(tǒng)和綜合顯示系統(tǒng)。
終端信息顯示系統(tǒng): 分別只顯示所有顯示單元群中某個(gè)終端點(diǎn)的信息提示,通常指營業(yè)柜臺(tái)或窗口的呼叫顯示。為等候者提供呼叫提示和位置引導(dǎo)作用。如排隊(duì)者根據(jù)柜臺(tái)上方的顯示就可以很容易確認(rèn)呼叫信息和找到對(duì)應(yīng)的服務(wù)位置。
綜合顯示系統(tǒng):
例如:在人群密集或排隊(duì)者視覺有死角的區(qū)域起到進(jìn)一步提示的作用,同時(shí)可以在顯示內(nèi)容上增添其它排隊(duì)信息,顯示方法更加靈活并可以與其它媒體銜接。在實(shí)踐中,依據(jù)現(xiàn)場(chǎng)的不同實(shí)際情況,兩種顯示方法即可以單獨(dú)使用,也可以結(jié)合起來進(jìn)行同步顯示:
單獨(dú)綜合顯示系統(tǒng)顯示
-終端顯示系統(tǒng) + 綜合顯示系統(tǒng)顯示、語音系統(tǒng)(Calling System)排隊(duì)呼叫中,在呼叫信息內(nèi)容通過顯示系統(tǒng)傳遞給等候者視覺的同時(shí),再將呼叫的 信息以語音的形式傳播給排隊(duì)者,達(dá)到提雙重提示的作用。語音系統(tǒng)在排隊(duì)?wèi)?yīng)用中,通常采用韻律規(guī)則控制下的語音數(shù)字存儲(chǔ)、合成技術(shù),在系統(tǒng)控制下組合播放信息,實(shí)現(xiàn)自動(dòng)語音呼叫的功能。
常用方法:
(1)提示樂音 + 語音信息播報(bào)
(2)提示樂音 + 呼叫信息顯示
排隊(duì)叫號(hào)系統(tǒng)介紹
主控機(jī)
系統(tǒng)的總體控制,包括自動(dòng)出票及分類排序處理、與鍵盤終端的交互通信、LED 顯示屏和自動(dòng)語音呼叫的控制以及后臺(tái)數(shù)據(jù)庫的處理、系統(tǒng)維護(hù)設(shè)置等。鍵盤終端
供窗口崗位職員操作使用,要求主機(jī)執(zhí)行呼叫“下一位”,或“暫?!狈?wù)等等各種指令。號(hào)票機(jī)
設(shè)在業(yè)務(wù)大廳的門口,開放給顧客使用或由總臺(tái)使用,若是醫(yī)院則應(yīng)代替原來的分科掛號(hào)功能(或分診臺(tái)),它按顧客選擇的類別科目自動(dòng)排號(hào)出票,并會(huì)記錄在主機(jī)進(jìn)入隊(duì)列排序,顧客取票后可自由活動(dòng),輪到時(shí)會(huì)自動(dòng)呼叫通知以及 LED 電子屏字幕通知。崗位顯示屏
設(shè)在每個(gè)服務(wù)崗位的上方,顯示本崗位當(dāng)前正在辦理中的顧客的票號(hào),辦完后自動(dòng)更新為新輪到的顧客的票號(hào)并閃爍,提示他前來本窗口。主顯示屏
設(shè)在顧客等候區(qū)(就坐區(qū)),顯示字幕例如“請(qǐng) 126 號(hào)到 22 號(hào)窗辦理”通知新輪到的第 126 號(hào)顧客。語音控制器和音箱
控制語音自動(dòng)呼叫。
第五篇:c++版模擬銀行窗口排隊(duì)叫號(hào)系統(tǒng)
c++版模擬銀行窗口排隊(duì)叫號(hào)系統(tǒng)
c++版模擬銀行窗口排隊(duì)叫號(hào)系統(tǒng)
看了兩位LZ的銀行排隊(duì)系統(tǒng)blog,感覺不錯(cuò),就也產(chǎn)生了用C++寫個(gè)排號(hào)系統(tǒng),原因有二,1、對(duì)Java不太熟悉,沒有看太懂。
2、練練手。
3、提高一下C++的人氣。進(jìn)入主題:
對(duì)于這一塊的業(yè)務(wù)系統(tǒng)需求沒有做過多的分析,只在兩位LZ的基礎(chǔ)做了小小的改動(dòng),然后用C++實(shí)現(xiàn)。題目:
模擬實(shí)現(xiàn)銀行業(yè)務(wù)調(diào)度系統(tǒng)邏輯,具體需求如下:
銀行內(nèi)有6個(gè)業(yè)務(wù)窗口,1-4號(hào)窗口為普通窗口,5號(hào)窗口為快速窗口,6號(hào)窗口為VIP窗口。
有三種對(duì)應(yīng)類型的客戶:VIP客戶,普通客戶,快速客戶(辦理如交水電費(fèi)、電話費(fèi)之類業(yè)務(wù)的客戶)。
異步隨機(jī)生成各種類型的客戶,生成各類型用戶的概率比例為: VIP客戶:普通客戶:快速客戶 = 1 :6 :3。
客戶辦理業(yè)務(wù)所需時(shí)間有最大值和最小值,在該范圍內(nèi)隨機(jī)設(shè)定每個(gè)VIP客戶以及普通客戶辦理業(yè)務(wù)所需的時(shí)間,快速客戶辦理業(yè)務(wù)所需時(shí)間為最小值(提示:辦理業(yè)務(wù)的過程可通過線程Sleep的方式模擬)。
各類型客戶在其對(duì)應(yīng)窗口按順序依次辦理業(yè)務(wù)。
當(dāng)VIP(6號(hào))窗口和快速業(yè)務(wù)(5號(hào))窗口沒有客戶等待辦理業(yè)務(wù)的時(shí)候,這兩個(gè)窗口可以處理普通客戶的業(yè)務(wù),而一旦有對(duì)應(yīng)的客戶等待辦理業(yè)務(wù)的時(shí)候,則優(yōu)先處理對(duì)應(yīng)客戶的業(yè)務(wù)。
隨機(jī)生成客戶時(shí)間間隔以及業(yè)務(wù)辦理時(shí)間最大值和最小值自定,可以設(shè)置。
不要求實(shí)現(xiàn)GUI,只考慮系統(tǒng)邏輯實(shí)現(xiàn),可通過Log方式展現(xiàn)程序運(yùn)行結(jié)果。修改:
1、在這里為了簡化程序的設(shè)計(jì)(只省了只行代碼),F(xiàn)AST和VIP窗口只辦理對(duì)應(yīng)的客戶,不辦普通客戶的業(yè)務(wù)。
2、由于對(duì)于客戶的到來,也采用1S來一個(gè)的做法,但因?yàn)樵赾onsole程序?qū)τ跁r(shí)間不太好控制,在這里只是設(shè)定了客戶數(shù),即每個(gè)1秒來一個(gè)客戶,根據(jù)來的客戶數(shù)控制時(shí)間。
開發(fā)環(huán)境:Linux 代碼:
文件constances.h 該文件中定義了一些常量,其中MAX_WAITING_CLIENT_NUM指的是,最多正在等待的客戶數(shù),如果客戶數(shù)到達(dá)最大,后來的客戶將會(huì)離開。
[cpp] view plaincopy
1.#ifndef CONSTANCES_H_
2.#define CONSTANCES_H_
3.enum {
4.MAX_SERVICE_TIME = 10, 5.MIN_SERVICE_TIME = 1, 6.CLIENT_INTERVAL_TIME = 1, 7.MAX_WAITING_CLIENT_NUM = 50, 8.MAX_CLIENT_NUM = 100, 9.};
10.#endif /* CONSTANCES_H_ */
文件main.cpp
1、每一個(gè)窗口對(duì)應(yīng)一個(gè)線程,在此創(chuàng)建了6個(gè)線程,分別對(duì)應(yīng)4個(gè)客戶窗口,1個(gè)FAST窗口中,1個(gè)VIP窗口中。
2、在這里本想用Unix中的alarm信號(hào)來控制客戶的間隔時(shí)間,但因?yàn)闀r(shí)間不好控制就廢棄了
[cpp] view plaincopy
1.#include
2.#include
3.#include
4.#include
5.#include
6.#include
7.#include “numMachine.h”
8.#include “serviceWin.h”
9.#include “client.h”
10.#include “constances.h”
11.Client::ClientType createClientType(){ 12.int type;
13.type = rand()% 10 + 1;14.if(type <= 6)
15.return Client::CLIENT_COMMON;16.else if(type >= 7 && type <= 9)17.return Client::CLIENT_FAST;18.return Client::CLIENT_VIP;19.}
20.int createTasktime(){
21.return rand()% MAX_SERVICE_TIME + 1;22.}
23.void createClient(){
24.Client::ClientType clientType;25.int taskTime;
26.for(int i = 0;i < MAX_CLIENT_NUM;++i){ 27.clientType = createClientType();28.taskTime = createTasktime();
29.std::cout << “Come in a client : clientType = ” << clientType 30.<< “ taskTime = ” << taskTime << std::endl;
31.NumMachine::getInstance()->pressMachine(clientType, taskTime);32.sleep(1);33.}
34.sleep(5);35.}
36.void * serviceWin(void *win){
37.ServiceWin *serWin = static_cast
41.bool createServiceWin(){
42.pthread_t commonServiceWin[4];43.pthread_t fastServiceWin;44.pthread_t vipServiceWin;45.char tmp[10];46.ServiceWin *win;
47.for(int i = 0;i < 4;++i){ 48.sprintf(tmp, “CommonWin%d”, i);49.win = new CommonSerWin(tmp);50.if(win == NULL){
51.std::cout << “Create common service win error.” << std::endl;52.return-1;53.}
54.if(pthread_create(&commonServiceWin[i], NULL, serviceWin,(void*)win)
55.!= 0){
56.std::cout << “Create common service thread error.” << std::endl;
57.return false;58.} 59.} 60.sprintf(tmp, “FastWin”);61.win = new FastSerWin(tmp);62.if(win == NULL){
63.std::cout << “Create fast service win error.” << std::endl;64.return false;65.}
66.if(pthread_create(&fastServiceWin, NULL, serviceWin,(void*)win)!= 0){
67.std::cout << “Create fast service thread error.” << std::endl;68.return false;69.}
70.sprintf(tmp, “VipWin”);71.win = new VipSerWin(tmp);72.if(win == NULL){
73.std::cout << “Create vip service win error.” << std::endl;74.return false;75.}
76.if(pthread_create(&fastServiceWin, NULL, serviceWin,(void*)win)!= 0){
77.std::cout << “Create vip service thread error.” << std::endl;78.return false;79.}
80.return true;81.}
82.int main(int argc, char *argv[]){
83.std::cout << “/***start : please wait 5 seconds when progress suspend *****/” << std::endl;
84.srand((unsigned)time(0));85.if(!createServiceWin()){
86.std::cout << “Create service win error.” << std::endl;87.return-1;88.}
89.createClient();
90.delete NumMachine::getInstance();91.}
文件client.cpp client.h 定義了我們的客戶,因?yàn)槲覀兊目蛻舯容^簡單,所有的客戶共享一個(gè)class,只是clientType來區(qū)分不同的客戶。
[cpp] view plaincopy 1.#ifndef CLIENT_H_
2.#define CLIENT_H_
3.class Client { 4.public:
5.enum ClientType {
6.CLIENT_COMMON, CLIENT_FAST, CLIENT_VIP 7.};
8.Client(ClientType type, int time);9.virtual ~Client();
10.ClientType getClientType();11.int getServiceTime();12.private:
13.ClientType clientType;14.int serviceTime;15.};
16.#endif /* CLIENT_H_ */
[c-sharp] view plaincopy
1.#include “client.h”
2.Client::Client(ClientType type, int time): 3.clientType(type), serviceTime(time){ 4.}
5.Client::~Client(){ 6.}
7.Client::ClientType Client::getClientType(){ 8.return clientType;9.}
10.int Client::getServiceTime(){ 11.return serviceTime;12.}
文件numMachine.cpp numMachine.h 文件中定義了排號(hào)機(jī),在numMachine中定義了一個(gè)client list用來存放我們的客戶。
[cpp] view plaincopy
1.#ifndef NUMMACHINE_H_
2.#define NUMMACHINE_H_
3.#include 4.#include
5.#include
7.#include
8.#include “client.h”
9.#include “constances.h”
10.class NumMachine { 11.public:
12.virtual ~NumMachine();
13.static NumMachine *getInstance();
14.void pressMachine(Client::ClientType clientType, int tasktime);15.Client * removeClient(Client::ClientType val);16.private:
17.NumMachine();
18.static NumMachine *numMachine;19.std::list
22.int handledClient;
23.pthread_mutex_t clientListLock;24.};
25.class DelClientList { 26.public:
27.void operator()(Client * item);28.};
29.class FindClient { 30.public:
31.FindClient(Client::ClientType t);32.bool operator()(Client * item);33.private:
34.Client::ClientType clientType;35.};
36.#endif /* NUMMACHINE_H_ */
[cpp] view plaincopy
1.#include “numMachine.h”
2./***************************************************************************************/
3.NumMachine * NumMachine::numMachine = new NumMachine;4.NumMachine::NumMachine():
5.leaveClient(0), total(0), handledClient(0){ 6.pthread_mutex_init(&clientListLock, NULL);7.} 8.NumMachine::~NumMachine(){
9.std::cout << “/********** end ****************/” << std::endl;
10.std::cout << “The number of total client is ” << total << std::endl;11.std::cout << “The number of handled client is ” << handledClient << std::endl;
12.std::cout << “The number of waiting client is ” << clientList.size()<< std::endl;
13.std::cout << “The number of client is ” << leaveClient 14.<< “ ,because waiting time too long.” << std::endl;15.for_each(clientList.begin(), clientList.end(), DelClientList());16.}
17.NumMachine * NumMachine::getInstance(){ 18.return numMachine;19.}
20.void NumMachine::pressMachine(Client::ClientType clientType, int taskTime){
21.++total;
22.if(clientList.size()< MAX_WAITING_CLIENT_NUM){ 23.Client * c = new Client(clientType, taskTime);24.if(c == NULL){
25.std::cout << “Can't create Client” << std::endl;26.exit(-1);27.}
28.clientList.push_back(c);29.} else {
30.++leaveClient;31.} 32.}
33.Client * NumMachine::removeClient(Client::ClientType val){ 34.std::list
36.pthread_mutex_lock(&clientListLock);
37.pos = find_if(clientList.begin(), clientList.end(), FindClient(val));38.tmp = *pos;
39.if(pos!= clientList.end()){ 40.clientList.erase(pos);41.++handledClient;
42.pthread_mutex_unlock(&clientListLock);43.return tmp;44.} else {
45.pthread_mutex_unlock(&clientListLock);46.return NULL;47.} 48.}
49./***************************************************************************************/
50.void DelClientList::operator()(Client *item){
51.std::cout << “Waiting client : clientType =” << item->getClientType()52.<< “ taskTime = ” << item->getServiceTime()<< std::endl;53.delete item;54.}
55./***************************************************************************************/
56.FindClient::FindClient(Client::ClientType t): 57.clientType(t){ 58.}
59.bool FindClient::operator()(Client * item){ 60.if(item->getClientType()== clientType)61.return true;62.else
63.return false;64.}
文件serviceWin.cpp serviceWin.h 文件中定義了我們窗口。
[cpp] view plaincopy
1.#ifndef SERVICEWIN_H_
2.#define SERVICEWIN_H_
3.#include
4.#include
5.#include “numMachine.h”
6.class ServiceWin { 7.public:
8.ServiceWin(std::string n);9.virtual ~ServiceWin();10.virtual void execute()= 0;11.std::string getWinName();12.private:
13.std::string winName;14.};
15.class CommonSerWin: public ServiceWin { 16.public:
17.CommonSerWin(std::string n);18.virtual ~CommonSerWin();19.virtual void execute();20.};
21.class FastSerWin: public ServiceWin { 22.public:
23.FastSerWin(std::string n);24.virtual ~FastSerWin();25.virtual void execute();26.};
27.class VipSerWin: public ServiceWin { 28.public:
29.VipSerWin(std::string n);30.virtual ~VipSerWin();31.virtual void execute();32.};
33.#endif /* SERVICEWIN_H_ */
[cpp] view plaincopy
1.#include “serviceWin.h”
2./*********************************************************************************************/
3.ServiceWin::ServiceWin(std::string n): 4.winName(n){ 5.}
6.ServiceWin::~ServiceWin(){ 7.}
8.std::string ServiceWin::getWinName(){ 9.return winName;10.}
11./*********************************************************************************************/
12.CommonSerWin::CommonSerWin(std::string n): 13.ServiceWin(n){ 14.}
15.CommonSerWin::~CommonSerWin(){ 16.}
17.void CommonSerWin::execute(){ 18.Client * client = NULL;19.while(1){
20.client = NumMachine::getInstance()->removeClient(Client::CLIENT_COMMON);
21.if(client!= NULL){ 22.std::cout << “A client be handled : clientType = ” << client->getClientType()
23.<< “ taskTime = ” << client->getServiceTime()<< “ ”<< getWinName()<< std::endl;
24.sleep(client->getServiceTime());25.delete client;26.} 27.} 28.}
29./*********************************************************************************************/
30.FastSerWin::FastSerWin(std::string n): 31.ServiceWin(n){ 32.}
33.FastSerWin::~FastSerWin(){ 34.}
35.void FastSerWin::execute(){ 36.Client * client = NULL;37.while(1){
38.client = NumMachine::getInstance()->removeClient(Client::CLIENT_FAST);
39.if(client!= NULL){
40.std::cout << “A client be handled : clientType = ” << client->getClientType()
41.<< “ taskTime = ” << client->getServiceTime()<< “ ”<< getWinName()<< std::endl;
42.sleep(client->getServiceTime());43.delete client;44.} 45.} 46.}
47./*********************************************************************************************/
48.VipSerWin::VipSerWin(std::string n): 49.ServiceWin(n){ 50.}
51.VipSerWin::~VipSerWin(){ 52.}
53.void VipSerWin::execute(){ 54.Client * client = NULL;55.while(1){
56.client = NumMachine::getInstance()->removeClient(Client::CLIENT_VIP);
57.if(client!= NULL){ 58.std::cout << “A client be handled : clientType = ” << client->getClientType()
59.<< “ taskTime = ” << client->getServiceTime()<< “ ”<< getWinName()<< std::endl;
60.sleep(client->getServiceTime());61.delete client;62.} 63.} 64.}
結(jié)論:
經(jīng)過幾次測(cè)試發(fā)現(xiàn)在上述條件下,F(xiàn)AST窗口辦理業(yè)務(wù)不能滿足需求,在客戶不在來的后5秒內(nèi),不能處理完FAST客戶。