首页 > 其他分享 >Activiti6.0下activiti-app实现一个简单请假流程

Activiti6.0下activiti-app实现一个简单请假流程

时间:2022-09-19 23:55:40浏览次数:68  
标签:8080 Activiti6.0 activiti app 点击 http 流程 localhost

Activiti6.0下activiti-app、activiti-admin、activiti-rest的基本配置,详见上文:https://www.cnblogs.com/gdjlc/p/16703897.html
下面实现一个简单请假流程。

一、创建流程

1、登录http://localhost:8080/activiti-app/
2、点击Kickstart App -> Create Process -> Model name : 请假审批流程,Model key : holiday

点击“Create new model”按钮后,系统打开流程设计器。
这里流程简单设计为 开始->经理审批->总经理审批->结束
在左边Activities -> User task 拖动2次到主界面上,代表经理、总经理节点。
最后End Events -> End event拖到最后面,为结束节点。
点击节点会出现一些图标选项,点击箭头可以拖到下一个节点。其中经理审批节点,点击“Assignments”,弹出窗口中Identity store选项卡,点击“Assignment”,选择“assigned to single user”,表示指定的单个用户审批,在下面的“Search”中输入数据库中的用户,如Fozzie。同样总经理审批也选择用户Gonzo审批。
节点的设置如下图所示,最后点左上角保存按钮。

二、创建App

保存流程后,点击页面导航的“Apps”->“Create App”,输入App名称和key值。

 

 

提交后,点击“Edit included models”,在弹出窗口中点击上一步创建的流程,右上角会出现一个选择的加号,点击Close关闭窗口。最终如下:

 

 

 点击左上角保存按钮,在弹出窗口中勾选“Publish?...”选项,点击保存。

 

 

回到系统activiti-app首页,出现“请假审批流程App”。

 

 

 登录http://localhost:8080/activiti-admin,在deployments菜单下可以见到这条部署的流程。

 

 

 

三、发起、审批流程 

1、发起流程

回到系统activiti-app首页,点击“请假审批流程”App -> Processes -> Processes -> Start a process -> Start process

 

 

 

 点击启动流程后,如下图

 

 

 

2、审批流程

用当前审批人 fozzie 登录http://localhost:8080/activiti-app,点击“请假审批流程”,进入如下界面

 

 

 点击“Complete”按钮提交。

 

 

 点击“Show diagram”显示的流程图如下

 

 

 退出fozzie账户,重新打开浏览器,用当前审批人 gonzo 登录http://localhost:8080/activiti-app进行审批

 

 

 

登录http://localhost:8080/activiti-admin,在Instances菜单下可以查询上面发起的流程实例。

 

点击流程实例名称,显示审批的过程。

 

 

 

 

 四、使用Activiti REST API发起、审批流程

打开http://localhost:8080/activiti-rest/docs/打开Swagger UI,输入kermit kermit登录。

1、发起流程

点击“Process Instances”,点击第3个POST /runtime/process-instances(开始一个流程实例)

 

body中输入如下json,key值为上面创建的流程key:
{
"processDefinitionKey":"holiday"
}

 

 

 点击“Try it out”按钮执行。

返回值如下,15001为流程实例Id:

{
  "id": "15001",
  "url": "http://localhost:8080/activiti-rest/service/runtime/process-instances/15001",
  "businessKey": null,
  "suspended": false,
  "ended": false,
  "processDefinitionId": "holiday:1:12504",
  "processDefinitionUrl": "http://localhost:8080/activiti-rest/service/repository/process-definitions/holiday:1:12504",
  "processDefinitionKey": "holiday",
  "activityId": null,
  "variables": [],
  "tenantId": "",
  "name": null,
  "completed": false
}

此时在http://localhost:8080/activiti-admin/#/process-instances可以查看到发起的流程实例。

2、审批流程

点击Swagger UI“Tasks”,点击 POST /runtime/tasks/{taskId}

 

 {taskId}可以在http://localhost:8080/activiti-admin/#/process-instances查询到,如下,为15008:

 

 也可以通过上面的流程实例Id:15001,请求接口GET /runtime/tasks查询任务:

 

POST /runtime/tasks/{taskId}接口的参数如下

 

 点击右上角的感叹号,输入授权信息。

 

 最后点击“Try it out”按钮执行。

此时查询http://localhost:8080/activiti-admin/#/process-instance/15001,结果如下,已经成功执行。

 

标签:8080,Activiti6.0,activiti,app,点击,http,流程,localhost
From: https://www.cnblogs.com/gdjlc/p/16709603.html

相关文章

  • 【Bug解决】CentOS-8中“Failed to download metadata for repo ‘AppStream‘: Canno
    【Bug解决】CentOS-8中“Failedtodownloadmetadataforrepo‘AppStream‘:Cannotdownloadrepomd.xml”_wx60ec3f390925a的技术博客_51CTO博客 问题原因:CentOS-8......
  • LeetCode448. Find All Numbers Disappeared in an Array
    题意n个数,统计1-n中未出现的数方法遍历和标记代码classSolution{public:vector<int>findDisappearedNumbers(vector<int>&nums){sort(nums.beg......
  • uniapp蓝牙多设备连接
    博客园断更快一年了终于想起来我还有个博客,也主要是最近工作上面也没有什么想记录的,不过最近倒是搞了个有意思的功能项目 请注意:此文章禁止转载,抄袭,这是对我个人知识产......
  • uniapp配置网络请求
    网络请求自己配置的uni网络请求 由于平台的限制,小程序项目中不支持axios,而且原生的uni.request()API功能较为简单,不支持拦截器等全局定制的功能。因......
  • 基于HBuilderX+UniApp+ThorUI的手机端前端开发处理
    现在的很多程序应用,基本上都是需要多端覆盖,因此基于一个WebAPI的后端接口,来构建多端应用,如微信、H5、APP、WInForm、BS的Web管理端等都是常见的应用。本篇随笔概括性的介......
  • 第1章Deluxe APP快速入门——剪辑入门教学
    1.1掌握DeluxeAPP的基本操作DeluxeAPP是一款功能非常全面的剪辑软件,能够满足使用者在手机上轻松的完成视频剪辑。本节主要介绍DeluxeAPP的剪辑界面。1.1.1 了解Delux......
  • APP 监听手机键盘是否弹出
    /***监听键盘是否弹出*@paramshow*@paramhide*/exportconstaddEventKeyboardStatus=(show,hide)=>{window.addEventListener('native.keyboardsho......
  • android小项目-菜谱APP-首页面设计上(RecyclerView+OKHttp+GSON+Glide)
    在上一节中,已经搭建好了导航栏,现在开始完成首页内容的设计。任务描述:实现从网络HTTP接口获取菜谱数据,并完成菜谱App主页面的布局设计。设计思路:1.数据层面,使用showapi的......
  • mybatis注解之@Mapper和@MapperScan的使用
    +目录mybatis注解之@Mapper和@MapperScan方式一:使用@Mapper注解方式二:使用@MapperScan注解@MapperScan和@Mapper区别及理解作用扫描一个包扫描多个包myb......
  • AppiumDesktop控制手机和安卓模拟器
    1、打开USB调试Appium控制手机需要打开安卓USB调试,具体方法如下:如果你的手机没有开启开发者模式:点击手机进入设置,找到你的手机信息,狂点安卓版本号,就可以开启啦......