该系统主要的要求就是实现公文的流转审核,用户有多重类型,在不同用户登录的时候要进入不同的页面,并能执行他们的权限。

用户分四种,普通部门(可以草拟公文并提交),办公室(接受普通部门的公文并编辑,最后提交至副厂长初步审核),副厂长(初步审核公文,签署意见),厂长(最终审核公文)。除此之外我还加人了一个超级管理员可以对公文和用户进行管理。

先梳理一下程序结构,我区分用户的方法是在数据库中为其加入了一个type属性,在登录时通过获取type属性来进入不同的页面,如下图,man为普通部门,office办公室,head2副厂长,head1厂长,admin为超管,其type分别为1,2,3,4,0;

公文的状态识别也是这个方法

在登录时,在serverlet中就获取好该用户的用户类型,然后登录到相应的jsp中,左侧为其功能列表

其不同用户的公文浏览时,根据数据库中的公文状态及当前用户类型进行公文筛选显示

厂长和副厂长可以对待审核公文决定通过或不通过,并可对通过的公文签署意见

厂长拥有的功能与副厂长的基本一致,只在浏览权限上有所区别。

在各个页面和serverlet之间跳转时,为了识别用户类型,用到了session对象,在登录的serverlet中,就把用户的类型保存在session中,在之后的页面中通过获取session中的用户类型来确定执行什么。

serverlet 中type的保存:

javaweb 公文流转系统制作的更多相关文章

  1. YbSoftwareFactory 代码生成插件【二十三】:集成强大的公文流转系统

    今天有空更新博客才发现快一年没有写博客了,不得不感叹时间过得真快.过去的一年确实也挺忙的,在此祝各位博友们新的一年工作顺利.权限模型在过去一年进行了不少的升级,主要集成了公文流转系统.多家手机短信接口 ...

  2. Java web 公文流转系统 完成结果

    河北金力集团公文流转系统 1.项目需求: 河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工.企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定.邢台和唐山.为 ...

  3. 公文流转系统v0.1

    河北金力集团公文流转系统 1.项目需求: 河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工.企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定.邢台和唐山.为 ...

  4. “公文流转系统 v1.0”

    1.项目需求: 河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工.企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定.邢台和唐山.为增加企业的核心竞争力和加强 ...

  5. OA公文流转系统(未完成)

    基本页面比较多,所以就不贴出来了,具体的页面可以自行浏览. 点我进入OA系统浏览界面(未做响应式布局,需电脑端打开) 账号密码: 部门:bumen------bumen 办公室:bangongshi- ...

  6. 2019.12.9java公文流转系统

    自己来写这个系统真是没有什么思路.就弄了个登陆界面,在数据库建了个表,其它的代码一直有错误,登陆不进去.

  7. 使用Unity3D自带动画系统制作下雨效果

    之前看了以前版本的unity3d demo AngryBots ,觉得里面的下雨效果不错,刚好前段时间学习了,写出来跟大家分享下,直接开始. 使用自带动画系统制作下雨效果. 先制作下雨的雨滴涟漪 步骤 ...

  8. 利用qemu模拟嵌入式系统制作全过程

    http://www.tinylab.org/using-qemu-simulation-inserts-the-type-system-to-produce-the-whole-process/ 利 ...

  9. 基于busybox的Linux小系统制作 (initrd)

    我们有时候有需要在busybox基础上,制作linux,可是却不知道具体怎么做,这里将对基于busybox的linux小系统制作做出详细的步骤说明.准备环境:1.一个Redhat完整系统的虚拟机,本次 ...

随机推荐

  1. HDU_4734_数位dp

    http://acm.hdu.edu.cn/showproblem.php?pid=4734 模版题. #include<iostream> #include<cstdio> ...

  2. Go语言实现:【剑指offer】孩子们的游戏

    该题目来源于牛客网<剑指offer>专题. 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的 ...

  3. Elemetary OS deepin-wine 版 微信 和 企业微信 输入框字体显示异常解决

    Elemetary OS deepin-wine 版 微信 和 企业微信 输入框字体显示异常解决 最近体验了Elementary OS 这个系统, 话说我之前都是用的Manjora 的各个桌面版, 突 ...

  4. nginx设置域名转发到指定端口

    1.修改nginx.conf文件,将worker_processes  1 修改为  worker_processes  auto 2.创建端口代理配置文件(域名地址如:xx.baidu.com , ...

  5. Vue实战之【企业开发常见问题】

    1.vue框架使用注意事项和经验 1.1 解决Vue动态路由参数变化,页面数据不更新 问题描述: 遇到动态路由如:/page/:id 从/page/1 切换到 /page/2 发现页面组件没有更新 解 ...

  6. Docker Compose 模板文件 V2

    模板文件是使用Compose的核心,默认模板文件名称为docker-compose.yml ,格式为YAML格式. 目录结构 [root@localhost ~]# tree /opt/compose ...

  7. vuex 状态管理 入门

    vuex是什么 是一个对 数据状态实现集中式管理 的工具.可以解决组件之间传递的问题 多组件共享状态(变量),有一个数据好多组件都用 组件数大于2,任何一个组件修改其他组件都要改变 实现组件通信 St ...

  8. .NET Core MVC下的TagHelper

    .NET web开发者在开发过程中,一定都踩过的坑,明明修改了js文件,可是部署到生产环境,客户反馈说:“还是报错啊”..然后一脸懵逼的去服务器上看文件,确实已经更新了.有经验的coder可能就想到了 ...

  9. springBoot2.x启动项目报java.sql.SQLNonTransientConnectionException

    将项目从springBoot1.x升级到springBoot2.x,启动报错: java.sql.SQLNonTransientConnectionException: Cannot load con ...

  10. python range函数(42)

    在python中使用最多的除了print函数 就是 for循环 了,那么这里就不得不介绍一下python内置函数range函数! 一.range函数简介 python range函数可创建一个整数列表 ...