提交代码

main
姜玉琦 2024-02-24 12:36:48 +08:00
parent f57b94ba30
commit acda4fb4ba
21 changed files with 86 additions and 83 deletions

View File

@ -4,7 +4,8 @@ import com.yanzhu.common.core.controller.BaseController;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.common.core.domain.entity.SysRole;
import com.yanzhu.common.core.domain.entity.SysUser;
import com.yanzhu.flowable.domain.dto.FlowSaveXmlVo;
import com.yanzhu.flowable.domain.FlowSaveXmlVo;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.flowable.service.IFlowDefinitionService;
import com.yanzhu.system.domain.FlowProcDefDto;
import com.yanzhu.system.domain.SysExpression;
@ -56,15 +57,18 @@ public class FlowDefinitionController extends BaseController {
@Resource
private ISysExpressionService sysExpressionService;
/**
*
*
* @param flowQueryVo
* @return
*/
@GetMapping(value = "/list")
@ApiOperation(value = "流程定义列表", response = FlowProcDefDto.class)
public AjaxResult list(@ApiParam(value = "当前页码", required = true) @RequestParam Integer pageNum,
@ApiParam(value = "每页条数", required = true) @RequestParam Integer pageSize,
@ApiParam(value = "流程名称", required = false) @RequestParam(required = false) String name) {
return AjaxResult.success(flowDefinitionService.list(name, pageNum, pageSize));
public AjaxResult list(FlowQueryVo flowQueryVo) {
return AjaxResult.success(flowDefinitionService.list(flowQueryVo));
}
@ApiOperation(value = "导入流程文件", notes = "上传bpmn20的xml文件")
@PostMapping("/import")
public AjaxResult importFile(@RequestParam(required = false) String name,
@ -90,7 +94,6 @@ public class FlowDefinitionController extends BaseController {
return AjaxResult.success("导入成功");
}
@ApiOperation(value = "读取xml文件")
@GetMapping("/readXml/{deployId}")
public AjaxResult readXml(@ApiParam(value = "流程定义id") @PathVariable(value = "deployId") String deployId) {
@ -129,7 +132,6 @@ public class FlowDefinitionController extends BaseController {
}
@ApiOperation(value = "保存流程设计器内的xml文件")
@PostMapping("/save")
public AjaxResult save(@RequestBody FlowSaveXmlVo vo) {

View File

@ -2,7 +2,7 @@ package com.yanzhu.flowable.controller;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import com.yanzhu.flowable.service.IFlowInstanceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

View File

@ -1,9 +1,9 @@
package com.yanzhu.flowable.controller;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.flowable.domain.dto.FlowTaskDto;
import com.yanzhu.flowable.domain.vo.FlowQueryVo;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.dto.FlowTaskDto;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import com.yanzhu.flowable.service.IFlowTaskService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.flowable.domain;
import lombok.Data;

View File

@ -2,6 +2,7 @@ package com.yanzhu.flowable.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.system.domain.FlowProcDefDto;
import java.io.IOException;
@ -16,15 +17,13 @@ public interface IFlowDefinitionService {
boolean exist(String processDefinitionKey);
/**
*
*
* @param pageNum
* @param pageSize
* @param flowQueryVo
* @return
*/
Page<FlowProcDefDto> list(String name,Integer pageNum, Integer pageSize);
Page<FlowProcDefDto> list(FlowQueryVo flowQueryVo);
/**
*

View File

@ -1,7 +1,7 @@
package com.yanzhu.flowable.service;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import org.flowable.engine.history.HistoricProcessInstance;
import java.util.Map;

View File

@ -1,8 +1,8 @@
package com.yanzhu.flowable.service;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.flowable.domain.vo.FlowQueryVo;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import org.flowable.task.api.Task;
import java.io.InputStream;

View File

@ -7,6 +7,7 @@ import com.yanzhu.flowable.common.constant.ProcessConstants;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.common.core.domain.entity.SysUser;
import com.yanzhu.common.utils.SecurityUtils;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.system.domain.FlowProcDefDto;
import com.yanzhu.flowable.factory.FlowServiceFactory;
import com.yanzhu.flowable.service.IFlowDefinitionService;
@ -70,47 +71,22 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFl
/**
*
*
* @param pageNum
* @param pageSize
* @param flowQueryVo
* @return
*/
@Override
public Page<FlowProcDefDto> list(String name, Integer pageNum, Integer pageSize) {
public Page<FlowProcDefDto> list(FlowQueryVo flowQueryVo) {
Page<FlowProcDefDto> page = new Page<>();
// // 流程定义列表数据查询
// final ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery();
// if (StringUtils.isNotEmpty(name)) {
// processDefinitionQuery.processDefinitionNameLike(name);
// }
//// processDefinitionQuery.orderByProcessDefinitionKey().asc();
// page.setTotal(processDefinitionQuery.count());
// List<ProcessDefinition> processDefinitionList = processDefinitionQuery.listPage(pageSize * (pageNum - 1), pageSize);
//
// List<FlowProcDefDto> dataList = new ArrayList<>();
// for (ProcessDefinition processDefinition : processDefinitionList) {
// String deploymentId = processDefinition.getDeploymentId();
// Deployment deployment = repositoryService.createDeploymentQuery().deploymentId(deploymentId).singleResult();
// FlowProcDefDto reProcDef = new FlowProcDefDto();
// BeanUtils.copyProperties(processDefinition, reProcDef);
// SysForm sysForm = sysDeployFormService.selectSysDeployFormByDeployId(deploymentId);
// if (Objects.nonNull(sysForm)) {
// reProcDef.setFormName(sysForm.getFormName());
// reProcDef.setFormId(sysForm.getFormId());
// }
// // 流程定义时间
// reProcDef.setDeploymentTime(deployment.getDeploymentTime());
// dataList.add(reProcDef);
// }
PageHelper.startPage(pageNum, pageSize);
final List<FlowProcDefDto> dataList = flowDeployMapper.selectDeployList(name);
PageHelper.startPage(flowQueryVo.getPageNum(), flowQueryVo.getPageSize());
final List<FlowProcDefDto> dataList = flowDeployMapper.selectDeployList(flowQueryVo);
// 加载挂表单
for (FlowProcDefDto procDef : dataList) {
/**for (FlowProcDefDto procDef : dataList) {
SysForm sysForm = sysDeployFormService.selectSysDeployFormByDeployId(procDef.getDeploymentId());
if (Objects.nonNull(sysForm)) {
procDef.setFormName(sysForm.getFormName());
procDef.setFormId(sysForm.getFormId());
}
}
}*/
page.setTotal(new PageInfo(dataList).getTotal());
page.setRecords(dataList);
return page;

View File

@ -3,7 +3,7 @@ package com.yanzhu.flowable.service.impl;
import com.yanzhu.common.core.domain.AjaxResult;
import com.yanzhu.common.utils.SecurityUtils;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import com.yanzhu.flowable.factory.FlowServiceFactory;
import com.yanzhu.flowable.service.IFlowInstanceService;
import lombok.extern.slf4j.Slf4j;

View File

@ -12,12 +12,12 @@ import com.yanzhu.common.core.domain.entity.SysUser;
import com.yanzhu.flowable.common.enums.FlowComment;
import com.yanzhu.common.exception.CustomException;
import com.yanzhu.common.utils.SecurityUtils;
import com.yanzhu.flowable.domain.dto.FlowCommentDto;
import com.yanzhu.flowable.domain.dto.FlowNextDto;
import com.yanzhu.flowable.domain.dto.FlowTaskDto;
import com.yanzhu.flowable.domain.dto.FlowViewerDto;
import com.yanzhu.flowable.domain.vo.FlowQueryVo;
import com.yanzhu.flowable.domain.vo.FlowTaskVo;
import com.yanzhu.system.domain.flowable.dto.FlowCommentDto;
import com.yanzhu.system.domain.flowable.dto.FlowNextDto;
import com.yanzhu.system.domain.flowable.dto.FlowTaskDto;
import com.yanzhu.system.domain.flowable.dto.FlowViewerDto;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import com.yanzhu.system.domain.flowable.FlowTaskVo;
import com.yanzhu.flowable.factory.FlowServiceFactory;
import com.yanzhu.flowable.flow.CustomProcessDiagramGenerator;
import com.yanzhu.flowable.flow.FindNextNodeUtil;

View File

@ -52,5 +52,10 @@ public class FlowProcDefDto implements Serializable {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date deploymentTime;
@ApiModelProperty("单位主键")
private Long deptId;
@ApiModelProperty("单位名称")
private String deptName;
}

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.vo;
package com.yanzhu.system.domain.flowable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -29,5 +29,13 @@ public class FlowQueryVo {
@ApiModelProperty("每页条数")
private Integer pageSize;
@ApiModelProperty("流程类型")
private String category;
@ApiModelProperty("单位主键")
private Long deptId;
@ApiModelProperty("单位名称")
private String deptName;
}

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.vo;
package com.yanzhu.system.domain.flowable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.vo;
package com.yanzhu.system.domain.flowable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.system.domain.flowable.dto;
import lombok.Builder;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.system.domain.flowable.dto;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.system.domain.flowable.dto;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.system.domain.flowable.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;

View File

@ -1,4 +1,4 @@
package com.yanzhu.flowable.domain.dto;
package com.yanzhu.system.domain.flowable.dto;
import lombok.Data;

View File

@ -1,6 +1,8 @@
package com.yanzhu.system.mapper;
import com.yanzhu.system.domain.FlowProcDefDto;
import com.yanzhu.system.domain.flowable.FlowQueryVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -15,8 +17,8 @@ public interface FlowDeployMapper {
/**
*
* @param name
* @param flowQueryVo
* @return
*/
List<FlowProcDefDto> selectDeployList(String name);
List<FlowProcDefDto> selectDeployList(FlowQueryVo flowQueryVo);
}

View File

@ -4,9 +4,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yanzhu.system.mapper.FlowDeployMapper">
<select id="selectDeployList" resultType="com.yanzhu.system.domain.FlowProcDefDto">
<!--查询流程定义列表-->
<select id="selectDeployList" parameterType="com.yanzhu.system.domain.flowable.FlowQueryVo" resultType="com.yanzhu.system.domain.FlowProcDefDto">
SELECT
rp.id_ as id,
rp.deployment_id_ as deploymentId,
@ -15,16 +14,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
rp.key_ as flowKey,
rp.version_ as version,
rp.suspension_state_ as suspensionState,
rd.deploy_time_ as deploymentTime
rd.deploy_time_ as deploymentTime,
rpd.DEPT_ID_ as deptId,
sd.dept_name as deptName
FROM
act_re_procdef rp
LEFT JOIN act_re_deployment rd ON rp.deployment_id_ = rd.id_
left join act_re_procdef_dept rpd on rp.id_ = rpd.PROCDEF_ID_
left join sys_dept sd on sd.dept_id = rpr.DEPT_ID_
<where>
<if test="deptId != null">
and rpd.DEPT_ID_ = #{deptId}
</if>
<if test="deptName != null and deptName != ''">
and sd.dept_name like concat('%', #{deptName}, '%')
</if>
<if test="name != null and name != ''">
and rd.name_ like concat('%', #{name}, '%')
</if>
<if test="category != null and category != ''">
and rd.category_ = #{category}
</if>
</where>
order by rd.deploy_time_ desc
</select>