趙衛(wèi)峰,王亞紅
(重慶郵電大學(xué),重慶 400065)
教育事業(yè)發(fā)展迅猛,帶動(dòng)了高校包括辦公用品、實(shí)驗(yàn)設(shè)備等在內(nèi)的固定資產(chǎn)的急劇增長,實(shí)現(xiàn)資產(chǎn)的有效管理是高校正常運(yùn)轉(zhuǎn)的保障。硬件設(shè)備、通信技術(shù)尤其是移動(dòng)終端設(shè)備的發(fā)展和應(yīng)用,為更高效、便利地實(shí)現(xiàn)設(shè)備的全面管理提供了可能。本文以傳統(tǒng)的設(shè)備(資產(chǎn))管理為基礎(chǔ),結(jié)合二維碼和移動(dòng)終端功能,實(shí)現(xiàn)設(shè)備狀態(tài)的隨時(shí)查詢和準(zhǔn)確匹配,以提高資產(chǎn)信息管理效率,有效降低管理成本和管理風(fēng)險(xiǎn)。
硬件設(shè)備、通信技術(shù)尤其是移動(dòng)終端設(shè)備的發(fā)展和應(yīng)用,為更高效、便利地實(shí)現(xiàn)設(shè)備的全面管理提供了可能。
本研究的目的是開發(fā)一款能夠?qū)崿F(xiàn)系統(tǒng)信息和設(shè)備狀態(tài)信息實(shí)時(shí)、準(zhǔn)確匹配,同時(shí)不需要使用成本過高的條形掃碼槍、條碼打印機(jī)等設(shè)備的固定資產(chǎn)信息管理系統(tǒng)。該系統(tǒng)應(yīng)實(shí)現(xiàn)用戶管理、資產(chǎn)管理和系統(tǒng)信息文檔化等功能[1]。該資產(chǎn)管理系統(tǒng)以傳統(tǒng)的設(shè)備(資產(chǎn))管理為基礎(chǔ),結(jié)合二維碼和移動(dòng)終端功能,實(shí)現(xiàn)設(shè)備狀態(tài)的隨時(shí)查詢和準(zhǔn)確匹配,以提高固定資產(chǎn)信息管理效率,有效降低管理成本和管理風(fēng)險(xiǎn)。
該系統(tǒng)整體分為用戶登錄模塊、用戶管理模塊、資產(chǎn)信息管理模塊、資產(chǎn)借用模塊、存放地管理模塊和系統(tǒng)信息文檔化模塊等六部分。
用戶登錄模塊包括登錄、權(quán)限匹配分配、日志記錄等功能。
用戶管理包括對用戶的基本信息、權(quán)限、借用權(quán)限等信息的管理和日志記錄等功能。擁有權(quán)限的用戶可對用戶信息進(jìn)行管理。
資產(chǎn)信息管理包括對資產(chǎn)的名稱、類別、資產(chǎn)狀態(tài)、存放地和價(jià)格等信息的分類檢索與管理。擁有權(quán)限的用戶可對資產(chǎn)信息進(jìn)行管理。
資產(chǎn)借用包括資產(chǎn)的借用、續(xù)借和歸還等管理功能,擁有借用權(quán)限的用戶均可在系統(tǒng)內(nèi)借用資產(chǎn)。
存放地管理包括對存放地的名稱、管理者等信息的查詢與修改。擁有權(quán)限的用戶可對存放地信息進(jìn)行管理。
系統(tǒng)信息文檔化包括對系統(tǒng)中對資產(chǎn)信息、用戶信息等信息進(jìn)行文檔化管理。既可以將按照規(guī)定格式存儲(chǔ)資產(chǎn)信息的Excel 文檔導(dǎo)入系統(tǒng)并寫入數(shù)據(jù)庫,也可將系統(tǒng)數(shù)據(jù)導(dǎo)出成規(guī)定格式的Excel 文檔進(jìn)行保存。擁有權(quán)限的用戶可根據(jù)需要導(dǎo)入或?qū)С鑫臋n[2]。圖1為系統(tǒng)主要功能模塊規(guī)劃。
圖1 系統(tǒng)主要功能模塊規(guī)劃
3.1.1 概念結(jié)構(gòu)設(shè)計(jì)
概念結(jié)構(gòu)設(shè)計(jì)是數(shù)據(jù)庫設(shè)計(jì)的第一個(gè)階段,先把人們對事物的認(rèn)知從現(xiàn)實(shí)世界抽象化,通過對系統(tǒng)的功能進(jìn)行分析,結(jié)合數(shù)據(jù)規(guī)范化理論,確定系統(tǒng)中實(shí)體的屬性和實(shí)體之間的關(guān)系。根據(jù)對系統(tǒng)分析的結(jié)果確定各個(gè)數(shù)據(jù)信息中實(shí)體和實(shí)體屬性之間的關(guān)系。
通過對基于二維碼的固定資產(chǎn)信息管理系統(tǒng)中的功能進(jìn)行分析,將資產(chǎn)(設(shè)備)的屬性進(jìn)行抽象化并規(guī)范化,得到實(shí)體和實(shí)體屬性之間的關(guān)系。
3.1.2 邏輯結(jié)構(gòu)設(shè)計(jì)
結(jié)合本次開發(fā)系統(tǒng)的特征得出本次開發(fā)需要數(shù)據(jù)的一般關(guān)系模型,將數(shù)據(jù)的一般關(guān)系模型按照MySQL數(shù)據(jù)庫的數(shù)據(jù)特征,轉(zhuǎn)換為MySQL 數(shù)據(jù)模型。最后通過優(yōu)化MySQL 數(shù)據(jù)模型得到計(jì)算機(jī)能夠識(shí)別的邏輯數(shù)據(jù)模型。
通過分析邏輯數(shù)據(jù)模型,得到主要數(shù)據(jù)庫信息表。
用戶信息表中用戶名字段、密碼字段和密碼驗(yàn)證字段主要用于系統(tǒng)登錄功能;姓名、性別等字段為用戶基本信息;用戶狀態(tài)字段主要用于管理用戶信息邏輯刪除和物理刪除;用戶角色字段作為外鍵用于管理用戶角色表,用于分配用戶角色權(quán)限[3]。
資產(chǎn)信息表中資產(chǎn)名稱、資產(chǎn)類型等字段為資產(chǎn)基本信息;資產(chǎn)編號(hào)字段作為資產(chǎn)的唯一憑證;資產(chǎn)狀態(tài)字段主要用于管理資產(chǎn)信息狀態(tài),判斷資產(chǎn)能否被借用;二維碼地址字段用于存儲(chǔ)該資產(chǎn)被借用時(shí)關(guān)聯(lián)的二維碼地址;借用者字段作為外鍵用于存儲(chǔ)該資產(chǎn)借用者相關(guān)信息。
資產(chǎn)操作記錄表中資產(chǎn)名稱、資產(chǎn)編號(hào)和用戶姓名等字段為資產(chǎn)操作記錄基本信息;二維碼地址字段用于存儲(chǔ)該資產(chǎn)記錄中資產(chǎn)關(guān)聯(lián)的二維碼地址;備注字段中存儲(chǔ)該操作記錄類別。
系統(tǒng)的詳細(xì)設(shè)計(jì),主要是針對各個(gè)模塊的實(shí)現(xiàn)方法進(jìn)行描述。下面是對系統(tǒng)的部分主要模塊的實(shí)現(xiàn)方法和具體功能描述。
3.2.1 用戶登錄模塊
用戶登錄模塊包括登錄功能、記住當(dāng)前登錄用戶功能、權(quán)限匹配分配功能和圖片驗(yàn)證碼功能。
(1)登錄功能。通過用戶名獲取用戶信息,判斷傳入密碼與獲取用戶信息中密碼是否一致,判斷能否登錄成功。
登錄功能中首先要在后臺(tái)檢查前臺(tái)傳輸過來的用戶名和密碼是否為空。
USER_NAME_PWD_NULL(405,"用戶名和密碼不能為空")
通過Shiro 框架技術(shù)獲取當(dāng)前登錄用戶信息并判斷是否與數(shù)據(jù)庫中一致。一致則返回登錄成功,否則提示登錄失敗。
(2)權(quán)限匹配分配功能。登錄時(shí)系統(tǒng)會(huì)根據(jù)登錄用戶的身份信息自動(dòng)匹配相對應(yīng)的權(quán)限,不需要選擇身份登錄,登錄后展示身份權(quán)限相應(yīng)的系統(tǒng)菜單。
由于用戶信息表中設(shè)置了身份字段,所以不需要在登錄時(shí)選擇身份。用戶登錄成功后,系統(tǒng)會(huì)根據(jù)當(dāng)前登錄用戶中身份字段自動(dòng)匹配身份權(quán)限。
User user=(User) SecurityUtils.getSubject().getPrincipal();
(3)記住當(dāng)前登錄用戶功能。用戶選擇記住我選項(xiàng)并成功登錄系統(tǒng)后,一個(gè)月內(nèi)都可以不通過登錄直接訪問系統(tǒng)。
通過Shiro 框架技術(shù)和瀏覽器的Cookie 機(jī)制實(shí)現(xiàn)了記住當(dāng)前登錄用戶功能,系統(tǒng)會(huì)通過Shiro 技術(shù)將登錄成功的用戶信息存在瀏覽器的Cookie 中,并將 Cookie 的有效時(shí)長設(shè)置為30 天,由于使用Cookie機(jī)制實(shí)現(xiàn)功能,所以一旦清除瀏覽器緩存則需要重新登錄。
3.2.2 資產(chǎn)管理模塊
資產(chǎn)管理模塊包括資產(chǎn)信息管理、資產(chǎn)操作記錄管理、當(dāng)前用戶已借用資產(chǎn)管理和分類檢索功能。
(1)資產(chǎn)信息管理功能。擁有權(quán)限的用戶可以對用戶進(jìn)行管理,按照系統(tǒng)界面展示的邏輯對資產(chǎn)信息進(jìn)行添加、修改、刪除和分類檢索等操作。
資產(chǎn)信息的添加和修改調(diào)用是同一個(gè)接口,調(diào)用該接口時(shí)首先根據(jù)前端傳輸?shù)男畔⒉樵冑Y產(chǎn)是否存在。如資產(chǎn)信息不存在,則新建一個(gè)資產(chǎn)對象并將信息存入資產(chǎn)對象;如存在,則將前端傳輸?shù)男畔⒅信c查詢到的資產(chǎn)對象不同部分存入資產(chǎn)對象。
資產(chǎn)信息的刪除和批量刪除是將選中資產(chǎn)id 以數(shù)組的形式傳輸?shù)胶蠖耍瑘?zhí)行刪除操作并寫入數(shù)據(jù)庫。查看資產(chǎn)詳細(xì)信息功能,根據(jù)該資產(chǎn)id 查詢到該用戶的全部信息并以彈窗的形式展示。資產(chǎn)分類檢索將要檢索的信息傳輸?shù)胶笈_(tái),將檢索后符合條件的資產(chǎn)信息以列表的形式展示。
以上的增刪改查等對數(shù)據(jù)持久化的操作均通過Java 持久層API 中的BaseRepository 技術(shù)實(shí)現(xiàn)。
(2)資產(chǎn)操作記錄管理功能。資產(chǎn)操作記錄是借用或歸還資產(chǎn)時(shí)自動(dòng)生成的記錄,記錄了這次操作中的全部信息。擁有權(quán)限的用戶可以對資產(chǎn)記錄操作進(jìn)行管理,不同于資產(chǎn)信息和用戶信息,資產(chǎn)操作記錄不能夠自行添加或修改。只能進(jìn)行刪除、詳細(xì)查詢操作。
資產(chǎn)操作記錄的刪除和批量刪除是將選中資產(chǎn)操作記錄id 以數(shù)組的形式傳輸?shù)胶蠖?,?zhí)行刪除操作并寫入數(shù)據(jù)庫。查看資產(chǎn)操作記錄詳細(xì)信息是根據(jù)該資產(chǎn)操作記錄id 查詢到該資產(chǎn)操作記錄的全部信息并以彈窗的形式展示。資產(chǎn)操作記錄分類檢索是將要檢索的信息傳輸?shù)胶笈_(tái),將檢索后符合條件的資產(chǎn)操作記錄信息以列表的形式展示[4]。
以上的增刪改查等對數(shù)據(jù)持久化的操作均通過Java 持久層API 中的BaseRepository 技術(shù)實(shí)現(xiàn)。
(3)已借用資產(chǎn)信息管理功能。已借用資產(chǎn)展示的是當(dāng)前用戶借用的資產(chǎn)信息列表,同樣不能夠自行添加或修改。用戶可以按照系統(tǒng)界面展示的邏輯對已借用資產(chǎn)詳細(xì)查看和歸還。
查看資產(chǎn)詳細(xì)信息功能,根據(jù)該資產(chǎn)id 查詢到該用戶的全部信息并以彈窗的形式展示。資產(chǎn)分類檢索將要檢索的信息傳輸?shù)胶笈_(tái),將檢索后符合條件的資產(chǎn)信息以列表的形式展示。
以上的增刪改查等對數(shù)據(jù)持久化的操作均通過Java 持久層API 中的BaseRepository 技術(shù)實(shí)現(xiàn)。
3.2.3 資產(chǎn)借用模塊
資產(chǎn)借用模塊主要實(shí)現(xiàn)對資產(chǎn)的借用和歸還兩個(gè)功能。
(1)資產(chǎn)借用功能。用戶可以在資產(chǎn)列表界面對空閑狀態(tài)的資產(chǎn)進(jìn)行借用操作。
執(zhí)行借用操作后,首先跳轉(zhuǎn)到二維碼生成界面。選擇一張本地圖片并進(jìn)入下一步后,系統(tǒng)將圖片上傳到服務(wù)器同時(shí)對圖片的大小進(jìn)行規(guī)范化。
生成二維碼的同時(shí)將嵌入完成后的二維碼圖片上傳到服務(wù)器并將圖片地址存入該資產(chǎn)信息中的二維碼字段,同時(shí)將該資產(chǎn)信息的狀態(tài)變更為已借用并將借用者信息變更為當(dāng)前用戶,并生成借用資產(chǎn)操作記錄。
(2)資產(chǎn)歸還功能。用戶可以在已借用資產(chǎn)列表界面對資產(chǎn)進(jìn)行歸還操作。
執(zhí)行歸還操作時(shí),首先會(huì)提示是否確認(rèn)歸還。確認(rèn)后首先將資產(chǎn)信息中的二維碼地址和借用者字段清空,刪除二維碼圖片,并生成歸還資產(chǎn)操作記錄[5]。
從測試結(jié)果及用戶的使用反饋來看,系統(tǒng)各個(gè)模塊的功能均符合開發(fā)前對系統(tǒng)的預(yù)期,各項(xiàng)系統(tǒng)功能操作完備且無漏洞,測試結(jié)果準(zhǔn)確無誤,系統(tǒng)可以投入使用。
本文以傳統(tǒng)的設(shè)備(資產(chǎn))管理為基礎(chǔ),結(jié)合二維碼和移動(dòng)終端功能,成功開發(fā)了一款能夠隨時(shí)查詢設(shè)備狀態(tài)信息、準(zhǔn)確匹配系統(tǒng)信息與資產(chǎn)(設(shè)備)實(shí)物的基于二維碼的固定資產(chǎn)信息管理系統(tǒng)。本系統(tǒng)核心功能資產(chǎn)借用通過結(jié)合二維碼和移動(dòng)終端,在借用資產(chǎn)時(shí)生成二維碼實(shí)現(xiàn)資產(chǎn)信息和資產(chǎn)實(shí)物雙向?qū)?yīng),準(zhǔn)確匹配系統(tǒng)信息,極大地提高了固定資產(chǎn)信息管理效率,有效降低管理成本和管理風(fēng)險(xiǎn)。