DeptAction.java
上传用户:lm2018
上传日期:2015-12-12
资源大小:30449k
文件大小:7k
源码类别:

Jsp/Servlet

开发平台:

Java

  1. //Created by MyEclipse Struts
  2. // XSL source (default): platform:/plugin/com.genuitec.eclipse.cross.easystruts.eclipse_4.1.0/xslt/JavaClass.xsl
  3. package com.oa.module.office.dept;
  4. import java.io.IOException;
  5. import java.io.PrintWriter;
  6. import java.lang.reflect.InvocationTargetException;
  7. import java.util.List;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. import org.apache.commons.beanutils.BeanUtils;
  11. import org.apache.struts.action.ActionForm;
  12. import org.apache.struts.action.ActionForward;
  13. import org.apache.struts.action.ActionMapping;
  14. import org.apache.struts.actions.DispatchAction;
  15. import com.oa.util.XPage;
  16. /** 
  17.  * MyEclipse Struts
  18.  * Creation date: 01-21-2008
  19.  * 
  20.  * 部门的Action处理JSP过来的请求
  21.  * 
  22.  * XDoclet definition:
  23.  * @struts.action path="/dept" name="deptForm" input="/Jsp_file/department/department.jsp" parameter="method" scope="request" validate="true"
  24.  */
  25. public class DeptAction extends DispatchAction {
  26. private InDeptDAO deptdao;
  27. /**
  28.  * 默认查询方法
  29.  * @param mapping
  30.  * @param form
  31.  * @param request
  32.  * @param response
  33.  * @return 去页面
  34.  */
  35. public ActionForward query(ActionMapping mapping, ActionForm form,
  36. HttpServletRequest request, HttpServletResponse response) {
  37. DeptForm deptForm = (DeptForm) form;
  38. int currentPage = 1;
  39. try {
  40. currentPage = Integer.parseInt(request.getParameter("currentPage"));
  41. } catch (Exception e) {
  42. currentPage = 1;
  43. }
  44. int count = 6;
  45. Tdept info = new Tdept();
  46. // 拷贝查询参数(后面拷到前面){前面是目的地,后面是源}
  47. try {
  48. BeanUtils.copyProperties(info, deptForm);
  49. } catch (IllegalAccessException e) {
  50. // TODO Auto-generated catch block
  51. e.printStackTrace();
  52. } catch (InvocationTargetException e) {
  53. // TODO Auto-generated catch block
  54. e.printStackTrace();
  55. }
  56. XPage deptpage = deptdao.getDeptlist(currentPage, count, info);
  57. request.setAttribute("deptpage", deptpage);
  58. return mapping.findForward("deptlist");
  59. }
  60. /**
  61.  * 添加请求,到添加页面
  62.  * @param mapping
  63.  * @param form
  64.  * @param request
  65.  * @param response
  66.  * @return
  67.  */
  68. public ActionForward add(ActionMapping mapping, ActionForm form,
  69. HttpServletRequest request, HttpServletResponse response) {
  70. DeptForm deptForm = (DeptForm) form;
  71. deptForm.setMethod("addlist");
  72. List userlist =null;
  73. userlist = deptdao.getUser();
  74. request.setAttribute("userlist",userlist);
  75. return mapping.getInputForward();
  76. }
  77. /**
  78.  * 添加到数据库
  79.  * @param mapping
  80.  * @param form
  81.  * @param request
  82.  * @param response
  83.  * @return
  84.  */
  85. public ActionForward addlist(ActionMapping mapping, ActionForm form,
  86. HttpServletRequest request, HttpServletResponse response) {
  87. DeptForm deptForm = (DeptForm) form;
  88. Tdept info = new Tdept();
  89. try {
  90. BeanUtils.copyProperties(info,deptForm);
  91. } catch (IllegalAccessException e) {
  92. e.printStackTrace();
  93. } catch (InvocationTargetException e) {
  94. e.printStackTrace();
  95. }
  96. boolean flag = deptdao.addList(info);
  97. if (flag) {
  98. // 去列表页面,并显示成功信息
  99. request.setAttribute("msg", "添加部门成功");
  100. return mapping.findForward("query");
  101. } else {
  102. // 去添加页面,并显示失败信息
  103. request.setAttribute("msg", "添加部门失败");
  104. return mapping.getInputForward();
  105. }
  106. }
  107. /**
  108.  * 接受修改请求,到修改页面
  109.  * @param mapping
  110.  * @param form
  111.  * @param request
  112.  * @param response
  113.  * @return
  114.  */
  115. public ActionForward update(ActionMapping mapping, ActionForm form,
  116. HttpServletRequest request, HttpServletResponse response) {
  117. DeptForm deptForm = (DeptForm) form;
  118. Tdept info = deptdao.getDeptById(deptForm.getDid());
  119. try {
  120. BeanUtils.copyProperties(deptForm,info);
  121. } catch (IllegalAccessException e) {
  122. // TODO Auto-generated catch block
  123. e.printStackTrace();
  124. } catch (InvocationTargetException e) {
  125. // TODO Auto-generated catch block
  126. e.printStackTrace();
  127. }
  128. List userlist =null;
  129. userlist = deptdao.getUser();
  130. request.setAttribute("userlist",userlist);
  131. deptForm.setMethod("edit");
  132. return mapping.getInputForward();
  133. }
  134. /**
  135.  * 处理修改
  136.  * @param mapping
  137.  * @param form
  138.  * @param request
  139.  * @param response
  140.  * @return
  141.  */
  142. public ActionForward edit(ActionMapping mapping, ActionForm form,
  143. HttpServletRequest request, HttpServletResponse response) {
  144. DeptForm deptForm = (DeptForm) form;
  145. Tdept info = new Tdept();
  146. try {
  147. BeanUtils.copyProperties(info,deptForm);
  148. } catch (IllegalAccessException e) {
  149. e.printStackTrace();
  150. } catch (InvocationTargetException e) {
  151. e.printStackTrace();
  152. }
  153. boolean flag = deptdao.editList(info);
  154. if (flag) {
  155. // 去列表页面,并显示成功信息
  156. request.setAttribute("msg", "修改部门成功");
  157. return mapping.findForward("query");
  158. } else {
  159. // 去添加页面,并显示失败信息
  160. request.setAttribute("msg", "修改部门失败");
  161. return mapping.getInputForward();
  162. }
  163. }
  164. /**
  165.  * 部门恢复正常方法
  166.  * @param mapping
  167.  * @param form
  168.  * @param request
  169.  * @param response
  170.  * @return
  171.  */
  172. public ActionForward open(ActionMapping mapping, ActionForm form,
  173. HttpServletRequest request, HttpServletResponse response) {
  174. DeptForm deptForm = (DeptForm) form;
  175. Tdept info = deptdao.getDeptById(deptForm.getDid());
  176. info.setDflag("0");
  177. boolean flag = deptdao.openDept(info);
  178. if (flag) {
  179. // 去列表页面,并显示成功信息
  180. request.setAttribute("msg", "恢复部门成功");
  181. return mapping.findForward("query");
  182. } else {
  183. // 去添加页面,并显示失败信息
  184. request.setAttribute("msg", "恢复部门失败");
  185. return mapping.findForward("query");
  186. }
  187. }
  188. /**
  189.  * 部门删除方法
  190.  * @param mapping
  191.  * @param form
  192.  * @param request
  193.  * @param response
  194.  * @return
  195.  */
  196. public ActionForward close(ActionMapping mapping, ActionForm form,
  197. HttpServletRequest request, HttpServletResponse response) {
  198. DeptForm deptForm = (DeptForm) form;
  199. Tdept info = deptdao.getDeptById(deptForm.getDid());
  200. info.setDflag("1");
  201. boolean flag1 = deptdao.getUserForDid(deptForm.getDid());
  202. if(flag1){//返回TRUE就是有...
  203. request.setAttribute("msg", "该部门还有用户,不能删除!");
  204. return mapping.findForward("query");
  205. } else {
  206. boolean flag = deptdao.closeDept(info);
  207. if (flag) {
  208. // 去列表页面,并显示成功信息
  209. request.setAttribute("msg", "删除部门成功");
  210. return mapping.findForward("query");
  211. } else {
  212. // 去添加页面,并显示失败信息
  213. request.setAttribute("msg", "删除部门失败");
  214. return mapping.findForward("query");
  215. }
  216. }
  217. }
  218. /**
  219.  * AJAX验证是否重名方法
  220.  * @param mapping
  221.  * @param form
  222.  * @param request
  223.  * @param response
  224.  * @return
  225.  * @throws IOException
  226.  */
  227. public ActionForward checkName(ActionMapping mapping, ActionForm form,
  228. HttpServletRequest request, HttpServletResponse response) throws IOException {
  229. PrintWriter out = response.getWriter();
  230. DeptForm deptForm = (DeptForm) form;
  231. if(!(deptForm.getDname()==null)&&!deptForm.getDname().equals("")){
  232. boolean flag = deptdao.getDeptByName(deptForm.getDname());
  233. if (flag) {
  234. // 去列表页面,并显示成功信息
  235. out.print("此部门已存在,请更换!");
  236. } else {
  237. out.print("可以使用!");
  238. }
  239. } else {
  240. out.print("部门名称不能为空!");
  241. }
  242. return null;
  243. }
  244. public InDeptDAO getDeptdao() {
  245. return deptdao;
  246. }
  247. public void setDeptdao(InDeptDAO deptdao) {
  248. this.deptdao = deptdao;
  249. }
  250. }