注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建
        (2)创建流程模型:activiti自定义流程之Spring整合activiti-modeler5.16实例(二):创建流程模型
        (3)流程模型列表展示:activiti自定义流程之Spring整合activiti-modeler5.16实例(三):流程模型列表展示
        (4)部署流程定义:activiti自定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义

1.流程定义依旧属于流程资源,因此查询流程定义也还是使用repositoryService进行操作

2.后台业务代码,
  (1)自定义的流程定义实体类:

  1. package model;
  2. public class processModel {
  3. private String id;
  4. private String deploymentId;
  5. private String key;
  6. private String resourceName;
  7. private int version;
  8. private String name;
  9. private String diagramResourceName;
  10. public String getName() {
  11. return name;
  12. }
  13. public void setName(String name) {
  14. this.name = name;
  15. }
  16. public String getDiagramResourceName() {
  17. return diagramResourceName;
  18. }
  19. public void setDiagramResourceName(String diagramResourceName) {
  20. this.diagramResourceName = diagramResourceName;
  21. }
  22. public String getId() {
  23. return id;
  24. }
  25. public void setId(String id) {
  26. this.id = id;
  27. }
  28. public String getDeploymentId() {
  29. return deploymentId;
  30. }
  31. public void setDeploymentId(String deploymentId) {
  32. this.deploymentId = deploymentId;
  33. }
  34. public String getKey() {
  35. return key;
  36. }
  37. public void setKey(String key) {
  38. this.key = key;
  39. }
  40. public String getResourceName() {
  41. return resourceName;
  42. }
  43. public void setResourceName(String resourceName) {
  44. this.resourceName = resourceName;
  45. }
  46. public int getVersion() {
  47. return version;
  48. }
  49. public void setVersion(int version) {
  50. this.version = version;
  51. }
  52. @Override
  53. public String toString() {
  54. return "processModel [id=" + id + ", deploymentId=" + deploymentId
  55. + ", key=" + key + ", resourceName=" + resourceName
  56. + ", version=" + version + ", name=" + name
  57. + ", diagramResourceName=" + diagramResourceName + "]";
  58. }
  59. }

(2)业务逻辑:

  1. /**
  2. * 流程定义列表
  3. *
  4. * @author:tuzongxun
  5. * @Title: processList
  6. * @param @return
  7. * @return Object
  8. * @date Mar 17, 2016 12:34:10 PM
  9. * @throws
  10. */
  11. @RequestMapping(value = "/processList.do", method = RequestMethod.POST, produces = "application/json;charset=utf-8")
  12. @ResponseBody
  13. public Object processList(HttpServletRequest req) {
  14. Map<String, Object> map = new HashMap<String, Object>();
  15. boolean isLogin = this.isLogin(req);
  16. if (isLogin) {
  17. List<processModel> processList = new ArrayList<processModel>();
  18. List<ProcessDefinition> processList1 = repositoryService
  19. .createProcessDefinitionQuery().list();
  20. for (ProcessDefinition pro : processList1) {
  21. processModel processModel = new processModel();
  22. processModel.setDeploymentId(pro.getDeploymentId());
  23. processModel.setId(pro.getId());
  24. processModel.setKey(pro.getKey());
  25. processModel.setResourceName(pro.getResourceName());
  26. processModel.setVersion(pro.getVersion());
  27. processModel.setName(pro.getName());
  28. processModel.setDiagramResourceName(pro
  29. .getDiagramResourceName());
  30. processList.add(processModel);
  31. }
  32. map.put("isLogin", "yes");
  33. map.put("userName",
  34. (String) req.getSession().getAttribute("userName"));
  35. map.put("result", "success");
  36. map.put("data", processList);
  37. } else {
  38. map.put("isLogin", "no");
  39. }
  40. return map;
  41. }

3.angular js前台代码,:
  (1)app.js中配置路由:

  1. $stateProvider
  2. .state('processList', {
  3. url: "/processList",
  4. views: {
  5. 'view': {
  6. templateUrl: 'activi_views/processList.html',
  7. controller: 'processCtr'
  8. }
  9. }
  10. });

(2)逻辑相关代码:

  1. angular.module('activitiApp')
  2. .controller('processCtr', ['$rootScope','$scope','$http','$location', function($rootScope,$scope,$http,$location){
  3. $scope.init=function(){
  4. $http.post("./processList.do").success(function(result) {
  5. if(result.isLogin==="yes"){
  6. console.log(result.data);
  7. $rootScope.userName=result.userName;
  8. $scope.processList=result.data;
  9. }else{
  10. $location.path("/login");
  11. }
  12. });
  13. }
  14. //这个方法主要是为下一节,启动流程实例时使用
  15. $scope.toProcess=function(process){
  16. console.log(process);
  17. $http.post("./startProcess.do",process).success(function(deployResult){
  18. $rootScope.process=process;
  19. $location.path("/startProcess");
  20. });
  21. }
  22. }])

