公文流转系统
1、项目需求:
河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工。企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定、邢台和唐山。为增加企业的核心竞争力和加强管理的科学程度,近期企业将在全集团实行ERP管理,建立网页版公文流转系统。具体部门:主厂区、一分厂、二分厂、三分厂、销售部门、财务部门、办公室;领导:三位副厂长(分别管理生产、销售、财务)、一位厂长。
流程图如下
2.
功能设计:
-
公文拟制:创建新的电子公文,对创建的电子公文进行上传操作。
-
签收公文:当接收方接收公文后,会给发送方发回执信息,确认公文已经收到。
-
浏览公文(已签收的公文):
1) 选择日期段。
2) 通过“查询”功能,显示该时间段内已通过审签的正式公文。
3) 点击公文标题,将会显示出该公文的具体信息。
-
修改公文:对拟制好的的电子公文进行格式化处理操作,套用公文样例。
-
公文流转:按照公文流转流程设定公文接收用户。
-
删除公文:如果该公文没有通过审核或审签,需要删除可以利用“删除”功能。确定后,系统提示公文删除成功,删除的公文将在“被删除公文”模块中的显示。
-
公文发送:操作员要根据单位管理员选择的公文的流程进行公文的流转发送,实现待发公文和已发送公文的管理
-
审核公文(修改并签意见):签署审核意见和修改意见,并将退回办公室。
-
有审签公文(修改并签意见):签署审前意见和修改意见,若同意,则生成正式公文并交由办公室转发。
-
浏览已发所有公文:按日期查看所有已发公文,点击标题可查看具体信息。
-
公文查询:是查询由公文交换系统处理过的公文,并且建立或检查公文详尽的索引信息。可以根据发送机构、接收机构、公文种类和其它开放信息进行公文数据查询。
-
系统管理:
-
角色配置管理
-
用户权限维护功能:实现对用户的角色管理。
-
角色维护功能:实现对角色权限的管理,主要有编辑、增加和删除操作。
-
-
用户管理:查看用户、新开用户、暂停用户、用户信息修改、删除用户
-
单位管理员设置功能:每个单位的操作员实现修改密码、修改个人信息
-
3。具体实现功能实现的登录界面以及录入等基本操作,
Dao层代码如
package com.official.bean; public class Doc { private int id; private String tipplace; private String ftipplace; private int deletestatus; private int callback; public int getCallback() { return callback; } public void setCallback(int callback) { this.callback = callback; } public int getDeletestatus() { return deletestatus; } public void setDeletestatus(int deletestatus) { this.deletestatus = deletestatus; } public String getFtipplace() { return ftipplace; } public void setFtipplace(String ftipplace) { this.ftipplace = ftipplace; } public String getTipplace() { return tipplace; } public void setTipplace(String tipplace) { this.tipplace = tipplace; } public int getId() { return id; } public void setId(int id) { this.id = id; } private String title; private String owner; private String time; private String receiver; private int status; private int result; private String place; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getOwner() { return owner; } public void setOwner(String owner) { this.owner = owner; } public String getTime() { return time; } public void setTime(String time) { this.time = time; } public String getReceiver() { return receiver; } public void setReceiver(String receiver) { this.receiver = receiver; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public int getResult() { return result; } public void setResult(int result) { this.result = result; } public String getPlace() { return place; } public void setPlace(String place) { this.place = place; } }
package com.official.bean; public class Doc { private int id; private String tipplace; private String ftipplace; private int deletestatus; private int callback; public int getCallback() { return callback; } public void setCallback(int callback) { this.callback = callback; } public int getDeletestatus() { return deletestatus; } public void setDeletestatus(int deletestatus) { this.deletestatus = deletestatus; } public String getFtipplace() { return ftipplace; } public void setFtipplace(String ftipplace) { this.ftipplace = ftipplace; } public String getTipplace() { return tipplace; } public void setTipplace(String tipplace) { this.tipplace = tipplace; } public int getId() { return id; } public void setId(int id) { this.id = id; } private String title; private String owner; private String time; private String receiver; private int status; private int result; private String place; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getOwner() { return owner; } public void setOwner(String owner) { this.owner = owner; } public String getTime() { return time; } public void setTime(String time) { this.time = time; } public String getReceiver() { return receiver; } public void setReceiver(String receiver) { this.receiver = receiver; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public int getResult() { return result; } public void setResult(int result) { this.result = result; } public String getPlace() { return place; } public void setPlace(String place) { this.place = place; } }
数据库连接
package util; //数据库连接 import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * 数据库连接工具 * @author Zheng * */ public class DBUtil { public static String db_url = "jdbc:mysql://localhost:3306/test?useSSL=false"; public static String db_user = "root"; public static String db_pass = "root"; public static Connection getConn () { Connection conn = null; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 conn = DriverManager.getConnection(db_url, db_user, db_pass); } catch (Exception e) { e.printStackTrace(); } return conn; } /** * 关闭连接 * @param state * @param conn */ public static void close (Statement state, Connection conn) { if (state != null) { try { state.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } public static void close (ResultSet rs, Statement state, Connection conn) { if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (state != null) { try { state.close(); } catch (SQLException e) { e.printStackTrace(); } } if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
登录界面
<%@ page import="java.sql.*" language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>登录界面</title> </head> <body> <center> <h1 style="color:red">登录</h1> <form id="indexform" name="indexForm" action="logincheck.jsp" method="post"> <table border="0"> <tr> <td>账号:</td> <td><input type="text" name="username"></td> </tr> <tr> <td>密码:</td> <td><input type="password" name="password"> </td> </tr> </table> <br> <input type="submit" value="登录" style="color:#BC8F8F"> </form> <form action="zhuce.jsp"> <input type="submit" value="注册" style="color:#BC8F8F"> </form> </center> </body> </html>
<%@ page import="java.sql.*" language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>登录界面</title> </head> <body> <center> <h1 style="color:red">登录</h1> <form id="indexform" name="indexForm" action="logincheck.jsp" method="post"> <table border="0"> <tr> <td>账号:</td> <td><input type="text" name="username"></td> </tr> <tr> <td>密码:</td> <td><input type="password" name="password"> </td> </tr> </table> <br> <input type="submit" value="登录" style="color:#BC8F8F"> </form> <form action="zhuce.jsp"> <input type="submit" value="注册" style="color:#BC8F8F"> </form> </center> </body> </html>