📄 pd_maindispatchservlet.java
字号:
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 + -