📄 adddocumentaction.java
字号:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.oa.document.action;
import java.io.File;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.fileupload.DiskFileUpload;
import org.apache.commons.fileupload.FileItem;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.oa.db.User;
import com.oa.db.UserDAO;
import com.oa.document.db.Docmove;
import com.oa.document.db.DocmoveDAO;
import com.oa.document.db.Document;
import com.oa.document.db.DocumentDAO;
/**
* MyEclipse Struts
* Creation date: 08-21-2007
*
* XDoclet definition:
* @struts.action path="/document" name="documentForm" input="/doc/adddocument.jsp" scope="request" validate="true"
*/
public class AddDocumentAction extends Action {
/*
* Generated Methods
*/
DocumentDAO docdao;
UserDAO udao;
DocmoveDAO movedao;
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String title = "";
String content = "";
String strfile = "";
String strtruefile = "";
String opinion = "";
String nextauditor = "";
String id = "";
String flag = "";
HttpSession session = request.getSession();
String username = (String)session.getAttribute("username");
if(username != null){
User sbvo = null;
List list = udao.ByUsernameQueryUser(username);
if(list!=null&&list.size()!=0){
sbvo=(User)list.get(0);
}
if(sbvo != null){
try {//上传附件
DiskFileUpload dfu = new DiskFileUpload();
dfu.setSizeMax(1 * 512 * 1024); // 设置上传文件最大尺寸 0.5M
dfu.setSizeThreshold(4 * 1024); // 设置缓冲区
dfu.setRepositoryPath("d:\\oafile\\temp\\");// 设置临时目录
List filelist = dfu.parseRequest(request);// 获得所有文件
Iterator it = filelist.iterator();
while (it.hasNext()) {
FileItem fi = (FileItem) it.next();
if(fi.isFormField()){//表单域
if(fi.getFieldName().equals("title"))
title = fi.getString();
if(fi.getFieldName().equals("content"))
content = fi.getString();
if(fi.getFieldName().equals("opinion"))
opinion = fi.getString();
if(fi.getFieldName().equals("auditor"))
nextauditor = fi.getString();
if(fi.getFieldName().equals("id"))
id = fi.getString();
if(fi.getFieldName().equals("flag"))
flag = fi.getString();
}else{//文件域
String strname = fi.getName();
if (strname != null && !strname.equals("")) {// 保存文件
SimpleDateFormat f = new SimpleDateFormat("yyyyMMddHHmmss");
String filename = strname.substring(strname
.lastIndexOf("\\")+1, strname.length())
.replace(".", "[" + f.format(new Date()) + "]" + ".");
strfile += f.format(new Date()) + "###";
strtruefile += strname.substring(strname
.lastIndexOf("\\")+1, strname.length()) + "###";
fi.write(new File("d:\\oafile\\document\\" + filename));
}
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
Document vo = new Document();
vo.setSender(Integer.toString(sbvo.getId()));
vo.setTitle(title);
vo.setContent(content);
vo.setFile(strfile);
vo.setTruefile(strtruefile);
vo.setState("流转");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
vo.setDate(sdf.parse(sdf.format(new Date())));
boolean boldoc = false;
if(id!=null && flag!=null && flag.equals("1")){
boldoc = docdao.updateDoc(Integer.parseInt(id), vo);//修改
}else{
boldoc = docdao.save(vo);//保存
}
boolean bolsuc = false;
if(boldoc){//公文操作成功才向下流转
Docmove movevo = new Docmove();//公文下一步流动
int docid = 0;
if(id.equals("")){
docid = vo.getId();
} else {
docid = Integer.parseInt(id);
}
movevo.setDocid(docid);
movevo.setDoctype("0");
movevo.setNextauditor(nextauditor);
movevo.setOpinion(opinion);
movevo.setAuditor(Integer.toString(sbvo.getId()));
movevo.setState("流转");
movevo.setYiauditor(" ");
movevo.setDate(sdf.parse(sdf.format(new Date())));
bolsuc = movedao.save(movevo);
}
response.setCharacterEncoding("gb2312");
PrintWriter out = response.getWriter();
out.println("<script>");
if(bolsuc){
out.println("alert('公文提交成功!');");
} else {
out.println("alert('公文提交失败!');");
}
if(id!=null && flag!=null && flag.equals("1")){
out.println("window.opener.location.href = 'document.do?docmode=3';");
out.println("window.close();");
} else {
out.println("window.open('doc/document.jsp','_self');");
}
out.println("</script>");
out.flush();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return null;
}
public DocumentDAO getDocdao() {
return docdao;
}
public void setDocdao(DocumentDAO docdao) {
this.docdao = docdao;
}
public DocmoveDAO getMovedao() {
return movedao;
}
public void setMovedao(DocmoveDAO movedao) {
this.movedao = movedao;
}
public UserDAO getUdao() {
return udao;
}
public void setUdao(UserDAO udao) {
this.udao = udao;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -