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

📄 adddocumentaction.java

📁 一个oa系统
💻 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 + -