⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pd_maindispatchservlet.java

📁 J2ee开发的 人事管理系统 使用oracle数据库 myeclips平台开发
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			forward(request, response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"addnew"时所调用的方法
	 * 响应新增记录button,实现跳转
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
/*	private void addnewItem(HttpServletRequest request, HttpServletResponse response) {
		*//**操作符为"addnew"时调出所有部门到下拉菜单*//*	
		List deptlist=new ArrayList();	
		DeptInfoDAO deptdao=new DeptInfoDAO();
		String depSql=" and di_state='可用'";
		deptlist=deptdao.queryByCondition(depSql);
		request.setAttribute("deptlist", deptlist);
		*//**点击添加调动记录后经过servlet的跳转到添加页面*//*
		try {
			request.getRequestDispatcher("AddNewRecord.jsp").forward(request, response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}		
	}*/
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"add"时所调用的方法
	 * 响应添加人事调动的提交button
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
	private void addItem(HttpServletRequest request, HttpServletResponse response) {
		UserInfoVO uservo=new UserInfoVO();
		DeptInfoVO deptvo=new DeptInfoVO();
		ChangeRecordVO changevo=new ChangeRecordVO();
		/**根据员工号来对该员工进行人事调动*/
		Long ui_personid=Long.valueOf(request.getParameter("ui_personid"));
		UserInfoDAO userdao=new UserInfoDAO();
		String cond=" and ui_personid= "+ui_personid+"";
		List userlist=new ArrayList();
		userlist=userdao.queryByCondition(cond);
		uservo=(UserInfoVO)userlist.get(0);
		deptvo.setDiId(Long.valueOf(request.getParameter("newdept")));
		/**将页面取得的所有值全部装进人事调动的VO中*/
		changevo.setDeptInfo(deptvo);
		changevo.setUserInfo(uservo);
		changevo.setPcrCause(request.getParameter("transferreason"));
		changevo.setPcrClass(request.getParameter("tranfertype"));
		changevo.setPcrExdept(request.getParameter("olddept"));
		changevo.setPcrExstudy(request.getParameter("oldjob"));
		changevo.setPcrRange(request.getParameter("transferarea"));
		changevo.setPcrStudy(request.getParameter("newjob"));
		changevo.setPcrTime(Date.valueOf(request.getParameter("transfertime")));
		ChangeRecordDAO changedao=new ChangeRecordDAO();			
		int i=0;
		/**添加该条记录到表中*/
		i=changedao.addObject(changevo);
		/**人事调配操作成功,增加了一条新的人事调动记录*/
		if(i==1){
			/**将人事调动后,用户表的部门号放入记录表作调动前部门,员工调动后所在部门更新到用户表*/
			String di_id=request.getParameter("newdept");
			String ui_zhiwu=request.getParameter("newjob");
			String sql="update user_info set di_id= "+di_id+", ui_zhiwu='"+ui_zhiwu+"' where ui_personid= "+ui_personid+"";
			int j=0;
			j=userdao.updateInfo(sql);
			/**人事调配操作成功,如果调动类型是"离退"或"开除"或者"辞职
			 * 则更新用户表的用户退休状态为"不可用",调用员工信息时不再显然该状态的人员
			 * 这些人员将显示在离退人员记录表中"*/
			String pcr_class=request.getParameter("tranfertype");
			if(pcr_class.equals("离退")||pcr_class.equals("开除")||pcr_class.equals("辞职")){
				String sqlstr="update user_info set ui_retirestate='不可用' where ui_personid="+ui_personid+"";
				userdao.updateInfo(sqlstr);
			}
			if(j==1){
				/**返回人事管理页面,显示按时间倒序排序*/
				try {
					request.getRequestDispatcher("PD_MainDispatchServlet?opflag=").
					forward(request, response);
				}catch (ServletException e) {
					e.printStackTrace();
				}catch (IOException e) {
					e.printStackTrace();
				}
			}else{
				/**更新用户表未成功,返回人事调配页面重新操作*/
				try {
					request.getRequestDispatcher("AddNewRecord.jsp").forward(request,response);
				} catch (ServletException e) {
					e.printStackTrace();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}else{
		/**人事调配操作未成功,返回人事调配页面重新操作*/
			try {
				request.getRequestDispatcher("AddNewRecord.jsp").forward(request,response);
			} catch (ServletException e) {
				e.printStackTrace();
			} catch (IOException e) {
			}		
	}
}
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"delete"时所调用的方法
	 * 直接调出删除后表中所有的人事调动记录
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
	private void deleteItem(HttpServletRequest request, HttpServletResponse response) {
		ChangeRecordDAO changedao=new ChangeRecordDAO();
		/**取出用户想要删除的多条记录的ID并放入数组中*/
		String changeRecordIds[]=request.getParameterValues("checkbox");
		String condition = "";
		for(int i = 0; i < changeRecordIds.length; i++)
		{
		/**向串里添加符号",",组串操作*/
			condition += "," + changeRecordIds[i];
		}
		/**从数组下标1开始取字符串,去掉字符串头的逗号(",")*/
		condition = condition.substring(1);
		changedao.deleteObject(condition);
		
		PageHelp pagehelp = new PageHelp();
		int pageSize = 5; 
		pagehelp = changedao.getUserList("", pageSize, Integer
				.parseInt(request.getParameter("currentPage")));
		request.setAttribute("pagehelp", pagehelp);
		/**跳转到人事调动管理页面,调出删除后的所有记录*/		
		try {
			request.getRequestDispatcher("PD_MainDispatchServlet?opflag=").forward(request,response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"update"时所调用的方法
	 * 响应编辑页面的提交button,向数据库中更新一条记录
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
	private void updateItem(HttpServletRequest request, HttpServletResponse response) {
		/**从编辑页面获取所有的参数,并封装到Vo中*/
		ChangeRecordVO changevo=new ChangeRecordVO();
		DeptInfoVO depvo=new DeptInfoVO();
		depvo.setDiId(Long.valueOf(request.getParameter("newdept")));
		changevo.setDeptInfo(depvo);
		changevo.setPcrCause(request.getParameter("transferreason"));
		changevo.setPcrClass(request.getParameter("tranfertype"));
		changevo.setPcrExdept(request.getParameter("olddept"));
		changevo.setPcrExstudy(request.getParameter("oldjob"));
		changevo.setPcrRange(request.getParameter("transferarea"));
		changevo.setPcrStudy(request.getParameter("newjob"));
		changevo.setPcrTime(Date.valueOf(request.getParameter("transfertime")));
		changevo.setPcrId(Long.valueOf(request.getParameter("hid")));
		/**调用人事调动DAO,执行更新方法*/
		ChangeRecordDAO changedao=new ChangeRecordDAO();
		int i=0;
		i=changedao.updateObject(changevo);
        /**操作符为"afteredit"时调出所有部门到下拉菜单*/
		List deptlist=new ArrayList();
		DeptInfoDAO deptdao=new DeptInfoDAO();
		String depSql=" and di_state='可用'";
		deptlist=deptdao.queryByCondition(depSql);
		request.setAttribute("deptlist", deptlist);	
		if(i!=0){
			/**提交成功,跳转到人事调动管理页面*/
			/**调用pagehelp将所有的人事调动记录按时间排序*/
			PageHelp pagehelp = new PageHelp();
			int pageSize = 5; // 设置每页的显示条数
			pagehelp = changedao.getUserList("", pageSize,1);
			request.setAttribute("pagehelp", pagehelp);
			try {
				request.getRequestDispatcher("ResourceChangedManagement.jsp").forward(request, response);
			} catch (ServletException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		/**编辑提交未能成功,返回编辑页面重新操作*/
		else{
			try {
				request.getRequestDispatcher("EditRecord.jsp").forward(request, response);
			} catch (ServletException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}		
	}
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"edit"时所调用的方法
	 * 响应管理页面的编辑button,将想要编辑的记录内容发送到编辑页面
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
	private void editItem(HttpServletRequest request, HttpServletResponse response) {
		/**取出用户想要编辑的该条记录的ID后获取该ID中的数据并放入VO中传入编辑页面显示*/
		ChangeRecordDAO changedao=new ChangeRecordDAO();
		ChangeRecordVO changevo=new ChangeRecordVO();		
		Long pcrId=Long.valueOf(request.getParameter("checkbox"));
		String sql="select * from change_record where pcr_id="+pcrId+" order by pcr_time asc";
		changevo=changedao.get(sql);
		request.setAttribute("changevo", changevo);	
        /**操作符为"befoedit"时调出所有部门到下拉菜单*/
		List deptlist=new ArrayList();
		DeptInfoDAO deptdao=new DeptInfoDAO();
		String depSql=" and di_state='可用'";
		deptlist=deptdao.queryByCondition(depSql);
		request.setAttribute("deptlist", deptlist);		
		try {
			request.getRequestDispatcher("EditRecord.jsp").forward(request, response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}			
	}
	/**
	 * PD_MainDispatchServlet的私有方法
	 * 操作符opflag为"query"时所调用的方法
	 * 响应人事调动管理页面的查询按钮,获取用户输入条件,返回查询结果按时间排序
	 * @throws IOException if an error occurred
	 * @throws ServletException if an error occurred
	 */
	private void queryItem(HttpServletRequest request, HttpServletResponse response){
		ChangeRecordDAO changedao=new ChangeRecordDAO();
		String ui_realname="%";
		String cond="";
		int di_id=0;
		if(request.getParameter("username")!=null&&!"".equals(request.getParameter("username"))){
		ui_realname=request.getParameter("username");
		cond+="and ui_realname like '%"+ui_realname+"%'";
		}
		if(request.getParameter("dept")!=null&&!"0".equals(request.getParameter("dept"))){
			di_id=Integer.parseInt(request.getParameter("dept"));
		cond+=" and u_di_id="+di_id+"";
		}
		/**为用户提供真实姓名和所在部门的查询,查询结果按时间排序,一次最多显示5条记录*/
		int pageSize = 5; 
		PageHelp pagehelp=new PageHelp();
		pagehelp =changedao.getUserList(cond,pageSize,1); 
		request.setAttribute("pagehelp", pagehelp);	
		/**操作符为"afterqueryItem"时调出所有部门到下拉菜单*/	
		List deptlist=new ArrayList();
		DeptInfoDAO deptdao=new DeptInfoDAO();
		String depSql=" and di_state='可用'";
		deptlist=deptdao.queryByCondition(depSql);
		request.setAttribute("deptlist", deptlist);	
		/**页面跳转*/
		try {
			request.getRequestDispatcher("ResourceChangedManagement.jsp").forward(request,response);
		} catch (ServletException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	/**doPost的私有方法结束*/
/**************************************************************************************/
	/**
	 * Initialization of the servlet. <br>
	 *
	 * @throws ServletException if an error occure
	 */
	public void init() throws ServletException {
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -