蔡明月,甄 勇,苏林晗
(中国铁路南宁局集团有限公司信息技术所,1.3工程师,2.高级工程师,广西 南宁 530029)
国内外企业中有关企业协同办公系统的运用非常广泛[1],目前个别铁路集团公司的组织人事系统在协同办公方面做出了探索和尝试,取得了一定的成绩,较大的提高了工作效率。从全国铁路看,铁路集团公司各基层单位利用现有计算机、网络系统资源在优化管理、提高工作效率方面的办公OA 也作了许多尝试,积累了许多宝贵的经验,但在组织人事方面的研究和运用还缺乏目的性和系统性。相关调研统计分析表明,铁路集团公司人事部在人事管理、人才培养、基层党建三个方面协同办公的综合运用需求非常迫切。
本文根据铁路集团公司组织人事系统在协同办公方面的需求,设计并实现了基于SSM 框架的组工管理互联信息平台,达到进一步优化人事、人才、党建业务办公手段,创新组织人事管理模式的目的。
系统前端采用的是Bootstrap 前端框架结合EasyUI 框架实现用户界面和交互,后端使用的是SSM 架构技术,前后端通信数据形式为JSON 数据形式[2]。SSM 框架因其优秀的可维护性和复用性,已成为当前多数Web 应用的首要选择。考虑到组工互联信息管理平台对于分层架构及可靠性和可移植性好的要求,本平台选用了SSM 架构技术。采用SSM架构技术开发有如下优势:
1)典型的MVC 三层架构模式(模型Model、视图View 和控制器Controller)[3]。程序开发人员采用该模式能够降低开发过程中相关传统复杂技术标准的干扰,便于程序开发人员将更多的精力集中于系统的逻辑设计,从而大幅提高了开发效率[4]。另外相比其它框架,SSM 架构对于因客户需求的改变带来的系统重构具有更高的成功率。
2)实现与数据库的动态交互。SSM 架构使用MyBatis 持久层框架,该框架专注与SQL 本身,将实体类与SQL 语句之间建立映射关系,是一种灵活的dao 层优化方案,适用于性能要求高、需求多变的项目。此外,MyBatis 框架将SQL 语句存放于xml 配置文件中,支持编写动态SQL,实现了SQL 语句与代码的分离,显著提高了SQL 语句的可重用性。在高并发的系统开发中,MyBatis 的控制能力强,优化成本低[5]。
3)先进的解耦性。SSM 框架通过Spring 的控制反转技术降低了对象之间的依赖程度,实现了对象之间的解耦,极大地降低了因需求变更带来的系统重构成本。SSM 框架的优势是采用松耦合的方式将系统的构件逻辑连接起来,目的是使接口层的构件进行耦合连接,从而实现代码层构件之间的解耦[6]。
系统采用“浏览器/服务器”模式(即B/S模式)构建,部署在铁路集团公司提供的一台PC 服务器上,公司用户通过铁路集团局域网访问系统。
2.1 系统主要功能系统按照整体规划、集中搭建、分权限维护的原则,将各办公管理功能模块集成到一起。系统总体功能如图1所示:
图1 系统总体功能图
2.2 实体类设计SSM 架构将业务处理流程分为view 层、controller 层、service 层和dao 层。因此,系统业务处理类设计如图2所示。
图2 系统实体类图
2.3 数据库设计考虑到旧版系统数据可迁移性,组工管理互联信息平台主要包括用户、信息公告、请假单、大学毕业生、优秀人才等实体类;系统的数据库主表由用户信息表、公告信息表、信息类别表、信息记录表、大学生信息表、单位表、任职记录表等构成。系统E-R图见图3。
图3 系统E-R图
2.4 业务流程设计组工管理互联信息平台涉及业务面广,旨在实现铁路集团公司组织人事办公流程电子一体化。下面以请假管理为例进行业务流程设计。
请假管理是对科员、科长、分管领导、部长四个级别进行请假业务流设计。科员请假需要先提交给科长审批,通过后再提交给分管领导审批,审批通过后方可打印请假单。科长请假需要先提交给分管领导审批,通过后再提交给处长审批,审批通过后方可打印请假单。请假管理流程图如图4所示:
图4 请假管理流程图
在系统结构图中,后台管理包括六个功能模块,组织人事信息发布是组工管理互联信息平台的主要功能之一,下文主要介绍信息发布管理查询功能的实现。
SSM框架是典型的三层架构,可分为表示层、业务层和持久层,其中业务层又可分为控制层和事物层。系统详细架构图如图5所示。
图5 系统详细架构图
图5 中各层主要作用简介如下:
1)表示层即用户界面层,负责格式化数据并把数据呈现给用户,包括数据展示、用户交互、数据验证、页面设计等功能。本系统中采用JSP 动态页面作为用户界面,页面布局及业务表单采用EasyUI 框架,并结合Ajax 异步刷新技术实现页面动态丰富的效果。当用户需要查看公告信息时,只需要打开公告通知页面,页面在加载完毕后会自动发送一条获取公告信息请求到控制层。控制层将请求结果封装成Json数据返回给公告通知页面。
2)控制层处于表示层与业务逻辑层之间,用于处理表示层请求并根据请求调用业务逻辑层的接口来控制业务流程。在发布公告通知信息时,Spring将Form 表单中临时存储公告信息的每个字段自动封装成一个表单实体类ZgglInfo,并将该实体类作为请求参数传递到控制层,控制层调用业务逻辑层数据持久化接口将信息保存到数据库。对于不同的业务流程,如获取信息发布模块、获取部内办公模块,需要定义不同的控制层方法。
(3)业务逻辑层是系统业务逻辑的核心处理模块。业务逻辑层接受控制层的调用,并完成系统业务数据处理。根据业务逻辑的不同,业务逻辑层会调用相应的持久层接口,完成对数据库的增加、删除、查询、修改等操作,并将处理结果返回到上一层中。当业务逻辑层发生异常时,会对数据库进行回滚操作,确保了数据库中数据的完整性与一致性。
(4)持久层是数据库操作层,直接操作数据库中的数据。本系统使用Mybatis持久层框架,以数据表为单位,为每个数据表分别配置一个xml 处理文件,用来处理该数据表的添加、修改、删除、查询操作。
组工管理互联信息平台的实施和应用,整合了组织人事信息发布管理、部内办公系统、多级联动协同办公业务信息资源,形成统一资源管理体系。在实际工作中达到全方位、多角度管理组织人事、人才、党建业务信息的效果,推动组织人事管理向着规范化、标准化方向迈进,在创新办公管理模式方面也起到了积极作用。开发基于SSM 框架的办公互联信息管理系统已成为提高铁路信息化管理水平的重要研究方向和发展趋势。