蔡明月,甄 勇,蘇林晗
(中國(guó)鐵路南寧局集團(tuán)有限公司信息技術(shù)所,1.3工程師,2.高級(jí)工程師,廣西 南寧 530029)
國(guó)內(nèi)外企業(yè)中有關(guān)企業(yè)協(xié)同辦公系統(tǒng)的運(yùn)用非常廣泛[1],目前個(gè)別鐵路集團(tuán)公司的組織人事系統(tǒng)在協(xié)同辦公方面做出了探索和嘗試,取得了一定的成績(jī),較大的提高了工作效率。從全國(guó)鐵路看,鐵路集團(tuán)公司各基層單位利用現(xiàn)有計(jì)算機(jī)、網(wǎng)絡(luò)系統(tǒng)資源在優(yōu)化管理、提高工作效率方面的辦公OA 也作了許多嘗試,積累了許多寶貴的經(jīng)驗(yàn),但在組織人事方面的研究和運(yùn)用還缺乏目的性和系統(tǒng)性。相關(guān)調(diào)研統(tǒng)計(jì)分析表明,鐵路集團(tuán)公司人事部在人事管理、人才培養(yǎng)、基層黨建三個(gè)方面協(xié)同辦公的綜合運(yùn)用需求非常迫切。
本文根據(jù)鐵路集團(tuán)公司組織人事系統(tǒng)在協(xié)同辦公方面的需求,設(shè)計(jì)并實(shí)現(xiàn)了基于SSM 框架的組工管理互聯(lián)信息平臺(tái),達(dá)到進(jìn)一步優(yōu)化人事、人才、黨建業(yè)務(wù)辦公手段,創(chuàng)新組織人事管理模式的目的。
系統(tǒng)前端采用的是Bootstrap 前端框架結(jié)合EasyUI 框架實(shí)現(xiàn)用戶界面和交互,后端使用的是SSM 架構(gòu)技術(shù),前后端通信數(shù)據(jù)形式為JSON 數(shù)據(jù)形式[2]。SSM 框架因其優(yōu)秀的可維護(hù)性和復(fù)用性,已成為當(dāng)前多數(shù)Web 應(yīng)用的首要選擇??紤]到組工互聯(lián)信息管理平臺(tái)對(duì)于分層架構(gòu)及可靠性和可移植性好的要求,本平臺(tái)選用了SSM 架構(gòu)技術(shù)。采用SSM架構(gòu)技術(shù)開發(fā)有如下優(yōu)勢(shì):
1)典型的MVC 三層架構(gòu)模式(模型Model、視圖View 和控制器Controller)[3]。程序開發(fā)人員采用該模式能夠降低開發(fā)過程中相關(guān)傳統(tǒng)復(fù)雜技術(shù)標(biāo)準(zhǔn)的干擾,便于程序開發(fā)人員將更多的精力集中于系統(tǒng)的邏輯設(shè)計(jì),從而大幅提高了開發(fā)效率[4]。另外相比其它框架,SSM 架構(gòu)對(duì)于因客戶需求的改變帶來的系統(tǒng)重構(gòu)具有更高的成功率。
2)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的動(dòng)態(tài)交互。SSM 架構(gòu)使用MyBatis 持久層框架,該框架專注與SQL 本身,將實(shí)體類與SQL 語句之間建立映射關(guān)系,是一種靈活的dao 層優(yōu)化方案,適用于性能要求高、需求多變的項(xiàng)目。此外,MyBatis 框架將SQL 語句存放于xml 配置文件中,支持編寫動(dòng)態(tài)SQL,實(shí)現(xiàn)了SQL 語句與代碼的分離,顯著提高了SQL 語句的可重用性。在高并發(fā)的系統(tǒng)開發(fā)中,MyBatis 的控制能力強(qiáng),優(yōu)化成本低[5]。
3)先進(jìn)的解耦性。SSM 框架通過Spring 的控制反轉(zhuǎn)技術(shù)降低了對(duì)象之間的依賴程度,實(shí)現(xiàn)了對(duì)象之間的解耦,極大地降低了因需求變更帶來的系統(tǒng)重構(gòu)成本。SSM 框架的優(yōu)勢(shì)是采用松耦合的方式將系統(tǒng)的構(gòu)件邏輯連接起來,目的是使接口層的構(gòu)件進(jìn)行耦合連接,從而實(shí)現(xiàn)代碼層構(gòu)件之間的解耦[6]。
系統(tǒng)采用“瀏覽器/服務(wù)器”模式(即B/S模式)構(gòu)建,部署在鐵路集團(tuán)公司提供的一臺(tái)PC 服務(wù)器上,公司用戶通過鐵路集團(tuán)局域網(wǎng)訪問系統(tǒng)。
2.1 系統(tǒng)主要功能系統(tǒng)按照整體規(guī)劃、集中搭建、分權(quán)限維護(hù)的原則,將各辦公管理功能模塊集成到一起。系統(tǒng)總體功能如圖1所示:
圖1 系統(tǒng)總體功能圖
2.2 實(shí)體類設(shè)計(jì)SSM 架構(gòu)將業(yè)務(wù)處理流程分為view 層、controller 層、service 層和dao 層。因此,系統(tǒng)業(yè)務(wù)處理類設(shè)計(jì)如圖2所示。
圖2 系統(tǒng)實(shí)體類圖
2.3 數(shù)據(jù)庫(kù)設(shè)計(jì)考慮到舊版系統(tǒng)數(shù)據(jù)可遷移性,組工管理互聯(lián)信息平臺(tái)主要包括用戶、信息公告、請(qǐng)假單、大學(xué)畢業(yè)生、優(yōu)秀人才等實(shí)體類;系統(tǒng)的數(shù)據(jù)庫(kù)主表由用戶信息表、公告信息表、信息類別表、信息記錄表、大學(xué)生信息表、單位表、任職記錄表等構(gòu)成。系統(tǒng)E-R圖見圖3。
圖3 系統(tǒng)E-R圖
2.4 業(yè)務(wù)流程設(shè)計(jì)組工管理互聯(lián)信息平臺(tái)涉及業(yè)務(wù)面廣,旨在實(shí)現(xiàn)鐵路集團(tuán)公司組織人事辦公流程電子一體化。下面以請(qǐng)假管理為例進(jìn)行業(yè)務(wù)流程設(shè)計(jì)。
請(qǐng)假管理是對(duì)科員、科長(zhǎng)、分管領(lǐng)導(dǎo)、部長(zhǎng)四個(gè)級(jí)別進(jìn)行請(qǐng)假業(yè)務(wù)流設(shè)計(jì)。科員請(qǐng)假需要先提交給科長(zhǎng)審批,通過后再提交給分管領(lǐng)導(dǎo)審批,審批通過后方可打印請(qǐng)假單??崎L(zhǎng)請(qǐng)假需要先提交給分管領(lǐng)導(dǎo)審批,通過后再提交給處長(zhǎng)審批,審批通過后方可打印請(qǐng)假單。請(qǐng)假管理流程圖如圖4所示:
圖4 請(qǐng)假管理流程圖
在系統(tǒng)結(jié)構(gòu)圖中,后臺(tái)管理包括六個(gè)功能模塊,組織人事信息發(fā)布是組工管理互聯(lián)信息平臺(tái)的主要功能之一,下文主要介紹信息發(fā)布管理查詢功能的實(shí)現(xiàn)。
SSM框架是典型的三層架構(gòu),可分為表示層、業(yè)務(wù)層和持久層,其中業(yè)務(wù)層又可分為控制層和事物層。系統(tǒng)詳細(xì)架構(gòu)圖如圖5所示。
圖5 系統(tǒng)詳細(xì)架構(gòu)圖
圖5 中各層主要作用簡(jiǎn)介如下:
1)表示層即用戶界面層,負(fù)責(zé)格式化數(shù)據(jù)并把數(shù)據(jù)呈現(xiàn)給用戶,包括數(shù)據(jù)展示、用戶交互、數(shù)據(jù)驗(yàn)證、頁面設(shè)計(jì)等功能。本系統(tǒng)中采用JSP 動(dòng)態(tài)頁面作為用戶界面,頁面布局及業(yè)務(wù)表單采用EasyUI 框架,并結(jié)合Ajax 異步刷新技術(shù)實(shí)現(xiàn)頁面動(dòng)態(tài)豐富的效果。當(dāng)用戶需要查看公告信息時(shí),只需要打開公告通知頁面,頁面在加載完畢后會(huì)自動(dòng)發(fā)送一條獲取公告信息請(qǐng)求到控制層??刂茖訉⒄?qǐng)求結(jié)果封裝成Json數(shù)據(jù)返回給公告通知頁面。
2)控制層處于表示層與業(yè)務(wù)邏輯層之間,用于處理表示層請(qǐng)求并根據(jù)請(qǐng)求調(diào)用業(yè)務(wù)邏輯層的接口來控制業(yè)務(wù)流程。在發(fā)布公告通知信息時(shí),Spring將Form 表單中臨時(shí)存儲(chǔ)公告信息的每個(gè)字段自動(dòng)封裝成一個(gè)表單實(shí)體類ZgglInfo,并將該實(shí)體類作為請(qǐng)求參數(shù)傳遞到控制層,控制層調(diào)用業(yè)務(wù)邏輯層數(shù)據(jù)持久化接口將信息保存到數(shù)據(jù)庫(kù)。對(duì)于不同的業(yè)務(wù)流程,如獲取信息發(fā)布模塊、獲取部?jī)?nèi)辦公模塊,需要定義不同的控制層方法。
(3)業(yè)務(wù)邏輯層是系統(tǒng)業(yè)務(wù)邏輯的核心處理模塊。業(yè)務(wù)邏輯層接受控制層的調(diào)用,并完成系統(tǒng)業(yè)務(wù)數(shù)據(jù)處理。根據(jù)業(yè)務(wù)邏輯的不同,業(yè)務(wù)邏輯層會(huì)調(diào)用相應(yīng)的持久層接口,完成對(duì)數(shù)據(jù)庫(kù)的增加、刪除、查詢、修改等操作,并將處理結(jié)果返回到上一層中。當(dāng)業(yè)務(wù)邏輯層發(fā)生異常時(shí),會(huì)對(duì)數(shù)據(jù)庫(kù)進(jìn)行回滾操作,確保了數(shù)據(jù)庫(kù)中數(shù)據(jù)的完整性與一致性。
(4)持久層是數(shù)據(jù)庫(kù)操作層,直接操作數(shù)據(jù)庫(kù)中的數(shù)據(jù)。本系統(tǒng)使用Mybatis持久層框架,以數(shù)據(jù)表為單位,為每個(gè)數(shù)據(jù)表分別配置一個(gè)xml 處理文件,用來處理該數(shù)據(jù)表的添加、修改、刪除、查詢操作。
組工管理互聯(lián)信息平臺(tái)的實(shí)施和應(yīng)用,整合了組織人事信息發(fā)布管理、部?jī)?nèi)辦公系統(tǒng)、多級(jí)聯(lián)動(dòng)協(xié)同辦公業(yè)務(wù)信息資源,形成統(tǒng)一資源管理體系。在實(shí)際工作中達(dá)到全方位、多角度管理組織人事、人才、黨建業(yè)務(wù)信息的效果,推動(dòng)組織人事管理向著規(guī)范化、標(biāo)準(zhǔn)化方向邁進(jìn),在創(chuàng)新辦公管理模式方面也起到了積極作用。開發(fā)基于SSM 框架的辦公互聯(lián)信息管理系統(tǒng)已成為提高鐵路信息化管理水平的重要研究方向和發(fā)展趨勢(shì)。