人力资源管理系统
详细设计说明书
Version 3.0
文档编号 TTS***
2014-06-24
文档历史
| 版本 |
标题 |
内容 |
作者 |
时间 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1编写目的
明确业务背景、业务范围、基本业务逻辑和业务框架,期望读者包括:项目发起人、最终用户、项目投资方、项目管理团队、项目执行团队,以及其他项目干系人。
2参考文档
。人力资源管理系统需求规格说明书
。人力资源管理系统概要设计说明书
3名词解释
¾ GWAP:通用WEB 应用平台(General WEB application platform) 。
¾ B/S:Browser/Server(浏览器/服务器) 。
¾ C/S:Client/Server(客户端/服务器) 。
¾ CSS:是 Cascading Style Sheets(层叠样式表)的简称,CSS 语言是一种标记语言,它不
需要编译可以直接由浏览器执行。
¾ HTML:Hypertext Markup Language 超文字标记语言。
¾ JAVASCRIPT:一种由 Sun Microsystems 所开发的程序脚本语言(它是一种严密的物件
导向的语言,适合在网际网络上发展主从架构的应用程序),常常简称 JS。
4系统架构
4.1功能架构
4.2系统架构
人力资源管理系统采用 4 层结构,主要包括:表现层、控
制层、业务层、持久层。
表现层:主要负责用户交互和结果显示,交易系统和管理系统有不同的 URL 入口界面。 控制层:主要负责系统的访问控制、数据加载和注销,是系统的核心控制单元。控制层
通过系统描述来组织工作。
业务层:实现了交易系统和管理系统的主要业务逻辑,是系统主要的运算单元。
持久层:实现了静态数据和数据库数据的持久化管理,为业务层提供数据服务,是系统
进行数据操作的统一界面。
5.访问控制设计
5.1访问控制流程图
5.2访问控制流程图说明
结合上图,针对每一个消息请求,按照消息请求/回复顺序,作如下说明。
| 编号 |
消息名称 |
消息说明 |
| 1 |
HttpServletRequest |
浏览器发来的 HttpServletRequest 请求 |
| 2 |
ActionForm |
通过 ActionForm获取 Struts 加载的页面表单数据 |
| 3 |
Exectule |
根据struts-config.xml配置调用指定的Action指定的方法 处理请求 |
| 4 |
ActionForm.getXxx() |
通过 ActionForm获取页面表单数据 |
| 5 |
Service Method |
调用业务逻辑 |
| 6 |
Import |
使用 Pojo 进行数据操作 |
| 7 |
Dao Method |
调用 Dao 方法,执行数据库操作 |
| 8 |
Return result |
返回 Dao 执行结果,给 Service |
| 9 |
Return result |
返回 Business 执行结果,给 Action |
| 10 |
ActionForward.findForward |
Action返回执行结果给新的画面 (Struts-Config.xml配置) |
| 11 |
HttpServletResponse |
MappingDispatchAction 返回处理结果给浏览器 |
6域模型设计
6.1视图层设计
参看界面设计标准
6.2控制层设计
6.2.1类图
6.2.2类图描述
HumanAction类
| 方法名 |
功能描述 |
参数和返回值 |
异常处理 |
| inAddHuman |
添加员工档案 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addHuman |
添加员工相片 |
|
Exception |
| managerHuman |
打开员工管理界面,并将所有员工信息显示在页面上 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inUpdateHuman |
修改员工档案时,初始化添加页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updateHuman |
修改员工档案 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteHuman |
删除员工 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| managerHumanForReport |
打开员工管理界面,并将所有员工信息显示在页面上,用于导出数据 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| humanForReport |
导出单个人的数据 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| humanForReportAll |
导出所有人的数据 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| cteateCell |
设置Excel中每列的值和样式 |
HSSFWorkbook wb, HSSFRow row, short col, String val |
Exception |
| humanSchoolingReport |
图形报表 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
OperatorAction类
| 方法名称 |
说明 |
参数和返回值 |
异常 |
| login |
登录验证 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| openPage |
打开页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| managerRole |
角色管理 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inAddRole |
打开角色添加页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addRole |
添加角色 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inUpdateRole |
进入更新权限 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updateRole |
更新权限 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteRole |
删除角色 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| managerOperator |
打开操作员管理界面,并将所有操作员信息显示在页面上 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inAddOperator |
初始化操作员管理页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addOperator |
添加操作员 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteOperator |
删除操作员 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inUpdateOperator |
初始化更新操作员页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) |
Exception |
| updateOperator |
更新操作员页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updatepassword |
更改密码 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
OrganAction类
| 方法名 |
说明 |
参数和返回值 |
异常 |
| loadOrgan |
加载所有机构 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addOrgan |
添加机构 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteOrgan |
删除机构,删除机构只需将其父节点设为null即可 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updateOrgan |
更新机构名称 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| dragOrgan |
拖拽机构 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
PayAction类
| 方法名 |
说明 |
参数和返回者 |
异常 |
| managerPay |
打开工资管理界面,并将所有工资信息显示在页面上 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| payReport |
将工资信息导出 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| cteateCell |
设置Excel中每列的值和样式 |
HSSFWorkbook wb, HSSFRow row, short col, String val |
Exception |
PropertyAction类
| 方法名 |
说明 |
参数和返回值 |
异常 |
| initProperty |
获取所有的公共属性 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inAddProperty |
进入添加公共属性值页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addProperty |
添加公共属性值 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteProperty |
删除公共属性值 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updateProperty |
修改公共属性值 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inUpdateProperty |
进入修改公共属性值页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
ResourceService类
| 方法名 |
说明 |
参数和返回值 |
异常 |
| loadResource |
添加角色时,初始化资源树 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deployTree |
修改角色时,初始化资源树 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
StipendAction类
| 方法名 |
说明 |
参数和返回值 |
异常 |
| initStipendManager |
进入薪酬管理模块 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inAddStipend |
进入添加薪酬标准页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| addStipend |
添加薪酬标准 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| deleteStipend |
删除薪酬标准 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| inUpdateStipend |
进入修改薪酬标准页面 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
| updateStipend |
修改薪酬标准 |
ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response |
Exception |
6.3业务层设计
6.3.1类图
6.3.2类图描述
6.4持久层设计
6.4.1类图
6.4.2类图描述
CommonPropertyDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| selectAllCommonProperty |
查询所有公共属性值 |
无 |
无 |
| getCommonProperty |
根据id查询 |
int id |
无 |
| getCommonPropertyWithOutId |
查询 |
int propertyid |
无 |
| getCommonPropertyByName |
根据名字查询 |
String propertyName |
无 |
CommonPropertyValueDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| selectAllCommonPropertyValue |
查询出所有公共属性 |
|
无 |
| selectCommonPropertyValueByPager |
回调函数,数据分页 |
final Pager pager |
无 |
| selectCommonPropertyValueCount |
数据总行数 |
|
无 |
| addOrDeleteOrUpdateCommonPropertyValue |
添加、修改、删除 |
Commonpropertyvalue cpv |
无 |
| getCommonPropertyValue |
根据id查询 |
int id |
无 |
| selectCommonPropertyValueByName |
添加时保障数据的不重复 |
Commonpropertyvalue cpv |
无 |
| selectCommonPropertyValueByNameWithOutCurr |
修改时保障数据的不重复 |
Commonpropertyvalue cpv |
无 |
| getCommonPropertyValueBypropertyid |
添加员工档案时,读取公共属性信息 |
int propertyid |
无 |
| getCommonPropertyValueBypropertyid |
查询 |
int propertyid, String value |
无 |
HumanDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| addHuman |
添加员工信息 |
Human human |
|
| selectHumanByPager |
回调函数,数据分页 |
final Pager pager |
|
| selectHumanByPager |
回调函数,数据分页,带有查询参数 |
final Pager pager, final String name |
|
| selectHumanCount |
数据总行数 |
|
|
| selectHumanCount |
数据总行数,带有查询参数 |
String name |
|
| updateHuman |
更新员工信息 |
Human human |
|
| selectHumanById |
根据id查询档案信息 |
int id |
|
| selectAllHuman |
查询出要发放工资的所有员工 |
|
|
| selectHumanBySchoolingCount |
查询出不同学历对应的人数 |
String schooling |
|
OperatorDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| selectOperatorByNameAndPassword |
登陆 |
Operator operator |
|
| selectOperatorByName |
添加操作员时,查询是否有相同登录名的操作员 |
Operator operator |
|
| selectOperatorByNameWitchOutCurr |
修改操作员时,查询是否有相同登录名的操作员 |
Operator operator |
|
| addOrDeleteOrUpdateOperator |
添加,删除,修改操作员 |
Operator operator |
|
| selectOperatorById |
根据id查询操作员 |
Operator operator |
|
| selectOperatorByPager |
回调函数,数据分页 |
final Pager pager |
|
| selectOperatorCount |
数据总行数 |
|
|
OrganDao类
| 方法名 |
功能说明 |
参数和返回值 |
异常 |
| selectOrganById |
根据id查询组织机构 |
int id |
|
| addOrgan |
添加组织机构 |
Organ organ |
|
| updateOrgan |
修改组织机构 |
Organ organ |
|
| selectOrganByName |
根据名字查询组织机构 |
Organ organ |
|
| selectOrganByNameWithOutCurr |
查询 |
Organ organ |
|
PayDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| addPay |
添加工资报表 |
Pay pay |
|
| selectPayByPager |
回调函数,数据分页 |
final Pager pager, final String starttime, final String endtime |
Exception |
| selectPay |
回调函数,数据分页 |
final String starttime, final String endtime |
Exception |
| selectPayCount |
数据总行数 |
String starttime, String endtime |
Exception |
RoleDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| addRole |
添加角色 |
Role role |
|
| selectRoleByPager |
回调函数,数据分页 |
final Pager pager |
|
| selectRoleCount |
数据总行数 |
|
|
| selectRoleByName |
根据角色名称查询角色 |
Role role |
|
| selectRoleByNameByAjax |
根据角色名称查询角色(AJAX) |
String name |
|
| updateRole |
修改角色 |
Role role |
|
| selectRoleByNameWithOutCurr |
根据角色名称查询角色,不包括当前记录,角色修改时判断角色名称是否重复 |
Role role |
|
| deleteRole |
删除角色 |
Role role |
|
| selectAllRoleWithOutCurr |
查询出所有的角色,不包括传入参数 |
Role role |
|
| selectAllRole |
查询出所有的角色 |
|
|
StipendDao类
| 方法名称 |
功能说明 |
参数和返回值 |
异常 |
| selectStipendByPager |
回调函数,数据分页 |
final Pager pager |
|
| selectStipendCount |
数据总行数 |
|
|
| selectStipendByName |
添加时保证数据不重复 |
Stipend stipend |
|
| selectStipendByNameWithOutCurr |
修改时保证数据不重复 |
Stipend stipend |
|
| addOrDeleteOrUpdateStipend |
添加或修改或删除 |
Stipend stipend |
|
| getStipend |
根据id查询 |
int stipendid |
|
| selectAllStipend |
查询所有薪金标准 |
|
|
| selectSumStipend |
根据id查询出工资总数 |
final int id |
|
| selectAllStipend |
查询所有薪金标准 |
|
|
7.数据库设计
7.1E-R图
7.2数据实体描述
Role_resource表
Stipend表
Property表
PropertyValue表
Human表
Operator表
Organ表
Pay表
Resource表
Role表
8.系统环境
¾ 操作系统: WINDOWS XP
¾ 虚拟机:jdk-6-linux-i586或 jdk-6-win-i586
¾ 浏览器:FireFox2.0 或IE9
¾ Web 服务器:Apache Tomcat 6.0
¾ 数据库:sqlserver 2005
¾ 设计工具:IBM RSA
¾ IDE 工具:MyEclipse6.0(集成 Eclipse3.3)