Avtiviti最佳学习Demo


公司开发新业务涉及到Activiti工作流,通过此Demo基本解决了我们的需求,个人感觉是学习Activiti最好的例子。有需要的朋友可以下载。
资源截图
代码片段和文件信息
package com.java.activiti.controller;
import java.util.List;
import java.util.zip.ZipInputStream;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray;
import net.sf.json.JSONobject;
import net.sf.json.JsonConfig;
import org.activiti.engine.RepositoryService;
import org.activiti.engine.repository.Deployment;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.multipart.MultipartFile;

import com.java.activiti.model.PageInfo;
import com.java.activiti.util.DateJsonValueProcessor;
import com.java.activiti.util.ResponseUtil;

/**
 * 流程部署管理
 * @author Administrator
 *
 */
@Controller
@RequestMapping(“/deploy“)
public class DeployController {

//注入activitiService服务
@Resource
private RepositoryService repositoryService;

/**
 * 分页查询流程
 * @param rows
 * @param page
 * @param s_name
 * @param response
 * @return
 * @throws Exception
 */
@RequestMapping(“/deployPage“)
public String deployPage(String rowsString pageString s_nameHttpServletResponse response) throws Exception{
if(s_name==null){
s_name=““;
}
PageInfo pageInfo=new PageInfo();
//填充每页显示数量
Integer sizePage=Integer.parseInt(rows);
pageInfo.setPageSize(sizePage);
// 第几页
String pageIndex = page;
if (pageIndex == null || pageIndex == ““) {
pageIndex = “1“;
}
pageInfo.setPageIndex((Integer.parseInt(pageIndex) - 1)
* sizePage);
//取得总数量
long deployCount=repositoryService.createDeploymentQuery().deploymentNameLike(“%“+s_name+“%“)
.count();

List deployList=repositoryService.createDeploymentQuery()//创建流程查询实例
.orderByDeploymenTime().desc()  //降序
.deploymentNameLike(“%“+s_name+“%“)   //根据Name模糊查询
.listPage(pageInfo.getPageIndex() pageInfo.getPageSize());

JsonConfig jsonConfig=new JsonConfig();
jsonConfig.setExcludes(new String[]{“resources“});
jsonConfig.registerJsonValueProcessor(java.util.Date.class new DateJsonValueProcessor(“yyyy-MM-dd hh:mm:ss“));
JSONobject result=new JSONobject();
JSONArray jsonArray=JSONArray.fromobject(deployListjsonConfig);
result.put(“rows“ jsonArray);
result.put(“total“ deployCount);
ResponseUtil.write(response result);
return null;
}
/**
 * 添上传流程部署ZIP文件
 * @return
 * @throws Exception 
 */
@RequestMapping(“/addDeploy“)
public String addDeploy(HttpServletResponse responseMultipartFile deployFile) throws Exception{
repositoryService.createDeployment() //创建部署
.name(deployFile.getOriginalFilename()) //需要部署流程名称
.addZipInputStream(new ZipInputStream(deployFile.getInputStream()))//添加ZIP输入流
.deploy();//开始部署
JSONobject result=new JSONobject();
result.put(“success“ true);
ResponseUtil.write(response result);
return null;
}

/**
 * 批量删除流程
 * @return
 * @throws Exception 
 */
@RequestMapping(“/delDep

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-12-27 17:12  Activiti-LFP_Oracle
     文件        1516  2017-12-06 15:05  Activiti-LFP_Oracle.classpath
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.git
     文件           4  2017-12-06 11:00  Activiti-LFP_Oracle.gitCOMMIT_EDITMSG
     文件         241  2017-12-06 11:00  Activiti-LFP_Oracle.gitconfig
     文件          73  2017-12-06 11:00  Activiti-LFP_Oracle.gitdescription
     文件          23  2017-12-06 11:00  Activiti-LFP_Oracle.gitHEAD
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.githooks
     文件         478  2017-12-06 11:00  Activiti-LFP_Oracle.githooksapplypatch-msg.sample
     文件         896  2017-12-06 11:00  Activiti-LFP_Oracle.githookscommit-msg.sample
     文件         189  2017-12-06 11:00  Activiti-LFP_Oracle.githookspost-update.sample
     文件         424  2017-12-06 11:00  Activiti-LFP_Oracle.githookspre-applypatch.sample
     文件        1642  2017-12-06 11:00  Activiti-LFP_Oracle.githookspre-commit.sample
     文件        1348  2017-12-06 11:00  Activiti-LFP_Oracle.githookspre-push.sample
     文件        4898  2017-12-06 11:00  Activiti-LFP_Oracle.githookspre-rebase.sample
     文件         544  2017-12-06 11:00  Activiti-LFP_Oracle.githookspre-receive.sample
     文件        1239  2017-12-06 11:00  Activiti-LFP_Oracle.githooksprepare-commit-msg.sample
     文件        3610  2017-12-06 11:00  Activiti-LFP_Oracle.githooksupdate.sample
     文件       81304  2017-12-06 11:00  Activiti-LFP_Oracle.gitindex
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitinfo
     文件         240  2017-12-06 11:00  Activiti-LFP_Oracle.gitinfoexclude
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitlogs
     文件         292  2017-12-06 11:00  Activiti-LFP_Oracle.gitlogsHEAD
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitlogs
efs
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitlogs
efsheads
     文件         292  2017-12-06 11:00  Activiti-LFP_Oracle.gitlogs
efsheadsmaster
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitobjects
     目录           0  2017-12-06 11:00  Activiti-LFP_Oracle.gitobjects0
     文件        2435  2017-12-06 11:00  Activiti-LFP_Oracle.gitobjects0294a95f95312a5ff89d25b6398b2e2fdae15ac
     文件         672  2017-12-06 11:00  Activiti-LFP_Oracle.gitobjects03c627446612f9c34feb2be3b12a799fe96c814
     文件          51  2017-12-06 11:00  Activiti-LFP_Oracle.gitobjects05104684e4548c45f399feb969f5ecd342f3f75
............此处省略3739个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)