首页>代码>ssh+JBPM开发OA企业员工办公自动化后台管理系统>/OA/src/oa/action/ApplicationTemplateAction.java
package oa.action;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.List;

import org.jbpm.api.ProcessDefinition;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.opensymphony.xwork2.ActionContext;

import oa.domain.ApplicationTemplate;
import oa.service.ProcessDefinitionService;
@Controller
@Scope("prototype")
public class ApplicationTemplateAction extends ModelDrivenBaseAction<ApplicationTemplate>{
	private File upload; //上传
	private FileInputStream inputStream;//下载
	public String list(){
		List<ApplicationTemplate> appList= applicationTemplateService.findAll();
		ActionContext.getContext().put("applicationTemplateList",appList);
		return "list";
	}
	public String delete() throws UnsupportedEncodingException{
		applicationTemplateService.delete(model.getId());
		return "tolist";
	}
	public String addUI(){
		List<ProcessDefinition> processDefinitionList=processDefinitionService.findAllLatestVersions();
		ActionContext.getContext().put("processDefinitionList",processDefinitionList);
		return "addUI";
	}
	public String add() throws Exception{
		//封装
		String path=saveUploadFile(upload);
		model.setPath(path);
		//保存
		applicationTemplateService.save(model);
		return "tolist";
	}
	public String editUI(){
		List<ProcessDefinition> processDefinitionList = processDefinitionService.findAllLatestVersions();
		ActionContext.getContext().put("processDefinitionList", processDefinitionList);
		ApplicationTemplate applicationTemplate=applicationTemplateService.findById(model.getId());
		ActionContext.getContext().getValueStack().push(applicationTemplate);
		return "addUI";
	}
	public String edit(){
		//从DB中取出原对象
		ApplicationTemplate applicationTemplate=applicationTemplateService.findById(model.getId());
		//设置属性
		applicationTemplate.setName(model.getName());
		applicationTemplate.setProcessDefinitionKey(model.getProcessDefinitionKey());
		if(upload!=null){
			//删除老文件
			File file=new File(applicationTemplate.getPath());
			if(file.exists()){
				file.delete();
			}
			//保存新文件
			String path=saveUploadFile(upload);
			applicationTemplate.setPath(path);
		}
		//更新到DB
		applicationTemplateService.update(applicationTemplate);
		return "tolist";
	}
	public String download() throws FileNotFoundException, UnsupportedEncodingException{
		//获取要下载的文件
		ApplicationTemplate applicationTemplate=applicationTemplateService.findById(model.getId());
		inputStream=new FileInputStream(applicationTemplate.getPath());
		//设置下载的文件名称
		String filename=URLEncoder.encode(applicationTemplate.getName(),"utf-8");
		ActionContext.getContext().put("fileName",filename);
		//下载
		return "download";
	}
	public File getUpload() {
		return upload;
	}
	public void setUpload(File upload) {
		this.upload = upload;
	}
	public FileInputStream getInputStream() {
		return inputStream;
	}
	public void setInputStream(FileInputStream inputStream) {
		this.inputStream = inputStream;
	}
	
}
最近下载更多
lironggang  LV38 2023年11月30日
朱俪的邮件及存储  LV8 2023年1月28日
微信网友_6115804675756032  LV7 2022年12月3日
wanglinddad  LV55 2022年3月9日
and123456  LV11 2022年2月19日
xiaohe229  LV8 2021年8月9日
Demo1111  LV30 2021年3月15日
有糖吃的面面  LV3 2021年2月25日
aaa5849310  LV25 2020年9月4日
ASDZXZCDGSDFHUJD  LV9 2020年5月13日
最近浏览更多
暂无贡献等级
1941549176  LV4 4月29日
m5433661  LV2 3月28日
123456wadff  LV3 1月15日
lironggang  LV38 2023年11月30日
2036495585  LV9 2023年9月25日
暂无贡献等级
微信网友_6467077197238272  LV1 2023年5月8日
uni-code_0123  LV1 2023年3月31日
朱俪的邮件及存储  LV8 2023年1月15日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友