吳喜生
(中國(guó)民用航空西南地區(qū)空中交通管理局,成都 610041)
民航西南空管局培訓(xùn)中心是一家具備管制、通導(dǎo)、氣象、情報(bào)及綜合素質(zhì)培訓(xùn)能力,擁有成熟的管理制度、優(yōu)良的師資隊(duì)伍、完善的課程體系及完備的硬件設(shè)施的民航專業(yè)培訓(xùn)機(jī)構(gòu)。近年來,隨著民航培訓(xùn)需求量逐年增大,培訓(xùn)中心年均培訓(xùn)業(yè)務(wù)量高達(dá)1.6 萬(wàn)人次,近兩年發(fā)放的培訓(xùn)資格證書17 988 份,如何高效地管理資格培訓(xùn)證書是培訓(xùn)中心目前面臨的一大問題。培訓(xùn)資格證書管理是一項(xiàng)瑣碎、復(fù)雜而又十分細(xì)致的工作,目前培訓(xùn)資格證書管理存在以下不足。①證書制作效率低下。每個(gè)培訓(xùn)班上完后,班主任將統(tǒng)計(jì)學(xué)員信息,并根據(jù)證書模板逐個(gè)輸入證書信息,如姓名、身份證號(hào)、證書編號(hào)等,然后逐份打印生成紙質(zhì)證書,其中為避免證書編號(hào)重復(fù),每個(gè)培訓(xùn)班的開始編號(hào)需要從上個(gè)培訓(xùn)班最后一個(gè)編號(hào)續(xù)編,編號(hào)極易出錯(cuò),證書的制作耗費(fèi)了班主任大量的時(shí)間。②證書缺乏動(dòng)態(tài)數(shù)據(jù)管理,這對(duì)證書的當(dāng)前管理及日后查詢統(tǒng)計(jì)非常不便。
針對(duì)上述問題,本文結(jié)合民航西南空管局培訓(xùn)中心實(shí)際情況,從中心資格證書管理入手,提出建立一套培訓(xùn)資格證書管理系統(tǒng),對(duì)證書的制作及查詢統(tǒng)計(jì)進(jìn)行動(dòng)態(tài)管理,這樣不僅能夠保證培訓(xùn)資格證書準(zhǔn)確無誤、快速輸出,還可以對(duì)證書進(jìn)行多維度、多層次的信息統(tǒng)計(jì),服務(wù)于廣大員工,極大地提高證書管理效率,這也是企業(yè)實(shí)現(xiàn)科學(xué)化、正規(guī)化管理,與世界接軌的重要條件[1]。
系統(tǒng)用戶分為三大類:系統(tǒng)管理員、班主任、學(xué)員。系統(tǒng)管理員擁有系統(tǒng)所有權(quán)限,主要對(duì)系統(tǒng)進(jìn)行員工管理、部門管理、用戶管理、字典管理、模板管理以及角色管理。班主任主要負(fù)責(zé)培訓(xùn)管理、證書制作、證書查詢統(tǒng)計(jì)等,其中培訓(xùn)管理包含了課程管理功能,部分證書需要記錄對(duì)應(yīng)培訓(xùn)的課程;證書制作包含批量生成、單個(gè)生成和證書打印等功能。學(xué)員僅能夠?qū)ψ陨碜C書進(jìn)行瀏覽及查詢。證書制作是整個(gè)系統(tǒng)的核心模塊,首先由管理員添加各類證書模板,某個(gè)培訓(xùn)班完成后,班主任負(fù)責(zé)錄入培訓(xùn)班信息并綁定證書模板,隨后導(dǎo)入學(xué)員信息批量生成證書,如需生成紙質(zhì)證書,則進(jìn)行批量打印,證書生成后將自動(dòng)關(guān)聯(lián)各學(xué)員證書資源庫(kù),學(xué)員可方便快捷地查詢自身已經(jīng)獲得的證書。
1.2.1 數(shù)據(jù)預(yù)處理
培訓(xùn)證書根據(jù)不同專業(yè)進(jìn)行分類,采用不同的證書格式,因此在數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)之前,需要對(duì)證書模板進(jìn)行預(yù)處理,實(shí)現(xiàn)不同類型的證書在同一平臺(tái)上集成。
1.2.2 數(shù)據(jù)管理
數(shù)據(jù)管理是為了使培訓(xùn)證書信息通過組合及定義相互關(guān)系能明確、有序、清晰地表達(dá)信息,不同專業(yè)的培訓(xùn)證書需要根據(jù)不同的培訓(xùn)班進(jìn)行歸類處理。
1.2.3 查詢統(tǒng)計(jì)
提供多條件組合的證書查詢以及多條件的統(tǒng)計(jì)功能,為培訓(xùn)評(píng)估及培訓(xùn)規(guī)劃提供數(shù)據(jù)支撐。
1.2.4 數(shù)據(jù)批量導(dǎo)入及輸出
為了方便快捷地制作證書,系統(tǒng)可支持批量導(dǎo)入學(xué)員信息,并批量生成及打印證書。
本系統(tǒng)采用三層結(jié)構(gòu)設(shè)計(jì),包括表示層、接口層、業(yè)務(wù)邏輯層,整個(gè)架構(gòu)具備松耦合、服務(wù)化、可擴(kuò)展的特點(diǎn)。松耦合設(shè)計(jì)支持前端界面與后臺(tái)業(yè)務(wù)邏輯分離,便于各類應(yīng)用終端快速開發(fā)與部署上線,可以有效降低企業(yè)信息化成本[2]。系統(tǒng)體系架構(gòu)設(shè)計(jì)如圖1 所示。
圖1 系統(tǒng)體系架構(gòu)
業(yè)務(wù)邏輯層主要負(fù)責(zé)將各種常用的類以及業(yè)務(wù)類封裝成動(dòng)態(tài)組件供自身調(diào)用,由實(shí)體類庫(kù)層Model、數(shù)據(jù)訪問層DAL、業(yè)務(wù)邏輯層BAL 組成,Model 層主要對(duì)數(shù)據(jù)庫(kù)中的實(shí)體類進(jìn)行定義;DAL 主要負(fù)責(zé)與數(shù)據(jù)庫(kù)進(jìn)行交互,實(shí)現(xiàn)數(shù)據(jù)庫(kù)的添加、更新、刪除等操作;BAL 是整個(gè)業(yè)務(wù)邏輯層的核心層,主要實(shí)現(xiàn)各業(yè)務(wù)邏輯,所有的業(yè)務(wù)邏輯層都封裝成對(duì)應(yīng)的動(dòng)態(tài)鏈接庫(kù)供接口層的Api 調(diào)用。
接口層的主要任務(wù)是處理表示層的請(qǐng)求及響應(yīng),采用.Net Core Api 對(duì)表示層提交的各類業(yè)務(wù)請(qǐng)求以及響應(yīng)、業(yè)務(wù)規(guī)則、合法性校驗(yàn)等工作進(jìn)行處理[3],有效地粘合了表示層與業(yè)務(wù)邏輯層。
表示層主要負(fù)責(zé)為用戶提供可視化操作界面,表示層通過調(diào)用接口層的Api 來接收、處理、發(fā)送相關(guān)信息,并最終提供給web 頁(yè)面展現(xiàn)給用戶,以提供與用戶的交互平臺(tái)。
系統(tǒng)主要包括證書管理、查詢統(tǒng)計(jì)、系統(tǒng)管理等三大功能。
證書管理是整個(gè)系統(tǒng)的核心模塊,主要包括證書類別管理、培訓(xùn)管理、證書制作三大功能。證書類別管理主要是對(duì)證書的模板進(jìn)行預(yù)處理,根據(jù)不同類型上傳不同的證書模板。目前培訓(xùn)中心的資格證書分為通導(dǎo)、氣象、管制、情報(bào)、綜合5 類,分別對(duì)應(yīng)5 種不同的證書模板格式,證書模板以Word 模板文件形式存儲(chǔ)到數(shù)據(jù)庫(kù)中,Word 模板首先要對(duì)通用的字段以書簽的形式進(jìn)行定義,如姓名、身份證號(hào)、培訓(xùn)班名稱、開始日期、結(jié)束日期、證書編號(hào),只有定義好書簽后,制作證書時(shí)才會(huì)根據(jù)不同的學(xué)員信息動(dòng)態(tài)生成統(tǒng)一的證書格式。培訓(xùn)班管理主要用于存儲(chǔ)證書內(nèi)容信息以及綁定與培訓(xùn)班對(duì)應(yīng)的證書模板。證書制作支持單個(gè)證書制作以及批量證書制作,導(dǎo)入學(xué)員信息并設(shè)置對(duì)應(yīng)的培訓(xùn)班就可以根據(jù)培訓(xùn)班綁定的證書模板依次生成證書,其中證書類別管理記錄了證書最新的截止編號(hào),每次制作完成證書后,系統(tǒng)自動(dòng)對(duì)證書類別中的截止編號(hào)進(jìn)行更新,下次證書制作將獲取最新的截止編號(hào),然后依次遞增,以保證多個(gè)培訓(xùn)班證書編號(hào)的連續(xù)性。證書制作的業(yè)務(wù)時(shí)序如圖2 所示。
圖2 證書制作業(yè)務(wù)時(shí)序
查詢統(tǒng)計(jì)主要實(shí)現(xiàn)證書的查詢及統(tǒng)計(jì),可以根據(jù)不同條件進(jìn)行查詢,如查詢某個(gè)學(xué)員、某個(gè)培訓(xùn)班以及某個(gè)培訓(xùn)類別的證書,統(tǒng)計(jì)功能可實(shí)現(xiàn)按年份、類別、人員進(jìn)行證書統(tǒng)計(jì)。
系統(tǒng)管理主要實(shí)現(xiàn)用戶管理、部門管理、角色管理、用戶管理、系統(tǒng)字典管理以及模板管理等功能。
根據(jù)系統(tǒng)功能需求,系統(tǒng)證書管理功能模塊主要涉及證書類別表、培訓(xùn)班信息表、證書列表、課程信息表等多張數(shù)據(jù)表。證書管理模塊主要數(shù)據(jù)表設(shè)計(jì)如圖3 所示。
圖3 證書管理模塊數(shù)據(jù)表設(shè)計(jì)
證書類別數(shù)據(jù)表用于存儲(chǔ)各類證書模板數(shù)據(jù),字段包含類別名稱、截止編號(hào)、證書模板、備注,其中截止編號(hào)每次生成證書后會(huì)動(dòng)態(tài)更新,目的是保證生成的所有證書編號(hào)的連續(xù)性。培訓(xùn)班信息數(shù)據(jù)表用于存儲(chǔ)證書上關(guān)于培訓(xùn)班的信息以及綁定相應(yīng)的證書模板,證書模板以二進(jìn)制的形式存儲(chǔ)于數(shù)據(jù)庫(kù)中,字段包含培訓(xùn)班中文名稱、英文名稱、關(guān)聯(lián)的類型ID、開班日期、結(jié)業(yè)日期以及班主任ID,其中班主任ID 直接關(guān)聯(lián)系統(tǒng)管理中的用戶表,即關(guān)聯(lián)用戶ID。課程信息數(shù)據(jù)表用于存儲(chǔ)部分與培訓(xùn)班對(duì)應(yīng)的課程信息,字段包含課程名稱、教員、課時(shí)以及對(duì)應(yīng)的培訓(xùn)班ID,其中教員直接關(guān)聯(lián)系統(tǒng)管理中的用戶表。證書列表用于存儲(chǔ)生成的證書數(shù)據(jù),字段包含關(guān)聯(lián)的培訓(xùn)班ID、學(xué)員ID、證書編號(hào)、證書文檔、證書鏈接、成績(jī)、證書狀態(tài),其中證書編號(hào)是根據(jù)證書類別中的截止編號(hào)動(dòng)態(tài)生成。
系統(tǒng)開發(fā)語(yǔ)言為C#;相關(guān)技術(shù)及開發(fā)框架為.NET Core Api、Vue、Element;開發(fā)工具為VS 2012、VS code;部署環(huán)境為IIS 7;數(shù)據(jù)庫(kù)為SQL Server 2012。其中,Web 客戶端界面采用Vue[4]進(jìn)行開發(fā),UI 組件庫(kù)采用Element[5]進(jìn)行開發(fā),服務(wù)器段采用.NET Core Api 進(jìn)行開發(fā),Api 調(diào)用業(yè)務(wù)組件完成業(yè)務(wù)邏輯。
系統(tǒng)主要界面如圖4 所示。批量制作證書選擇已添加的培訓(xùn)班,頁(yè)面根據(jù)培訓(xùn)班數(shù)據(jù)自動(dòng)填充相關(guān)信息,如培訓(xùn)班英文名稱、培訓(xùn)班類型、起止日期、證書編號(hào)等,然后選擇學(xué)員信息文件,學(xué)員信息文件是本地的一個(gè)Excel 文件,包含姓名、身份證號(hào),點(diǎn)擊生成按鈕開始生成證書,生成證書功能會(huì)自動(dòng)對(duì)Excel 中的學(xué)員信息進(jìn)行解析,每生成一個(gè)證書就獲取一行學(xué)員信息,并根據(jù)培訓(xùn)班相關(guān)信息以標(biāo)簽的形式插入關(guān)聯(lián)的證書模板,每個(gè)證書以二進(jìn)制形式存儲(chǔ)到數(shù)據(jù)庫(kù)中;證書生成后自動(dòng)添加到證書列表中,用戶可以進(jìn)行查看、編輯、刪除、查詢、打印證書等操作。
圖4 系統(tǒng)實(shí)現(xiàn)主要界面
文章對(duì)培訓(xùn)中心現(xiàn)有培訓(xùn)資格證書管理工作中的不足進(jìn)行了分析,針對(duì)不足建立了一套培訓(xùn)資格證書管理系統(tǒng),對(duì)系統(tǒng)的詳細(xì)需求進(jìn)行了分析,并給出了系統(tǒng)架構(gòu)設(shè)計(jì)以及數(shù)據(jù)庫(kù)設(shè)計(jì),采用目前主流的框架Vue、.NET Core 實(shí)現(xiàn)了系統(tǒng)建立,并成功應(yīng)用于現(xiàn)有的培訓(xùn)資格證書管理工作中,不僅簡(jiǎn)化了培訓(xùn)資格證書制作流程,還極大地提高了培訓(xùn)資格證書管理效率。