Skip to content

ShotoZheng/OA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OA

SSM 整合开发的办公系统核心模块

项目环境

win10 + Intellij IDEA + MySql 8.0.11 + Tomcat 7.0

主要技术

  • Spring Ioc
  • Spring 与 MyBatis 的整合
  • Spring 声明式事务
  • Spring 拦截器
  • 请求响应编码过滤器

项目结构

项目使用 Maven 工具分为三个 Module 进行开发,分别对应 Dao、Service 和 Web 三层。

功能模块

数据库设计模块

部门信息管理模块

部门信息管理模块主要包含部门信息的增删改查功能。

员工信息管理模块

员工信息管理模块与部门管理模块功能类似,主要包含增删改查功能。

登录与个人中心模块

该模块主要包含的功能有用户登录、退出、个人信息查看以及用户密码修改的功能。需要注意的是用户的登录信息腰存储到了 Session 对象中,并对非登录用户的非法操作和访问进行了拦截,这里使用到了登录拦截器。

报销单处理模块

报销单处理模块主要包含报销单填写、个人报销单查看、待处理报销单查看、报销单修改、报销单提交、报销单审核和打款等功能。

报销单处理模块较为复杂,其处理流程如下图所示:

该 OA 系统存在普通员工、部门经理、总经理和财务四个角色,在报销单处理流程中有着不同的功能。

  • 员工:负责填写和提交报销单,如果提交的报销单被部门经理或总经理打回,那么普通员工可以进行修改并重新提交;
  • 部门经理:负责审核员工提交上来的报销单,部门经理可以打回报销单给员工。如果部门经理拒绝该报销单,那么该保险单将无效。如果部门经理对报销单审核通过,那么系统会判断报销金额是否大于5000元,如果大于则需要交给总经理进行复审,否则直接提交给财务;
  • 总经理:负责对报销金额大于5000元的报销单进行复审。总经理可以将报销单打回给员工或者直接拒绝该报销单。如果总经通过报销单申请,那么会提交给财务;
  • 财务:负责根据报销单进行打款操作。

其他

  • DTO:使用到了数据传输对象 ClaimVoucherInfo,该对象可以主要用于页面与控制器的数据传输,如报销单和报销单明细信息。
  • 工具类:使用到了 Contant 工具类,如获取报销单状态、报销单处理方式、费用类别、员工职位和报销审核额度等信息。

项目展示

项目的部门页面如下图所示:

About

SSM整合开发的办公系统核心模块

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published