问题:jeesite工作流如何使用?

背景:公司没人熟悉工作流,现在要上线办公系统,请假,加班,报销,预审批,用印,付款等工作流要写,之前有简单版本,但是用哪个写工作流要画好多流程图(委派人写了人名,而不是后台定义的),等到发现可以后台定义后,基本写完了,原先有请假,加班,报销,但只在合肥使用,只区分研发部和非研发部,写了人名,后期跟着这个版本做了好多错事,还不好改动,有种要掐死前面的人的冲动

1.画流程图

这一步需要注意的还是挺多的,首先报销开始

名称用于流转信息展示时显示用的,启动器是当前用户,表单编号是流程流转时前往的控制器层

然后用户任务

名称是流转信息展示的,主键是用来在controller判断当前处于什么用户的,分配用户是执行人(这里可以写用户的登录名,或者${sign}  启动流程前给sign赋值就可以 PS:之前人在这儿直接写的登录名,我跟着他写的累死了,忠告:千万别接手别人的代码,会哭的)

路线条件

我一般设置pass==0,1,2之类的来判断,后台根据他点击的是同意,驳回或者转至财务总监按钮来给pass复制0,1,2

最后点击空白处

给流程标识和名称赋值。然后部署即可

2.启动流程

以报销为例,用户输入信息后,点击提交申请,保存数据到业务表,同时启动工作流

actTaskService.startProcess(ActUtils.ACT_SALE_GET6[0], ActUtils.ACT_SALE_GET6[1], getSale.getId(),getSale.getReason(), vars);

ACT_SALE_GET6为全局常量,此处第一个为流程标识,第二个为业务表名,第三个为数据id,第四个为需要提供的值

vars为一个hashmap,如果工作流需要赋值的话,如用户任务可以在这儿动态赋值,还可以写一些在待办任务展示的信息,比如报销金额,流程启动后会前往下一用户那儿,同时传递的还有一些流程信息

3.用户任务

进入下一用户后,该用户会在待办任务中展示其列表,点击任务办理后,会获得信息,同时通过启动器的表单编号来到对应的控制层,前往相关的jsp页面(一般两种页面,一种处理任务的同意驳回页面,还有一种修改表单的重新提交销毁申请页面)

