公文流转系统⑥|厂长功能页
一、效果如下:
二、代码如下:
(1)Factory.jsp
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="UTF-8"> 7 <title>厂长功能页</title> 8 <link rel="stylesheet" href=".//layui/css/layui.css" media="all"> 9 <script src=".//layui/layui.all.js"></script> 10 <script src=".//layui/layui.js"></script> 11 <script type="text/javascript"> 12 13 //JavaScript代码区域 14 layui.use('element', function(){ 15 var element = layui.element; 16 }); 17 18 </script> 19 </head> 20 <body class="layui-layout-body"> 21 22 <div class="layui-layout layui-layout-admin"> 23 <div class="layui-header"> 24 <div class="layui-logo"> 25 <% 26 String department=(String)session.getAttribute("department"); 27 out.print(department); 28 %> 29 功能页欢迎 30 <% 31 String username=(String)session.getAttribute("username"); 32 out.print(username); 33 %> 34 </div> 35 <!-- 水平导航 --> 36 <ul class="layui-nav layui-layout-right"> 37 <li class="layui-nav-item "><a href="index.jsp">退出</a></li> 38 </ul> 39 </div> 40 41 <div class="layui-side layui-bg-black"> 42 <div class="layui-side-scroll"> 43 <!-- 左侧导航 --> 44 <ul class="layui-nav layui-nav-tree" > 45 <li class="layui-nav-item"><a href="FactoryServlet?method=review_papers" target="frame">审签公文</a></li> 46 </ul> 47 </div> 48 </div> 49 <div class="layui-body"> 50 <!-- 内容主体区域 --> 51 <iframe name="frame" width="100%" height="100%" 52 style="border: 1px solid #CCC;"></iframe> 53 </div> 54 <div> 55 <div> 56 <input type="text" id="date" /> 57 </div> 58 </div> 59 </div> 60 61 </body> 62 </html>
(2)Factory_review_papwes.jsp
1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 2 <%@ page language="java" contentType="text/html; charset=UTF-8" 3 pageEncoding="UTF-8"%> 4 <!DOCTYPE html> 5 <html> 6 <head> 7 <meta charset="UTF-8"> 8 <title>审签公文</title> 9 <link rel="stylesheet" href=".//layui/css/layui.css" media="all"> 10 <script src=".//layui/layui.all.js"></script> 11 <script src=".//layui/layui.js"></script> 12 </head> 13 <body> 14 <table class="layui-table"> 15 <colgroup> 16 <col width="150"> 17 <col width="200"> 18 <col> 19 </colgroup> 20 <thead> 21 <tr> 22 <th>id</th> 23 <th>公文标题</th> 24 <th>公文内容</th> 25 <th>时间</th> 26 <th>创建人</th> 27 <th>操作</th> 28 </tr> 29 </thead> 30 <tbody> 31 <c:forEach items="${list}" var="document" varStatus="status"> 32 <tr> 33 <td>${ status.index + 1}</td> 34 <td>${document.title}</td> 35 <td>${document.content}</td> 36 <td>${document.time}</td> 37 <td>${document.createPeople}</td> 38 <td><button class="layui-btn layui-btn-normal" 39 onclick="window.location.href='FactoryServlet?method=check&title=${document.title}'">审签</button></td> 40 </tr> 41 </c:forEach> 42 </tbody> 43 </table> 44 </body> 45 </html>
(3)Factory_check.jsp
1 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 2 <%@ page language="java" contentType="text/html; charset=UTF-8" 3 pageEncoding="UTF-8"%> 4 <!DOCTYPE html> 5 <html> 6 <head> 7 <meta charset="UTF-8"> 8 <title>审签公文</title> 9 <link rel="stylesheet" href=".//layui/css/layui.css" media="all"> 10 <script src=".//layui/layui.all.js"></script> 11 <script src=".//layui/layui.js"></script> 12 </head> 13 <body> 14 <form class="layui-form" action="FactoryServlet?method=checkResult" 15 method="post"> 16 <c:forEach items="${list}" var="document"> 17 <div class="layui-form-item"> 18 <label class="layui-form-label">公文标题</label> 19 <div class="layui-input-inline"> 20 <input type="text" name="title" required lay-verify="required" 21 placeholder="请输入公文标题" autocomplete="off" class="layui-input" 22 value="${document.title}"> <input type="hidden" 23 name="judgetitle" required lay-verify="required" 24 placeholder="请输入公文标题" autocomplete="off" class="layui-input" 25 value="${document.title}"> 26 </div> 27 <div class="layui-form-mid layui-word-aux">(标题不能修改喔)</div> 28 </div> 29 <div class="layui-form-item layui-form-text"> 30 <label class="layui-form-label">公文内容</label> 31 <div class="layui-input-block">${document.content}</div> 32 </div> 33 <div class="layui-form-item"> 34 <label class="layui-form-label">时间</label> 35 <div class="layui-inline">${document.time}</div> 36 </div> 37 <div class="layui-form-item"> 38 <label class="layui-form-label">创建人</label> 39 <div class="layui-input-block">${document.createPeople}</div> 40 </div> 41 <div class="layui-form-item"> 42 <label class="layui-form-label">是否同意</label> 43 <div class="layui-input-block"> 44 <input type="radio" name="factoryAgree" value="同意" title="同意" 45 checked> <input type="radio" name="factoryAgree" 46 value="不同意" title="不同意"> 47 </div> 48 </div> 49 <div class="layui-form-item layui-form-text"> 50 <label class="layui-form-label">意见</label> 51 <div class="layui-input-block"> 52 <textarea name="factoryOpinion" placeholder="请输入您的意见" 53 class="layui-textarea"></textarea> 54 </div> 55 </div> 56 <div class="layui-form-item"> 57 <div class="layui-input-block"> 58 <button class="layui-btn" lay-submit>提交</button> 59 <button type="reset" class="layui-btn layui-btn-primary">重置</button> 60 </div> 61 </div> 62 </c:forEach> 63 </form> 64 </body> 65 </html>
(4)FactoryServlet.java
1 package servlet; 2 3 import java.io.IOException; 4 import java.util.List; 5 6 import javax.servlet.ServletException; 7 import javax.servlet.annotation.WebServlet; 8 import javax.servlet.http.HttpServlet; 9 import javax.servlet.http.HttpServletRequest; 10 import javax.servlet.http.HttpServletResponse; 11 12 import dao.FactoryDao; 13 import util.Document; 14 15 /** 16 * Servlet implementation class FactoryServlet 17 */ 18 @WebServlet("/FactoryServlet") 19 public class FactoryServlet extends HttpServlet { 20 private static final long serialVersionUID = 1L; 21 22 /** 23 * @see HttpServlet#HttpServlet() 24 */ 25 public FactoryServlet() { 26 super(); 27 // TODO Auto-generated constructor stub 28 } 29 30 FactoryDao dao=new FactoryDao(); 31 32 /** 33 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 34 */ 35 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 36 // TODO Auto-generated method stub 37 //response.getWriter().append("Served at: ").append(request.getContextPath()); 38 doPost(request,response); 39 } 40 41 /** 42 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 43 */ 44 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 45 // TODO Auto-generated method stub 46 //doGet(request, response); 47 48 request.setCharacterEncoding("utf-8"); 49 response.setCharacterEncoding("utf-8"); 50 51 System.out.println("进入FactoryServlet"); 52 String method = request.getParameter("method"); 53 System.out.println(method); 54 if("review_papers".equals(method)) { 55 review_papers(request,response);//审签公文 56 }else if("check".equals(method)) { 57 check(request,response); 58 }else if("checkResult".equals(method)) { 59 checkResult(request,response); 60 } 61 62 } 63 public void review_papers(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 64 response.setCharacterEncoding("UTF-8"); 65 request.setCharacterEncoding("UTF-8"); 66 67 System.out.println("进入review_papers"); 68 List<Document> list=dao.review_papers(); 69 request.setAttribute("list", list); 70 request.getRequestDispatcher("Factory_review_papwes.jsp").forward(request,response); 71 72 } 73 public void check(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 74 response.setCharacterEncoding("UTF-8"); 75 request.setCharacterEncoding("UTF-8"); 76 77 String title=request.getParameter("title"); 78 List<Document> list=dao.check(title); 79 request.setAttribute("list", list); 80 request.getRequestDispatcher("Factory_check.jsp").forward(request,response); 81 82 } 83 public void checkResult(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 84 response.setCharacterEncoding("UTF-8"); 85 request.setCharacterEncoding("UTF-8"); 86 87 String title=request.getParameter("judgetitle"); 88 String factoryAgree=request.getParameter("factoryAgree"); 89 String factoryOpinion=request.getParameter("factoryOpinion"); 90 System.out.println(title+":"+factoryAgree+":"+factoryOpinion); 91 92 if(dao.checkResult(title,factoryAgree,factoryOpinion)){ 93 request.getRequestDispatcher("FactoryServlet?method=review_papers").forward(request,response); 94 }else { 95 request.getRequestDispatcher("TestFail.jsp").forward(request,response); 96 } 97 98 } 99 100 }
(5)FactoryDao.java
1 package dao; 2 3 import java.sql.Connection; 4 import java.sql.PreparedStatement; 5 import java.sql.ResultSet; 6 import java.util.ArrayList; 7 import java.util.List; 8 9 import database.Database; 10 import util.Document; 11 12 public class FactoryDao { 13 /** 14 * 审签公文 15 * @return 16 */ 17 public List<Document> review_papers() { 18 List<Document> list = new ArrayList<>(); 19 Connection conn = null; 20 ResultSet rs = null; 21 PreparedStatement pstm = null; 22 Document document = null; 23 try { 24 conn = Database.getConnection(); 25 String sql = "select * from document where receiver=?"; 26 pstm = conn.prepareStatement(sql); 27 pstm.setString(1, "厂长待同意"); 28 rs = pstm.executeQuery(); 29 while (rs.next()) { 30 String title = rs.getString("title"); 31 String content = rs.getString("content"); 32 String time = rs.getString("time"); 33 String createPeople = rs.getString("createPeople"); 34 document = new Document(title, content, time, createPeople); 35 list.add(document); 36 } 37 } catch (Exception e) { 38 e.printStackTrace(); 39 } finally { 40 Database.close(conn, pstm, rs); 41 } 42 return list; 43 } 44 public List<Document> check(String title) { 45 List<Document> list = new ArrayList<>(); 46 Connection conn = null; 47 ResultSet rs = null; 48 PreparedStatement pstm = null; 49 Document document = null; 50 try { 51 conn = Database.getConnection(); 52 String sql = "select * from document where title=?"; 53 pstm = conn.prepareStatement(sql); 54 pstm.setString(1, title); 55 rs = pstm.executeQuery(); 56 while (rs.next()) { 57 String titlee = rs.getString("title"); 58 String content = rs.getString("content"); 59 String time = rs.getString("time"); 60 String createPeople = rs.getString("createPeople"); 61 document = new Document(titlee, content, time, createPeople); 62 list.add(document); 63 } 64 } catch (Exception e) { 65 e.printStackTrace(); 66 } finally { 67 Database.close(conn, pstm, rs); 68 } 69 return list; 70 } 71 public boolean checkResult(String title,String factoryAgree,String factoryOpinion) { 72 Connection conn = null; 73 PreparedStatement pstm = null; 74 boolean judge = false; 75 String receiver="厂长审核完毕"; 76 try { 77 conn = Database.getConnection(); 78 String sql = "update document set factoryAgree=?,factoryOpinion=?,receiver=? where title=?"; 79 pstm = conn.prepareStatement(sql); 80 pstm.setString(1, factoryAgree); 81 pstm.setString(2, factoryOpinion); 82 pstm.setString(3, receiver); 83 pstm.setString(4, title); 84 // 执行插入操作 85 int num = pstm.executeUpdate(); 86 if (num > 0) { 87 System.out.println("审签成功"); 88 judge = true; 89 } else { 90 System.out.println("审签失败"); 91 judge = false; 92 } 93 } catch (Exception e) { 94 e.printStackTrace(); 95 } finally { 96 // SQL执行完成后释放相关资源 97 Database.close(conn, pstm); 98 } 99 return judge; 100 } 101 }