4.对应的流程定义列表的页面:

  1. <div id="logdiv1" ng-init="init();">
  2. <p style="font-size:24px;margin-top:10px">模型列表</p>
  3. <center>
  4. <table border="1px" style="width:87%;font-size:18px;text-align:center;margin-left:2px;margin-top:auto;position:relative;float:left;" cellSpacing="0px" cellPadding="0px">
  5. <tr style="background-color:#ccc">
  6. <td>ID</td>
  7. <td>NAME</td>
  8. <td>KEY</td>
  9. <td>描 述</td>
  10. <td>版本</td>
  11. <td>创建时间</td>
  12. <td>修改时间</td>
  13. <td>操 作</td>
  14. </tr>
  15. <tr ng-repeat="model in modelList | orderBy:'id'" >
  16. <td>{{model.id}}</td>
  17. <td>{{model.name}}</td>
  18. <td>{{model.key}}</td>
  19. <td>{{model.metaInfo}}</td>
  20. <td>{{model.version}}</td>
  21. <td>{{model.createTime | date:"yyyy-MM-dd HH:mm:ss"}}</td>
  22. <td>{{model.lastUpdateTime | date:"yyyy-MM-dd HH:mm:ss"}}</td>
  23. <td><a href="script:;" ng-click="deploye(model)">部署</a>
  24. <a href="script:;" ng-click="delete(model)">删除</a>
  25. <a href="script:;" ng-click="update(model.id)">修改</a>
  26. </td>
  27. </tr>
  28. </table>
  29. </center>
  30. </div>

5.页面示图如下:

 
0

activiti自定义流程之Spring整合activiti-modeler5.16实例(五):流程定义列表的更多相关文章

  1. activiti自定义流程之Spring整合activiti-modeler5.16实例(九):历史任务查询

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  2. activiti自定义流程之Spring整合activiti-modeler5.16实例(八):完成个人任务

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  3. activiti自定义流程之Spring整合activiti-modeler5.16实例(七):任务列表展示

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  4. activiti自定义流程之Spring整合activiti-modeler5.16实例(六):启动流程

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  5. activiti自定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  6. activiti自定义流程之Spring整合activiti-modeler5.16实例(三):流程模型列表展示

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建        (2)创建流程模型:activiti自定义流程之Spring ...

  7. activiti自定义流程之Spring整合activiti-modeler5.16实例(二):创建流程模型

    注:(1)环境搭建:activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建 1.maven导包,这里就没有什么多的好说了,直接代码: <depe ...

  8. activiti自定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建

    项目中需要整合activiti-modeler自定义流程,找了很多资料后,终于成功的跳转到activiti-modeler流程设计界面,以下是记录: 一.整合基础:eclipse4.4.1.tomca ...

  9. activiti自己定义流程之Spring整合activiti-modeler5.16实例(四):部署流程定义

    注:(1)环境搭建:activiti自己定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建         (2)创建流程模型:activiti自己定义流程之Spr ...

随机推荐

  1. 程序员MM的自白:磨人小妖精之安卓碎片化

    文/腾讯优测 章婉霞 除了crash问题,Android平台的碎片化越来越受到移动开发的关注,且不谈支持Android系统的移动设备早已过万款,屏幕.品牌以及传感器等方面的碎片化问题也困扰着开发者. ...

  2. AngularJS的路由、模块、依赖注入

    AngularJS的路由在实际应用中更多是由另外封装好的angular-ui-router.js实现的! 为什么不用Ajax而要用前端路由?

  3. code::blocks(版本10.05) 配置opencv2.4.3

    (1)首先下载opencv2.4.3, 解压缩到D:下: (2)配置code::blocks, 具体操作如下: 第一步, 配置compiler, 操作步骤为Settings  -> Compil ...

  4. 【NOIP2013】【P1441】花匠

    又一次看错题…… 原题: 花匠栋栋种了一排花,每株花都有自己的高度.花儿越长越大,也越来越挤.栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比 ...

  5. 嵌入式系统Linux内核开发工程师必须掌握的三十道题(转)

    嵌入式系统Linux内核开发工程师必须掌握的三十道题 如果你能正确回答以下问题并理解相关知识点原理,那么你就可以算得上是基本合格的Linux内核开发工程师,试试看! 1) Linux中主要有哪几种内核 ...

  6. 【转】SocketRocket:iOS WebSocket客户端开源框架

    原文网址:http://blog.csdn.net/zmp1123/article/details/44015507 WebSocket: WebSocket通信协议实现的是基于浏览器的原生socke ...

  7. android取国家,语言,存储大小等

    private static String newUUID() { return UUID.randomUUID().toString(); } private static String getLo ...

  8. 【深入Cocos2d-x】使用MVC架构搭建游戏Four

    喜欢Four这个项目,就赶快在GitHub上Star这个项目吧! 喜欢我的文章,来微博关注我吧:王选易在学C艹 点我下载 项目起源 项目Logo: 下面是该游戏的项目地址,各位想参考源代码的同学可以到 ...

  9. Unity3D研究院之Inspector面板枚举的别名与排序

    虽然mono是支持unicode的.可以在枚举里写中文,但是我还是觉得写英文好一些.可是在编辑器上策划是希望看到的是中文的,还有就是枚举的展示排序功能,策划在编辑的时候为了方便希望把常用的枚举排上前面 ...

  10. 你足够了解Context吗?

    你足够了解Context吗? 这里有关于Context的一切-写在前面: 当我还是一个24K纯Android新手的时候(现在是也是个小Android萌新),拿着工具书对着电脑敲敲打打,那个时候我就有一 ...