提交 ba71e08f authored 作者: zhoushaopan's avatar zhoushaopan

第一次整合

上级 1e8510d7
package com.tykj.workflowcore.workflow_editer.controller;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.service.FlowInfoService;
import com.tykj.workflowcore.workflow_editer.service.NodePageService;
import com.tykj.workflowcore.workflow_editer.service.VariableStorageService;
import com.tykj.workflowcore.workflow_editer.service.WorkFlowService;
import com.tykj.workflowcore.workflow_editer.vo.DeployedVo;
import com.tykj.workflowcore.workflow_editer.vo.FlowsInfoVo;
import com.tykj.workflowcore.workflow_editer.vo.PageVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.service.FlowInfoService;
import com.tykj.service.NodePageService;
import com.tykj.service.VariableStorageService;
import com.tykj.service.WorkFlowService;
import com.tykj.vo.DeployedVo;
import com.tykj.vo.FlowsInfoVo;
import com.tykj.vo.PageVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
......
package com.tykj.workflowcore.workflow_editer.controller;
import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.service.FormPageService;
import com.tykj.workflowcore.workflow_editer.vo.FormPageVo;
import com.tykj.entity.FormPage;
import com.tykj.service.FormPageService;
import com.tykj.vo.FormPageVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
......
package com.tykj.workflowcore.workflow_editer.controller;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.workflowcore.workflow_editer.service.PageEntityService;
import com.tykj.entity.PageEntity;
import com.tykj.service.PageEntityService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
......
package com.tykj.workflowcore.workflow_editer.controller;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.service.FlowInfoService;
import com.tykj.workflowcore.workflow_editer.service.WorkFlowService;
import com.tykj.workflowcore.workflow_editer.util.PageUtil;
import com.tykj.workflowcore.workflow_editer.vo.PageVo;
import com.tykj.workflowcore.workflow_editer.vo.StartFlowVo;
import com.tykj.workflowcore.workflow_editer.vo.TaskVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.service.FlowInfoService;
import com.tykj.service.WorkFlowService;
import com.tykj.util.PageUtil;
import com.tykj.vo.PageVo;
import com.tykj.vo.StartFlowVo;
import com.tykj.vo.SuspendVo;
import com.tykj.vo.TaskVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.io.FileNotFoundException;
import java.util.List;
......@@ -78,4 +75,19 @@ public class WorkFlowController {
workFlowService.completeTask(taskVo);
}
@PostMapping("/isSuspension")
@ApiOperation("是否挂起")
public void isSuspension(@RequestBody SuspendVo suspendVo){
workFlowService.suspendOrActivateProcessDefinitionByKey(suspendVo);
}
@DeleteMapping("/deleteFlow/{deployId}")
@ApiOperation("是否删除")
public void deleteFlow(@PathVariable("deployId") String deployId){
//根据流程id查询出flowsInfo
FlowsInfo flowsInfo = flowInfoService.findByDeployId(deployId);
//删除flowsInfo
flowInfoService.deleteById(flowsInfo.getId());
workFlowService.deleteFlow(deployId);
}
}
......@@ -63,4 +63,9 @@ public class FlowsInfo {
@ApiModelProperty("开始节点的id")
private String startId;
/**
* @Description:
* @params: 部署id
*/
private String deployId;
}
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.entity.FlowsInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......@@ -19,6 +19,11 @@ public interface FlowsInfoMapper extends JpaRepository<FlowsInfo,Long>, JpaSpeci
*/
FlowsInfo findByFlowKey(String flowKey);
/**
* 根据部署流程id查询
* @param deployId 部署id
* @return FlowsInfo
*/
FlowsInfo findByDeployId(String deployId);
}
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.entity.FormPage;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.NodePage;
import com.tykj.entity.NodePage;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.entity.PageEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.Role;
import com.tykj.entity.Role;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.User;
import com.tykj.entity.User;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.mapper;
import com.tykj.workflowcore.workflow_editer.entity.VariableStorage;
import com.tykj.entity.VariableStorage;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.vo.FlowsInfoVo;
import com.tykj.workflowcore.workflow_editer.vo.PageVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.vo.FlowsInfoVo;
import com.tykj.vo.PageVo;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.RequestBody;
......@@ -51,4 +51,17 @@ public interface FlowInfoService {
*/
FlowsInfo findByDesc(@RequestBody FlowsInfoVo flowsInfoVo);
/**
* 根据流程部署id查询
* @param deployId 部署id
* @return flowsInfo
*/
FlowsInfo findByDeployId(String deployId);
/**
* 根据id删除
* @param id id
*/
void deleteById(Long id);
}
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.vo.FormPageVo;
import com.tykj.entity.FormPage;
import com.tykj.vo.FormPageVo;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
......
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.NodePage;
import com.tykj.entity.NodePage;
/**
* ClassName: NodePageService
......
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.entity.PageEntity;
/**
* ClassName: PageEntityService
......
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.VariableStorage;
import com.tykj.entity.VariableStorage;
import org.springframework.web.bind.annotation.RequestBody;
/**
......
package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.vo.FlowsInfoVo;
import com.tykj.workflowcore.workflow_editer.vo.StartFlowVo;
import com.tykj.workflowcore.workflow_editer.vo.TaskVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.vo.FlowsInfoVo;
import com.tykj.vo.StartFlowVo;
import com.tykj.vo.SuspendVo;
import com.tykj.vo.TaskVo;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
......@@ -116,6 +117,16 @@ public interface WorkFlowService {
*/
void transferTask(String taskId, Long userId);
/**
* 是否挂起
* @param suspendVo
*/
void suspendOrActivateProcessDefinitionByKey(SuspendVo suspendVo);
/**
* 删除流程
* @param deployId 部署id
*/
void deleteFlow(String deployId);
}
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.github.wenhao.jpa.Specifications;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.mapper.FlowsInfoMapper;
import com.tykj.workflowcore.workflow_editer.service.FlowInfoService;
import com.tykj.workflowcore.workflow_editer.vo.FlowsInfoVo;
import com.tykj.workflowcore.workflow_editer.vo.PageVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.mapper.FlowsInfoMapper;
import com.tykj.service.FlowInfoService;
import com.tykj.vo.FlowsInfoVo;
import com.tykj.vo.PageVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
......@@ -74,4 +74,14 @@ public class FlowInfoServiceImpl implements FlowInfoService {
// FlowsInfo flowsInfo = flowsInfoMapper.save(byDesc);
return flowsInfoMapper.save(byDesc);
}
@Override
public FlowsInfo findByDeployId(String deployId) {
return flowsInfoMapper.findByDeployId(deployId);
}
@Override
public void deleteById(Long id) {
flowsInfoMapper.deleteById(id);
}
}
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.mapper.FormPageMapper;
import com.tykj.workflowcore.workflow_editer.service.FormPageService;
import com.tykj.workflowcore.workflow_editer.vo.FormPageVo;
import org.springframework.beans.BeanUtils;
import com.tykj.entity.FormPage;
import com.tykj.mapper.FormPageMapper;
import com.tykj.service.FormPageService;
import com.tykj.vo.FormPageVo;
import org.modelmapper.ModelMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import springfox.documentation.swagger2.mappers.ModelMapper;
import java.util.ArrayList;
import java.util.List;
......@@ -39,8 +38,8 @@ public class FormPageServiceImpl implements FormPageService {
public FormPageVo getPage(@PathVariable("id") Long id) {
FormPage formPage = formPageMapper.findById(id).get();
FormPageVo formPageVo= new FormPageVo();
BeanUtils.copyProperties(formPage,formPageVo);
ModelMapper modelMapper = new ModelMapper();
FormPageVo formPageVo = modelMapper.map(formPage, FormPageVo.class);
return formPageVo;
}
......@@ -52,12 +51,11 @@ public class FormPageServiceImpl implements FormPageService {
@Override
public List<FormPageVo> getAllPages() {
ModelMapper modelMapper = new ModelMapper();
ArrayList<FormPageVo> formPageVos = new ArrayList<>();
List<FormPage> formPages = formPageMapper.findAll();
for (FormPage formPage : formPages) {
FormPageVo formPageVo = new FormPageVo();
BeanUtils.copyProperties(formPage,formPageVo);
FormPageVo formPageVo = modelMapper.map(formPage, FormPageVo.class);
formPageVos.add(formPageVo);
}
return formPageVos;
......
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.tykj.workflowcore.workflow_editer.entity.NodePage;
import com.tykj.workflowcore.workflow_editer.mapper.NodePageMapper;
import com.tykj.workflowcore.workflow_editer.service.NodePageService;
import com.tykj.entity.NodePage;
import com.tykj.mapper.NodePageMapper;
import com.tykj.service.NodePageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.workflowcore.workflow_editer.mapper.PageEntityMapper;
import com.tykj.workflowcore.workflow_editer.service.PageEntityService;
import com.tykj.entity.PageEntity;
import com.tykj.mapper.PageEntityMapper;
import com.tykj.service.PageEntityService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.tykj.workflowcore.workflow_editer.entity.VariableStorage;
import com.tykj.workflowcore.workflow_editer.mapper.VariableStorageMapper;
import com.tykj.workflowcore.workflow_editer.service.VariableStorageService;
import com.tykj.entity.VariableStorage;
import com.tykj.mapper.VariableStorageMapper;
import com.tykj.service.VariableStorageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;
......
package com.tykj.workflowcore.workflow_editer.service.impl;
import com.tykj.workflowcore.workflow_editer.entity.FlowsInfo;
import com.tykj.workflowcore.workflow_editer.entity.NodePage;
import com.tykj.workflowcore.workflow_editer.entity.Role;
import com.tykj.workflowcore.workflow_editer.entity.User;
import com.tykj.workflowcore.workflow_editer.mapper.FlowsInfoMapper;
import com.tykj.workflowcore.workflow_editer.mapper.RoleMapper;
import com.tykj.workflowcore.workflow_editer.mapper.UserMapper;
import com.tykj.workflowcore.workflow_editer.service.NodePageService;
import com.tykj.workflowcore.workflow_editer.service.WorkFlowService;
import com.tykj.workflowcore.workflow_editer.vo.FlowsInfoVo;
import com.tykj.workflowcore.workflow_editer.vo.StartFlowVo;
import com.tykj.workflowcore.workflow_editer.vo.TaskVo;
import com.tykj.entity.FlowsInfo;
import com.tykj.entity.NodePage;
import com.tykj.entity.Role;
import com.tykj.entity.User;
import com.tykj.mapper.FlowsInfoMapper;
import com.tykj.mapper.RoleMapper;
import com.tykj.mapper.UserMapper;
import com.tykj.service.NodePageService;
import com.tykj.service.WorkFlowService;
import com.tykj.vo.FlowsInfoVo;
import com.tykj.vo.StartFlowVo;
import com.tykj.vo.SuspendVo;
import com.tykj.vo.TaskVo;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
......@@ -216,17 +217,21 @@ public class WorkFlowServiceImpl implements WorkFlowService {
}
//修改状态
flowsInfo.setState(0);
flowsInfo.setDeployId(deploy.getId());
flowsInfoMapper.save(flowsInfo);
}
@Override
public void startFlow(@RequestBody StartFlowVo startFlowVo) {
//获取流程主键
String flowKey = startFlowVo.getFlowKey();
//获取变量池
Map<String, Object> map = startFlowVo.getMap();
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(flowKey, map);
Task task =
taskService.createTaskQuery().processInstanceId(processInstance.getProcessInstanceId()).singleResult();
//获取当前人登录的id
......@@ -335,6 +340,20 @@ public class WorkFlowServiceImpl implements WorkFlowService {
taskService.setAssignee(taskId,Long.toString(userId));
}
@Override
public void suspendOrActivateProcessDefinitionByKey(SuspendVo suspendVo) {
if (suspendVo.getSuspensionState() == 1){
repositoryService.suspendProcessDefinitionByKey(suspendVo.getProcessDefinitionKey(), true, new Date());
}else {
repositoryService.activateProcessDefinitionById(suspendVo.getProcessDefinitionKey(),true, new Date());
}
}
@Override
public void deleteFlow(String deployId) {
repositoryService.deleteDeployment(deployId);
}
@Override
public Map<String,Object> setVariables(@RequestBody Map<String,Object> maxMap) {
......@@ -342,4 +361,5 @@ public class WorkFlowServiceImpl implements WorkFlowService {
map.putAll(maxMap);
return map;
}
}
package com.tykj.workflowcore.workflow_editer.vo;
import com.tykj.workflowcore.workflow_editer.entity.NodePage;
import com.tykj.entity.NodePage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
......
package com.tykj.workflowcore.workflow_editer.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* ClassName: suspendVo
* Package: com.tykj.vo
* Description:
* Datetime: 2021/3/5 10:00
*
* @Author: zsp
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SuspendVo {
/**
* 流程主键
*/
private String processDefinitionKey;
/**
* 是否挂起 1 挂起 0 激活
*/
private int suspensionState;
}
......@@ -37,7 +37,8 @@ public class TaskVo {
@ApiModelProperty("转交人的id")
private Long toUserId;
Map<String,Object> map;
private Map<String,Object> map;
@ApiModelProperty("条件表达式")
private String conditionalExpression;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论