📄 gongwenaction.java
字号:
package com.km.gongwen.data;
import org.apache.struts.action.*;
import javax.servlet.http.*;
import com.km.fujian.data.FujianDAO;
import com.km.util.*;
import java.util.*;
/**
* 本类的主要作用是对公文相关的操作进行转发控制。
*/
public class GongwenAction
extends Action {
public ActionForward execute(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) {
/** @todo: complete the business logic here, this is just a skeleton. */
ActionErrors errors = new ActionErrors();
GongwenForm gongwenForm = (GongwenForm) actionForm;
HttpSession session = httpServletRequest.getSession();
String ownerid = (String) session.getAttribute("userid");
//test
ownerid = "111";
/**
* 页面转向的字符串fwd。
*/
String fwd = "";
if (fwd != null && fwd != "") {
return actionMapping.findForward(fwd);
}
/**
* 获得页面的操作参数operAtt。
*/
String operAtt = gongwenForm.getOperAtt();
operAtt = operAtt == null ? "" : operAtt;
if (operAtt.equals("")) {
operAtt = "findall";
}
System.out.println(new Date().toLocaleString() +
":目前所处的位置:gongwenAction===========");
System.out.println("--->operAtt:" + operAtt);
/**
* 查询全部已经接受到的公文。
*/
if (operAtt.equals("findall")) {
try {
GongwenDAO gongwenDao = new GongwenDAO();
if (ownerid == null) {
ownerid = "";
}
if (!ownerid.equals("")) {
PageListData pageListData = gongwenForm.getFooter();
pageListData = gongwenDao.getAllgongwen(ownerid,
pageListData);
gongwenForm.setList(pageListData.getDataArray());
fwd = "showall";
}
}
catch (Exception e) {
fwd = "showall";
e.printStackTrace();
}
}
/**
* 按照标题查看公文详细内容。
*/
else if (operAtt.equals("title")) {
try {
String universalid = httpServletRequest
.getParameter("universalid");
GongwenDAO gongwenDAO = new GongwenDAO();
FujianDAO fujianDAO = new FujianDAO();
Gongwen gongwen = gongwenDAO.findGwbyTitle(universalid);
List list = fujianDAO.getAllfujian(universalid);
gongwenForm.setGongwen(gongwen);
gongwenForm.setList(list); //设置公文对应的附件
fwd = "title";
}
catch (Exception e) {
fwd = "title";
e.printStackTrace();
}
}
/**
* 按照一定的条件查询公文
*/
else if (operAtt.equals("search")) {
try {
Gongwen gongwen = gongwenForm.getGongwen();
GongwenDAO gongwenDao = new GongwenDAO();
if (ownerid == null) {
ownerid = "";
}
if (!ownerid.equals("")) {
PageListData pageListData = gongwenForm.getFooter();
pageListData = gongwenDao.getSomegongwen(ownerid, gongwen,
pageListData);
gongwenForm.setList(pageListData.getDataArray());
fwd = "showsearch";
}
}
catch (Exception e) {
fwd = "showsearch";
e.printStackTrace();
}
}
/**
* 新增公文页面。注:此处是先生成一条记录
*/
else if (operAtt.equals("new")) {
String date = new Date().toLocaleString();
Gongwen gongwen = new Gongwen();
GongwenDAO gongwenDao = new GongwenDAO();
String universalid = gongwenDao.createGongwen(gongwen);
gongwen.setUniversalid(universalid);
gongwen.setSenddate(date);
gongwen.setSendid(ownerid);
gongwenForm.setGongwen(gongwen);
fwd = "new";
}
/**
* 保存撰写的新公文。注:此处的保存是修改新增的文件
*/
else if (operAtt.equals("savenew")) {
try {
Gongwen gongwen = gongwenForm.getGongwen();
GongwenDAO gongwenDao = new GongwenDAO();
gongwen.setIsread("0");
gongwenDao.updateGongwen(gongwen);
fwd = "savenew";
}
catch (Exception e) {
fwd = "savenew";
e.printStackTrace();
}
}
/**
* 草稿箱。
*/
else if (operAtt.equals("draft")) {
try {
PageListData pageListData = gongwenForm.getFooter();
GongwenDAO gongwenDao = new GongwenDAO();
String sendid = ownerid;
String issend = "0";
pageListData = gongwenDao.getAllSaved(sendid, issend,
pageListData);
gongwenForm.setList(pageListData.getDataArray());
fwd = "draft";
}
catch (Exception e) {
fwd = "draft";
e.printStackTrace();
}
}
/**
* 草稿箱-->查询特定的公文记录以供修改
*/
else if (operAtt.equals("forupdate")) {
try {
String universalid = httpServletRequest
.getParameter("universalid");
String type = httpServletRequest.getParameter("fjtype");
//获得操作数据库的dao
GongwenDAO gongwenDAO = new GongwenDAO();
FujianDAO fujianDAO = new FujianDAO();
Gongwen gongwen = gongwenDAO.findGwbyTitle(universalid);
List list = fujianDAO.getAllfujian(universalid);
/**
* 设置每个属性的返回值
*/
gongwenForm.setGongwen(gongwen); //设置公文
gongwenForm.setList(list); //设置公文对应的附件
//页面转向
fwd = "forupdate";
}
catch (Exception e) {
fwd = "forupdate";
e.printStackTrace();
}
}
/**
* 更改公文
*/
if (operAtt.equals("update")) {
Gongwen gongwen = gongwenForm.getGongwen();
String universalid = gongwen.getUniversalid();
//删除公文的附件
String[] key = gongwenForm.getSelectList();
if (key != null) {
String[] id = key;
FujianDAO fujianDAO = new FujianDAO();
//根据用户选择的附件,逐个删除附件。
String param = "id"; //按照id字段删除附件
for (int i = 0; i < key.length; i++) {
fujianDAO.deleteFjbyId(param, id[i]);
}
//查询附件表中是否还有该公文的附件,以便于设置公文的accessories。
String result = fujianDAO.getFjbyUniversalid(universalid);
if (result.equals(universalid)) {
gongwen.setAccessories("1");
}
else if (!result.equals(universalid)) {
gongwen.setAccessories("");
}
}
//提交用户更改的公文
GongwenDAO gongwenDAO = new GongwenDAO();
gongwenDAO.updateGwbyHibernate(gongwen);
fwd = "updateover";
}
//删除所选择的公文
else if (operAtt.equals("deletegw")) {
//删除公文
String[] key = gongwenForm.getSelectList();
if (key != null) {
String[] universalid = key;
GongwenDAO gongwenDAO = new GongwenDAO();
FujianDAO fujianDAO = new FujianDAO();
//根据用户选择的公文,逐个删除公文。
for (int i = 0; i < key.length; i++) {
gongwenDAO.deleteGwbyUniversalid(universalid[i]);
}
//根据用户选择的公文,逐个删除该公文对应的附件。
String param = "universalid"; //按照universalid字段删除附件
for (int i = 0; i < key.length; i++) {
fujianDAO.deleteFjbyId(param, universalid[i]);
}
}
fwd = "deletegw";
}
System.out.println(new Date().toLocaleString() +
":gongwenAction处理完毕,页面进行转向===========");
System.out.println("--->fwd:" + fwd);
return actionMapping.findForward(fwd);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -