diff --git a/ruoyi-flowable/pom.xml b/ruoyi-flowable/pom.xml
index 35442c28..5464e4ae 100644
--- a/ruoyi-flowable/pom.xml
+++ b/ruoyi-flowable/pom.xml
@@ -84,13 +84,4 @@
-
-
-
-
-
-
-
-
-
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowBusinessKeyController.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowBusinessKeyController.java
index 2a97526c..848802fb 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowBusinessKeyController.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowBusinessKeyController.java
@@ -16,6 +16,8 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import java.util.stream.Collectors;
+
/**
*
* 业务工作流程自定义
@@ -106,6 +108,7 @@ public class FlowBusinessKeyController extends BaseController {
flowTaskEntity.setNowDept(Convert.toStr(getDeptId()));
}
flowTaskEntity.setNowUser(Convert.toStr(SecurityUtils.getUserId()));
+ flowTaskEntity.setRoleIds(SecurityUtils.getLoginUser().getUser().getRoles().stream().map(role -> role.getRoleId()).collect(Collectors.toList()));
return getDataTable(flowBusinessKeyService.selectMyAwaitFlowTask(flowTaskEntity));
}
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowDefinitionController.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowDefinitionController.java
index 1b3674c5..b7ef624c 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowDefinitionController.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowDefinitionController.java
@@ -1,9 +1,11 @@
package com.ruoyi.flowable.controller;
+import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.flowable.domain.dto.FlowSaveXmlVo;
import com.ruoyi.flowable.service.IFlowDefinitionService;
import com.ruoyi.system.domain.FlowProcDefDto;
@@ -165,10 +167,12 @@ public class FlowDefinitionController extends BaseController {
@ApiOperation(value = "发起流程")
+ @Log(title = "发起流程", businessType = BusinessType.INSERT)
@PostMapping("/start/{procDefId}")
public AjaxResult start(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId,
@ApiParam(value = "变量集合,json对象") @RequestBody Map variables) {
- return flowDefinitionService.startProcessInstanceById(procDefId, variables);
+ SysUser sysUser = getLoginUser().getUser();
+ return flowDefinitionService.startProcessInstanceById(procDefId, sysUser.getUserId().toString(), sysUser.getNickName(), variables);
}
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowInstanceController.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowInstanceController.java
index 0a521221..15308709 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowInstanceController.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowInstanceController.java
@@ -1,7 +1,8 @@
package com.ruoyi.flowable.controller;
-
+import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.flowable.domain.vo.FlowTaskVo;
import com.ruoyi.flowable.service.IFlowInstanceService;
import io.swagger.annotations.Api;
@@ -53,6 +54,7 @@ public class FlowInstanceController {
}
@ApiOperation(value = "删除流程实例")
+ @Log(title = "删除流程", businessType = BusinessType.INSERT)
@DeleteMapping(value = "/delete/{instanceIds}")
public AjaxResult delete(@ApiParam(value = "流程实例ID", required = true) @PathVariable String[] instanceIds,
@ApiParam(value = "删除原因") @RequestParam(required = false) String deleteReason) {
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowTaskController.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowTaskController.java
index 226857da..3e53f26c 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowTaskController.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/controller/FlowTaskController.java
@@ -1,6 +1,8 @@
package com.ruoyi.flowable.controller;
+import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.flowable.domain.dto.FlowTaskDto;
import com.ruoyi.flowable.domain.vo.FlowQueryVo;
import com.ruoyi.flowable.domain.vo.FlowTaskVo;
@@ -41,12 +43,14 @@ public class FlowTaskController {
}
@ApiOperation(value = "取消申请", response = FlowTaskDto.class)
+ @Log(title = "终止申请", businessType = BusinessType.UPDATE)
@PostMapping(value = "/stopProcess")
public AjaxResult stopProcess(@RequestBody FlowTaskVo flowTaskVo) {
return flowTaskService.stopProcess(flowTaskVo);
}
@ApiOperation(value = "撤回流程", response = FlowTaskDto.class)
+ @Log(title = "撤回流程", businessType = BusinessType.UPDATE)
@PostMapping(value = "/revokeProcess")
public AjaxResult revokeProcess(@RequestBody FlowTaskVo flowTaskVo) {
return flowTaskService.revokeProcess(flowTaskVo);
@@ -85,12 +89,14 @@ public class FlowTaskController {
}
@ApiOperation(value = "审批任务")
+ @Log(title = "审批流程", businessType = BusinessType.UPDATE)
@PostMapping(value = "/complete")
public AjaxResult complete(@RequestBody FlowTaskVo flowTaskVo) {
return flowTaskService.complete(flowTaskVo);
}
@ApiOperation(value = "驳回任务")
+ @Log(title = "驳回流程", businessType = BusinessType.UPDATE)
@PostMapping(value = "/reject")
public AjaxResult taskReject(@RequestBody FlowTaskVo flowTaskVo) {
flowTaskService.taskReject(flowTaskVo);
@@ -98,6 +104,7 @@ public class FlowTaskController {
}
@ApiOperation(value = "退回任务")
+ @Log(title = "退回流程", businessType = BusinessType.UPDATE)
@PostMapping(value = "/return")
public AjaxResult taskReturn(@RequestBody FlowTaskVo flowTaskVo) {
flowTaskService.taskReturn(flowTaskVo);
@@ -111,6 +118,7 @@ public class FlowTaskController {
}
@ApiOperation(value = "删除任务")
+ @Log(title = "删除流程", businessType = BusinessType.UPDATE)
@DeleteMapping(value = "/delete")
public AjaxResult delete(@RequestBody FlowTaskVo flowTaskVo) {
flowTaskService.deleteTask(flowTaskVo);
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/domain/vo/StartTaskVO.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/domain/vo/StartTaskVO.java
new file mode 100644
index 00000000..826157c3
--- /dev/null
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/domain/vo/StartTaskVO.java
@@ -0,0 +1,63 @@
+package com.ruoyi.flowable.domain.vo;
+
+import java.io.Serializable;
+import java.util.Map;
+
+/**
+ * 流程实例启动
+ *
+ * @author JiangYuQi
+ * @date 2020-07-07
+ */
+public class StartTaskVO implements Serializable
+{
+
+ private static final long serialVersionUID = 1L;
+
+ //流程实例ID
+ private String procDefId;
+ private String userId;
+ private String userName;
+ private String nickName;
+ private Map variables;
+
+ public String getProcDefId() {
+ return procDefId;
+ }
+
+ public void setProcDefId(String procDefId) {
+ this.procDefId = procDefId;
+ }
+
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public String getNickName() {
+ return nickName;
+ }
+
+ public void setNickName(String nickName) {
+ this.nickName = nickName;
+ }
+
+ public Map getVariables() {
+ return variables;
+ }
+
+ public void setVariables(Map variables) {
+ this.variables = variables;
+ }
+}
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/IFlowDefinitionService.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/IFlowDefinitionService.java
index 008c0716..0607c9fc 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/IFlowDefinitionService.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/IFlowDefinitionService.java
@@ -3,9 +3,11 @@ package com.ruoyi.flowable.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.domain.FlowProcDefDto;
+import org.flowable.bpmn.model.FlowElement;
import java.io.IOException;
import java.io.InputStream;
+import java.util.List;
import java.util.Map;
/**
@@ -64,7 +66,7 @@ public interface IFlowDefinitionService {
* @return
*/
- AjaxResult startProcessInstanceById(String procDefId, Map variables);
+ AjaxResult startProcessInstanceById(String procDefId, String userId, String nickName, Map variables);
/**
@@ -90,4 +92,6 @@ public interface IFlowDefinitionService {
* @return
*/
InputStream readImage(String deployId);
+
+ public List readNodes(String deployId);
}
diff --git a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowBusinessKeyServiceImpl.java b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowBusinessKeyServiceImpl.java
index efdb90e6..aa199912 100644
--- a/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowBusinessKeyServiceImpl.java
+++ b/ruoyi-flowable/src/main/java/com/ruoyi/flowable/service/impl/FlowBusinessKeyServiceImpl.java
@@ -88,7 +88,6 @@ public class FlowBusinessKeyServiceImpl implements IFlowBusinessKeyService {
*/
@Override
public List