@RequestMapping(value = "form")public String form(GetSale getSale, Model model) {String view = "getSaleForm";// if(getSale.getStatus()==0)if (StringUtils.isNotBlank(getSale.getId())) {// 获取环节IDString taskDefKey = getSale.getAct().getTaskDefKey();// 查看申请if (getSale.getAct().isFinishTask()) {view = "getSaleView";}// 人事主管审核else if ("prTask2".equals(taskDefKey)) {view = "getSaleAudit";} 

,jsp页面按钮如下

<input id="btnSubmit" class="btn btn-primary" type="submit"value="同 意" οnclick="$('#flag').val('yes')" />
<input id="btnSubmit" class="btn btn-inverse" type="submit" value="驳 回" οnclick="$('#flag').val('no')" />  

后台通过flag的值来判断点击的是什么按钮,同时给pass赋值

Map<String, Object> vars = Maps.newHashMap();
vars.put("pass", "yes".equals(getSale.getAct().getFlag()) ? "1" : "0");
// 提交流程任务
actTaskService.complete(getSale.getAct().getTaskId(), getSale.getAct().getProcInsId(),getSale.getAct().getComment(), vars);

4.注意事项

整个流程都是在jeesite自带的待办任务中处理的,如果需要单独展示自己的报销页面的话,可以自己去业务表查,但是这样查到的数据一般是没有taskId的,taskId是act_ru_task的ID_字段,你可以自己写查询语句,通过流程实例id去查,一般的,流程实例id和taskId是一一对应的(我写的都是这样的毕竟修改申请单只有本人可以),但是如果对应多个用户任务就不是一一对应了

jeesite工作流使用相关推荐

  1. jeesite 框架的简单应用

    jeesite 框架的简单应用 一个讲解jeesite的网站 https://www.w3cschool.cn/jeesite/ jeesite官网 http://jeesite.com/ 公司项目都 ...

  2. jeeplus工作流版

    本文主要介绍工作流版本中流程管理和个人办公模块,然后对请假流程进行截图演示. 此版本为jeeplus2.6版本优化版,参考jeesite工作流,整合优化而成.其中优化了一些代码,修复了一些bug. 源 ...

  3. 企业信息化快速开发平台JeeSite

    为什么80%的码农都做不了架构师?>>>    平台简介 JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台. JeeS ...

  4. Jeesite信息化快速开发平台

    平台简介 JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台. JeeSite是您快速完成项目的最佳基础平台解决方案,JeeSite是您想 ...

  5. jeesite缓存问题

    jeesite,其框架主要为: 后端 核心框架:Spring Framework 4.0 安全框架:Apache Shiro 1.2 视图框架:Spring MVC 4.0 服务端验证:Hiberna ...

  6. jeesite中activiti中的流程表梳理

    最近在利用jeesite开发一个小系统,趁着这个机会整理了activiti中的相关表,跟踪流程,然后查看这几个表中数据的变化,可以更好地理解流程的开发.现在整理出来,希望可以帮助更多的人! 表结构 一 ...

  7. flowable 多人签收_业务流程 BPM、工作流引擎、Flowable、Activiti

    特点 基于 Flowable(Activiti)生来具有的稳定工作流引擎 支持在线流程设计器,流程导入导出,符合 BPMN 规范,中国式工作流 支持流程办理.退回.自由流.会签.并行.串行.服务任务等 ...

  8. 基于jeesite的cms系统(一):开发环境搭建

    基于jeesite的cms系统系列,是对基于jeesite进行二次开发的博客模块开发过程的总结.涉及入门安装,二次开发,部署等 一.概况: JeeSite 是一个 Java 企业级快速开发平台,基于经 ...

  9. JeeSite系列之一_JeeSite简介

    JeeSite简介 最近想研究一下JeeSite这个"企业信息化快速开发平台". 它是这么说的: JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的 ...

最新文章

  1. 简单明了!OLTP场景下的数据分布式设计原则
  2. Android Service的思考(1)
  3. linux 硬件抽象,Linux 内核硬件抽象
  4. 【Spring注解系列05】@Import注入原理
  5. 搭建DVWA漏洞环境
  6. ASP.NET MVC 1.0 + spring.net 1.2.0.20288 + NHibernate 2.0.1.4000整合笔记(三)——NHibernate配置...
  7. Maven之pom.xml常用标签解析及镜像配置
  8. 格子游戏(信息学奥赛一本通-T1347)
  9. 【Linux】linux grep过滤中,不包含某些字符串
  10. 在 CentOS 7 上搭建 Jenkins + Maven + Git 持续集成环境
  11. 近期团队博客的摘要 5
  12. Java多线程笔记(一):JMM与基础关键字
  13. Jq-模拟最大化最小化关闭
  14. 第三季-第14课-有名管道通讯编程
  15. python ipo模型是什么意思_IPO里的估值模型是什么情况?
  16. 常见元件、封装及尺寸
  17. 怎么计算机械需要的电机,比方说一个90kw的电机它的最大电流应该是多少?应该用多少平方的铜线?怎么计算呀?...
  18. 大疆御air2怎么看经纬度_人人都能拍大片的无人机 – 大疆御 Mavic Air 2 评测
  19. 计算任意2个日期内的工作日(没有考虑到国定假日
  20. transact sql

热门文章

  1. Turtlebot4入门教程-机械-有效载荷
  2. 一文让你彻底掌握【Python中的filter函数】
  3. 重量级发布!工业软件企业大全(第一辑)
  4. 运用node.js连接MySQL数据库
  5. CentOS 7 安装 epel-release
  6. 笔记-项目风险管理-风险的分类
  7. 模式识别期末复习【湘潭大学】
  8. Java使用executeUpdate()导致程序异常
  9. 华为Python机试
  10. 共建大数据+声纹AI新安全时代:得意音通与同盾科技达成战略合作