refactor -- 使用Mybatis Plus重构流程表单模块,修改数据库表(sql脚本添加"update脚本")

This commit is contained in:
konbai
2022-03-09 02:00:58 +08:00
parent 4a19591e5e
commit f5946970ef
34 changed files with 538 additions and 1040 deletions

View File

@@ -1,56 +0,0 @@
package com.ruoyi.system.domain;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 流程表单对象 sys_task_form
*
* @author XuanXuan Xuan
* @date 2021-03-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class SysForm extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 表单主键
*/
private Long formId;
/**
* 表单名称
*/
@ExcelProperty(value = "表单名称")
private String formName;
/**
* 表单内容
*/
@ExcelProperty(value = "表单内容")
private String formContent;
/**
* 备注
*/
private String remark;
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("formId", getFormId())
.append("formName", getFormName())
.append("formContent", getFormContent())
.append("createTime", getCreateTime())
.append("updateTime", getUpdateTime())
.append("createBy", getCreateBy())
.append("updateBy", getUpdateBy())
.append("remark", getRemark())
.toString();
}
}

View File

@@ -1,71 +0,0 @@
package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.SysDeployForm;
import com.ruoyi.system.domain.SysForm;
import java.util.List;
/**
* 流程实例关联表单Mapper接口
*
* @author XuanXuan Xuan
* @date 2021-03-30
*/
public interface SysDeployFormMapper {
/**
* 查询流程实例关联表单
*
* @param id 流程实例关联表单ID
* @return 流程实例关联表单
*/
SysDeployForm selectSysDeployFormById(Long id);
/**
* 查询流程实例关联表单列表
*
* @param SysDeployForm 流程实例关联表单
* @return 流程实例关联表单集合
*/
List<SysDeployForm> selectSysDeployFormList(SysDeployForm SysDeployForm);
/**
* 新增流程实例关联表单
*
* @param SysDeployForm 流程实例关联表单
* @return 结果
*/
int insertSysDeployForm(SysDeployForm SysDeployForm);
/**
* 修改流程实例关联表单
*
* @param SysDeployForm 流程实例关联表单
* @return 结果
*/
int updateSysDeployForm(SysDeployForm SysDeployForm);
/**
* 删除流程实例关联表单
*
* @param id 流程实例关联表单ID
* @return 结果
*/
int deleteSysDeployFormById(Long id);
/**
* 批量删除流程实例关联表单
*
* @param ids 需要删除的数据ID
* @return 结果
*/
int deleteSysDeployFormByIds(Long[] ids);
/**
* 查询流程挂着的表单
*
* @param deployId
* @return
*/
SysForm selectSysDeployFormByDeployId(String deployId);
}

View File

@@ -1,66 +0,0 @@
package com.ruoyi.system.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.mapper.BaseMapperPlus;
import com.ruoyi.system.domain.SysForm;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 流程表单Mapper接口
*
* @author XuanXuan Xuan
* @date 2021-03-30
*/
public interface SysFormMapper extends BaseMapperPlus<SysFormMapper, SysForm, SysForm> {
/**
* 查询流程表单
*
* @param formId 流程表单ID
* @return 流程表单
*/
SysForm selectSysFormById(Long formId);
/**
* 查询流程表单列表
*
* @param sysForm 流程表单
* @return 流程表单集合
*/
Page<SysForm> selectSysFormPage(@Param("page") Page<SysForm> page, @Param("from") SysForm sysForm);
List<SysForm> selectSysFormList(SysForm sysForm);
/**
* 新增流程表单
*
* @param sysForm 流程表单
* @return 结果
*/
int insertSysForm(SysForm sysForm);
/**
* 修改流程表单
*
* @param sysForm 流程表单
* @return 结果
*/
int updateSysForm(SysForm sysForm);
/**
* 删除流程表单
*
* @param formId 流程表单ID
* @return 结果
*/
int deleteSysFormById(Long formId);
/**
* 批量删除流程表单
*
* @param formIds 需要删除的数据ID
* @return 结果
*/
int deleteSysFormByIds(Long[] formIds);
}

View File

@@ -1,61 +0,0 @@
package com.ruoyi.system.mapper;
import com.ruoyi.system.domain.SysTaskForm;
import java.util.List;
/**
* 流程任务关联单Mapper接口
*
* @author XuanXuan Xuan
* @date 2021-04-03
*/
public interface SysTaskFormMapper {
/**
* 查询流程任务关联单
*
* @param id 流程任务关联单ID
* @return 流程任务关联单
*/
SysTaskForm selectSysTaskFormById(Long id);
/**
* 查询流程任务关联单列表
*
* @param sysTaskForm 流程任务关联单
* @return 流程任务关联单集合
*/
List<SysTaskForm> selectSysTaskFormList(SysTaskForm sysTaskForm);
/**
* 新增流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
int insertSysTaskForm(SysTaskForm sysTaskForm);
/**
* 修改流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
int updateSysTaskForm(SysTaskForm sysTaskForm);
/**
* 删除流程任务关联单
*
* @param id 流程任务关联单ID
* @return 结果
*/
int deleteSysTaskFormById(Long id);
/**
* 批量删除流程任务关联单
*
* @param ids 需要删除的数据ID
* @return 结果
*/
int deleteSysTaskFormByIds(Long[] ids);
}

View File

@@ -5,17 +5,17 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.experimental.Accessors;
import lombok.EqualsAndHashCode;
/**
* 流程分类对象 workflow_category
* 流程分类对象 wf_category
*
* @author KonBAI
* @date 2022-01-15
*/
@Data
@Accessors(chain = true)
@TableName("workflow_category")
@EqualsAndHashCode(callSuper = true)
@TableName("wf_category")
public class FlowCategory extends BaseEntity {
private static final long serialVersionUID=1L;

View File

@@ -1,35 +1,34 @@
package com.ruoyi.system.domain;
package com.ruoyi.workflow.domain;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 流程实例关联表单对象 sys_instance_form
*
* @author XuanXuan Xuan
* @date 2021-03-30
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class SysDeployForm extends BaseEntity {
@TableName("wf_deploy_form")
@ApiModel("部署实例和表单关联")
public class WfDeployForm {
private static final long serialVersionUID = 1L;
/**
* 主键
* 流程定义主键
*/
private Long id;
@TableId(type = IdType.INPUT)
@ExcelProperty(value = "流程定义主键")
private String deployId;
/**
* 表单主键
*/
@ExcelProperty(value = "表单主键")
private Long formId;
/**
* 流程定义主键
*/
@ExcelProperty(value = "流程定义主键")
private String deployId;
}

View File

@@ -0,0 +1,41 @@
package com.ruoyi.workflow.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 流程表单对象 wf_form
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("wf_form")
public class WfForm extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 表单主键
*/
@TableId(value = "form_id")
private Long formId;
/**
* 表单名称
*/
private String formName;
/**
* 表单内容
*/
private String content;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,52 @@
package com.ruoyi.workflow.domain.bo;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 流程表单对象 wf_form
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("流程表单业务对象")
public class WfFormBo extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 表单主键
*/
@ApiModelProperty(value = "表单ID", required = true)
@NotNull(message = "表单ID不能为空", groups = { EditGroup.class })
private Long formId;
/**
* 表单名称
*/
@ApiModelProperty(value = "表单名称", required = true)
@NotBlank(message = "表单名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String formName;
/**
* 表单内容
*/
@ApiModelProperty(value = "表单内容", required = true)
@NotBlank(message = "表单内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 备注
*/
@ApiModelProperty(value = "备注", required = true)
private String remark;
}

View File

@@ -5,12 +5,11 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
import java.util.Set;
/**
* 任务追踪视图类
*
* @author konbai
* @author KonBAI
* @createTime 2022/1/8 19:42
*/
@Data

View File

@@ -0,0 +1,47 @@
package com.ruoyi.workflow.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@Data
@ApiModel("流程分类视图对象")
@ExcelIgnoreUnannotated
public class WfFormVo {
private static final long serialVersionUID = 1L;
/**
* 表单主键
*/
@ExcelProperty(value = "表单ID")
@ApiModelProperty("表单ID")
private Long formId;
/**
* 表单名称
*/
@ExcelProperty(value = "表单名称")
@ApiModelProperty("表单名称")
private String formName;
/**
* 表单内容
*/
@ExcelProperty(value = "表单内容")
@ApiModelProperty("表单内容")
private String content;
/**
* 备注
*/
@ExcelProperty(value = "备注")
@ApiModelProperty("备注")
private String remark;
}

View File

@@ -0,0 +1,14 @@
package com.ruoyi.workflow.mapper;
import com.ruoyi.common.core.mapper.BaseMapperPlus;
import com.ruoyi.workflow.domain.WfDeployForm;
/**
* 流程实例关联表单Mapper接口
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
public interface WfDeployFormMapper extends BaseMapperPlus<WfDeployFormMapper, WfDeployForm, WfDeployForm> {
}

View File

@@ -0,0 +1,16 @@
package com.ruoyi.workflow.mapper;
import com.ruoyi.common.core.mapper.BaseMapperPlus;
import com.ruoyi.workflow.domain.WfForm;
import com.ruoyi.workflow.domain.vo.WfFormVo;
/**
* 流程表单Mapper接口
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
public interface WfFormMapper extends BaseMapperPlus<WfFormMapper, WfForm, WfFormVo> {
WfFormVo selectFormByDeployId(String deployId);
}

View File

@@ -1,70 +0,0 @@
package com.ruoyi.workflow.service;
import com.ruoyi.system.domain.SysDeployForm;
import com.ruoyi.system.domain.SysForm;
import java.util.List;
/**
* 流程实例关联表单Service接口
*
* @author XuanXuan
* @date 2021-04-03
*/
public interface ISysDeployFormService {
/**
* 查询流程实例关联表单
*
* @param id 流程实例关联表单ID
* @return 流程实例关联表单
*/
SysDeployForm selectSysDeployFormById(Long id);
/**
* 查询流程实例关联表单列表
*
* @param sysDeployForm 流程实例关联表单
* @return 流程实例关联表单集合
*/
List<SysDeployForm> selectSysDeployFormList(SysDeployForm sysDeployForm);
/**
* 新增流程实例关联表单
*
* @param sysDeployForm 流程实例关联表单
* @return 结果
*/
int insertSysDeployForm(SysDeployForm sysDeployForm);
/**
* 修改流程实例关联表单
*
* @param sysDeployForm 流程实例关联表单
* @return 结果
*/
int updateSysDeployForm(SysDeployForm sysDeployForm);
/**
* 批量删除流程实例关联表单
*
* @param ids 需要删除的流程实例关联表单ID
* @return 结果
*/
int deleteSysDeployFormByIds(Long[] ids);
/**
* 删除流程实例关联表单信息
*
* @param id 流程实例关联表单ID
* @return 结果
*/
int deleteSysDeployFormById(Long id);
/**
* 查询流程挂着的表单
*
* @param deployId
* @return
*/
SysForm selectSysDeployFormByDeployId(String deployId);
}

View File

@@ -1,62 +0,0 @@
package com.ruoyi.workflow.service;
import com.ruoyi.system.domain.SysTaskForm;
import java.util.List;
/**
* 流程任务关联单Service接口
*
* @author XuanXuan
* @date 2021-04-03
*/
@Deprecated
public interface ISysTaskFormService {
/**
* 查询流程任务关联单
*
* @param id 流程任务关联单ID
* @return 流程任务关联单
*/
SysTaskForm selectSysTaskFormById(Long id);
/**
* 查询流程任务关联单列表
*
* @param sysTaskForm 流程任务关联单
* @return 流程任务关联单集合
*/
List<SysTaskForm> selectSysTaskFormList(SysTaskForm sysTaskForm);
/**
* 新增流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
int insertSysTaskForm(SysTaskForm sysTaskForm);
/**
* 修改流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
int updateSysTaskForm(SysTaskForm sysTaskForm);
/**
* 批量删除流程任务关联单
*
* @param ids 需要删除的流程任务关联单ID
* @return 结果
*/
int deleteSysTaskFormByIds(Long[] ids);
/**
* 删除流程任务关联单信息
*
* @param id 流程任务关联单ID
* @return 结果
*/
int deleteSysTaskFormById(Long id);
}

View File

@@ -0,0 +1,29 @@
package com.ruoyi.workflow.service;
import com.ruoyi.workflow.domain.WfDeployForm;
import com.ruoyi.workflow.domain.vo.WfFormVo;
/**
* 流程实例关联表单Service接口
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
public interface IWfDeployFormService {
/**
* 新增流程实例关联表单
*
* @param wfDeployForm 流程实例关联表单
* @return 结果
*/
int insertWfDeployForm(WfDeployForm wfDeployForm);
/**
* 查询流程挂着的表单
*
* @param deployId
* @return
*/
WfFormVo selectSysDeployFormByDeployId(String deployId);
}

View File

@@ -2,56 +2,58 @@ package com.ruoyi.workflow.service;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.system.domain.SysForm;
import com.ruoyi.workflow.domain.bo.WfFormBo;
import com.ruoyi.workflow.domain.vo.WfFormVo;
import java.util.Collection;
import java.util.List;
/**
* 表单
*
* @author XuanXuan Xuan
* @date 2021-04-03
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
public interface ISysFormService {
public interface IWfFormService {
/**
* 查询流程表单
*
* @param formId 流程表单ID
* @return 流程表单
*/
SysForm selectSysFormById(Long formId);
WfFormVo queryById(Long formId);
/**
* 查询流程表单列表
*
* @param sysForm 流程表单
* @param bo 流程表单
* @return 流程表单集合
*/
TableDataInfo<SysForm> selectSysFormPage(SysForm sysForm, PageQuery pageQuery);
TableDataInfo<WfFormVo> queryPageList(WfFormBo bo, PageQuery pageQuery);
/**
* 查询流程表单列表
*
* @param sysForm 流程表单
* @param bo 流程表单
* @return 流程表单集合
*/
List<SysForm> selectSysFormList(SysForm sysForm);
List<WfFormVo> queryList(WfFormBo bo);
/**
* 新增流程表单
*
* @param sysForm 流程表单
* @param bo 流程表单
* @return 结果
*/
int insertSysForm(SysForm sysForm);
int insertForm(WfFormBo bo);
/**
* 修改流程表单
*
* @param sysForm 流程表单
* @param bo 流程表单
* @return 结果
*/
int updateSysForm(SysForm sysForm);
int updateForm(WfFormBo bo);
/**
* 批量删除流程表单
@@ -59,13 +61,5 @@ public interface ISysFormService {
* @param formIds 需要删除的流程表单ID
* @return 结果
*/
int deleteSysFormByIds(Long[] formIds);
/**
* 删除流程表单信息
*
* @param formId 流程表单ID
* @return 结果
*/
int deleteSysFormById(Long formId);
Boolean deleteWithValidByIds(Collection<Long> formIds);
}

View File

@@ -9,10 +9,10 @@ import com.ruoyi.common.helper.LoginHelper;
import com.ruoyi.flowable.common.constant.ProcessConstants;
import com.ruoyi.flowable.common.enums.FlowComment;
import com.ruoyi.flowable.factory.FlowServiceFactory;
import com.ruoyi.system.domain.SysForm;
import com.ruoyi.workflow.domain.vo.FlowDefinitionVo;
import com.ruoyi.workflow.domain.vo.WfFormVo;
import com.ruoyi.workflow.mapper.WfFormMapper;
import com.ruoyi.workflow.service.IFlowDefinitionService;
import com.ruoyi.workflow.service.ISysDeployFormService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.IOUtils;
@@ -44,7 +44,7 @@ import java.util.stream.Collectors;
@Slf4j
public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFlowDefinitionService {
private final ISysDeployFormService sysDeployFormService;
private final WfFormMapper formMapper;
private static final String BPMN_FILE_SUFFIX = ".bpmn";
@@ -89,10 +89,10 @@ public class FlowDefinitionServiceImpl extends FlowServiceFactory implements IFl
vo.setCategoryCode(processDefinition.getCategory());
vo.setDeploymentId(processDefinition.getDeploymentId());
vo.setSuspended(processDefinition.isSuspended());
SysForm sysForm = sysDeployFormService.selectSysDeployFormByDeployId(deploymentId);
if (Objects.nonNull(sysForm)) {
vo.setFormId(sysForm.getFormId());
vo.setFormName(sysForm.getFormName());
WfFormVo formVo = formMapper.selectFormByDeployId(deploymentId);
if (Objects.nonNull(formVo)) {
vo.setFormId(formVo.getFormId());
vo.setFormName(formVo.getFormName());
}
// 流程定义时间
vo.setCategoryCode(deployment.getCategory());

View File

@@ -18,7 +18,6 @@ import com.ruoyi.flowable.factory.FlowServiceFactory;
import com.ruoyi.flowable.flow.CustomProcessDiagramGenerator;
import com.ruoyi.flowable.flow.FindNextNodeUtil;
import com.ruoyi.flowable.flow.FlowableUtils;
import com.ruoyi.system.domain.SysForm;
import com.ruoyi.system.service.ISysRoleService;
import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.workflow.domain.dto.FlowCommentDto;
@@ -26,8 +25,9 @@ import com.ruoyi.workflow.domain.dto.FlowNextDto;
import com.ruoyi.workflow.domain.dto.FlowTaskDto;
import com.ruoyi.workflow.domain.vo.FlowTaskVo;
import com.ruoyi.workflow.domain.vo.FlowViewerVo;
import com.ruoyi.workflow.domain.vo.WfFormVo;
import com.ruoyi.workflow.service.IFlowTaskService;
import com.ruoyi.workflow.service.ISysDeployFormService;
import com.ruoyi.workflow.service.IWfDeployFormService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@@ -77,7 +77,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
private final ISysRoleService sysRoleService;
private final ISysDeployFormService sysInstanceFormService;
private final IWfDeployFormService deployFormService;
/**
* 完成任务
@@ -736,11 +736,11 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
}
// 第一次申请获取初始化表单
if (StringUtils.isNotBlank(deployId)) {
SysForm sysForm = sysInstanceFormService.selectSysDeployFormByDeployId(deployId);
if (Objects.isNull(sysForm)) {
WfFormVo formVo = deployFormService.selectSysDeployFormByDeployId(deployId);
if (Objects.isNull(formVo)) {
throw new ServiceException("请先配置流程表单");
}
map.put("formData", JsonUtils.parseObject(sysForm.getFormContent(), Map.class));
map.put("formData", JsonUtils.parseObject(formVo.getContent(), Map.class));
}
return map;
}

View File

@@ -1,106 +0,0 @@
package com.ruoyi.workflow.service.impl;
import com.ruoyi.system.domain.SysDeployForm;
import com.ruoyi.system.domain.SysForm;
import com.ruoyi.system.mapper.SysDeployFormMapper;
import com.ruoyi.workflow.service.ISysDeployFormService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* 流程实例关联表单Service业务层处理
*
* @author XuanXuan Xuan
* @date 2021-04-03
*/
@RequiredArgsConstructor
@Service
public class SysDeployFormServiceImpl implements ISysDeployFormService {
private final SysDeployFormMapper sysDeployFormMapper;
/**
* 查询流程实例关联表单
*
* @param id 流程实例关联表单ID
* @return 流程实例关联表单
*/
@Override
public SysDeployForm selectSysDeployFormById(Long id) {
return sysDeployFormMapper.selectSysDeployFormById(id);
}
/**
* 查询流程实例关联表单列表
*
* @param sysDeployForm 流程实例关联表单
* @return 流程实例关联表单
*/
@Override
public List<SysDeployForm> selectSysDeployFormList(SysDeployForm sysDeployForm) {
return sysDeployFormMapper.selectSysDeployFormList(sysDeployForm);
}
/**
* 新增流程实例关联表单
*
* @param sysDeployForm 流程实例关联表单
* @return 结果
*/
@Override
public int insertSysDeployForm(SysDeployForm sysDeployForm) {
SysForm sysForm = sysDeployFormMapper.selectSysDeployFormByDeployId(sysDeployForm.getDeployId());
if (Objects.isNull(sysForm)) {
return sysDeployFormMapper.insertSysDeployForm(sysDeployForm);
} else {
return 1;
}
}
/**
* 修改流程实例关联表单
*
* @param sysDeployForm 流程实例关联表单
* @return 结果
*/
@Override
public int updateSysDeployForm(SysDeployForm sysDeployForm) {
return sysDeployFormMapper.updateSysDeployForm(sysDeployForm);
}
/**
* 批量删除流程实例关联表单
*
* @param ids 需要删除的流程实例关联表单ID
* @return 结果
*/
@Override
public int deleteSysDeployFormByIds(Long[] ids) {
return sysDeployFormMapper.deleteSysDeployFormByIds(ids);
}
/**
* 删除流程实例关联表单信息
*
* @param id 流程实例关联表单ID
* @return 结果
*/
@Override
public int deleteSysDeployFormById(Long id) {
return sysDeployFormMapper.deleteSysDeployFormById(id);
}
/**
* 查询流程挂着的表单
*
* @param deployId
* @return
*/
@Override
public SysForm selectSysDeployFormByDeployId(String deployId) {
return sysDeployFormMapper.selectSysDeployFormByDeployId(deployId);
}
}

View File

@@ -1,104 +0,0 @@
package com.ruoyi.workflow.service.impl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.system.domain.SysForm;
import com.ruoyi.system.mapper.SysFormMapper;
import com.ruoyi.workflow.service.ISysFormService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 流程表单Service业务层处理
*
* @author XuanXuan Xuan
* @date 2021-04-03
*/
@RequiredArgsConstructor
@Service
public class SysFormServiceImpl implements ISysFormService {
private final SysFormMapper sysFormMapper;
/**
* 查询流程表单
*
* @param formId 流程表单ID
* @return 流程表单
*/
@Override
public SysForm selectSysFormById(Long formId) {
return sysFormMapper.selectSysFormById(formId);
}
/**
* 查询流程表单列表
*
* @param sysForm 流程表单
* @return 流程表单
*/
@Override
public TableDataInfo<SysForm> selectSysFormPage(SysForm sysForm, PageQuery pageQuery) {
return TableDataInfo.build(sysFormMapper.selectSysFormPage(pageQuery.build(), sysForm));
}
/**
* 查询流程表单列表
*
* @param sysForm 流程表单
* @return 流程表单
*/
@Override
public List<SysForm> selectSysFormList(SysForm sysForm) {
return sysFormMapper.selectSysFormList(sysForm);
}
/**
* 新增流程表单
*
* @param sysForm 流程表单
* @return 结果
*/
@Override
public int insertSysForm(SysForm sysForm) {
sysForm.setCreateTime(DateUtils.getNowDate());
return sysFormMapper.insertSysForm(sysForm);
}
/**
* 修改流程表单
*
* @param sysForm 流程表单
* @return 结果
*/
@Override
public int updateSysForm(SysForm sysForm) {
sysForm.setUpdateTime(DateUtils.getNowDate());
return sysFormMapper.updateSysForm(sysForm);
}
/**
* 批量删除流程表单
*
* @param formIds 需要删除的流程表单ID
* @return 结果
*/
@Override
public int deleteSysFormByIds(Long[] formIds) {
return sysFormMapper.deleteSysFormByIds(formIds);
}
/**
* 删除流程表单信息
*
* @param formId 流程表单ID
* @return 结果
*/
@Override
public int deleteSysFormById(Long formId) {
return sysFormMapper.deleteSysFormById(formId);
}
}

View File

@@ -1,88 +0,0 @@
package com.ruoyi.workflow.service.impl;
import com.ruoyi.workflow.service.ISysTaskFormService;
import com.ruoyi.system.domain.SysTaskForm;
import com.ruoyi.system.mapper.SysTaskFormMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 流程任务关联单Service业务层处理
*
* @author XuanXuan Xuan
* @date 2021-04-03
*/
@Service
public class SysTaskFormServiceImpl implements ISysTaskFormService {
@Autowired
private SysTaskFormMapper sysTaskFormMapper;
/**
* 查询流程任务关联单
*
* @param id 流程任务关联单ID
* @return 流程任务关联单
*/
@Override
public SysTaskForm selectSysTaskFormById(Long id) {
return sysTaskFormMapper.selectSysTaskFormById(id);
}
/**
* 查询流程任务关联单列表
*
* @param sysTaskForm 流程任务关联单
* @return 流程任务关联单
*/
@Override
public List<SysTaskForm> selectSysTaskFormList(SysTaskForm sysTaskForm) {
return sysTaskFormMapper.selectSysTaskFormList(sysTaskForm);
}
/**
* 新增流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
@Override
public int insertSysTaskForm(SysTaskForm sysTaskForm) {
return sysTaskFormMapper.insertSysTaskForm(sysTaskForm);
}
/**
* 修改流程任务关联单
*
* @param sysTaskForm 流程任务关联单
* @return 结果
*/
@Override
public int updateSysTaskForm(SysTaskForm sysTaskForm) {
return sysTaskFormMapper.updateSysTaskForm(sysTaskForm);
}
/**
* 批量删除流程任务关联单
*
* @param ids 需要删除的流程任务关联单ID
* @return 结果
*/
@Override
public int deleteSysTaskFormByIds(Long[] ids) {
return sysTaskFormMapper.deleteSysTaskFormByIds(ids);
}
/**
* 删除流程任务关联单信息
*
* @param id 流程任务关联单ID
* @return 结果
*/
@Override
public int deleteSysTaskFormById(Long id) {
return sysTaskFormMapper.deleteSysTaskFormById(id);
}
}

View File

@@ -0,0 +1,52 @@
package com.ruoyi.workflow.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ruoyi.workflow.domain.WfDeployForm;
import com.ruoyi.workflow.domain.vo.WfFormVo;
import com.ruoyi.workflow.mapper.WfDeployFormMapper;
import com.ruoyi.workflow.mapper.WfFormMapper;
import com.ruoyi.workflow.service.IWfDeployFormService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 流程实例关联表单Service业务层处理
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@RequiredArgsConstructor
@Service
public class WfDeployFormServiceImpl implements IWfDeployFormService {
private final WfDeployFormMapper baseMapper;
private final WfFormMapper formMapper;
/**
* 新增流程实例关联表单
*
* @param deployForm 流程实例关联表单
* @return 结果
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int insertWfDeployForm(WfDeployForm deployForm) {
// 删除部署流程和表单的关联关系
baseMapper.delete(new LambdaQueryWrapper<WfDeployForm>().eq(WfDeployForm::getDeployId, deployForm.getDeployId()));
// 新增部署流程和表单关系
return baseMapper.insert(deployForm);
}
/**
* 查询流程挂着的表单
*
* @param deployId
* @return
*/
@Override
public WfFormVo selectSysDeployFormByDeployId(String deployId) {
return formMapper.selectFormByDeployId(deployId);
}
}

View File

@@ -0,0 +1,118 @@
package com.ruoyi.workflow.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.workflow.domain.WfForm;
import com.ruoyi.workflow.domain.bo.WfFormBo;
import com.ruoyi.workflow.domain.vo.WfFormVo;
import com.ruoyi.workflow.mapper.WfFormMapper;
import com.ruoyi.workflow.service.IWfFormService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* 流程表单Service业务层处理
*
* @author KonBAI
* @createTime 2022/3/7 22:07
*/
@RequiredArgsConstructor
@Service
public class WfFormServiceImpl implements IWfFormService {
private final WfFormMapper baseMapper;
/**
* 查询流程表单
*
* @param formId 流程表单ID
* @return 流程表单
*/
@Override
public WfFormVo queryById(Long formId) {
return baseMapper.selectVoById(formId);
}
/**
* 查询流程表单列表
*
* @param bo 流程表单
* @return 流程表单
*/
@Override
public TableDataInfo<WfFormVo> queryPageList(WfFormBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<WfForm> lqw = buildQueryWrapper(bo);
Page<WfFormVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
return TableDataInfo.build(result);
}
/**
* 查询流程表单列表
*
* @param bo 流程表单
* @return 流程表单
*/
@Override
public List<WfFormVo> queryList(WfFormBo bo) {
LambdaQueryWrapper<WfForm> lqw = buildQueryWrapper(bo);
return baseMapper.selectVoList(lqw);
}
/**
* 新增流程表单
*
* @param bo 流程表单
* @return 结果
*/
@Override
public int insertForm(WfFormBo bo) {
WfForm wfForm = new WfForm();
wfForm.setFormName(bo.getFormName());
wfForm.setContent(bo.getContent());
wfForm.setRemark(bo.getRemark());
return baseMapper.insert(wfForm);
}
/**
* 修改流程表单
*
* @param bo 流程表单
* @return 结果
*/
@Override
public int updateForm(WfFormBo bo) {
return baseMapper.update(new WfForm(), new LambdaUpdateWrapper<WfForm>()
.set(StrUtil.isNotBlank(bo.getFormName()), WfForm::getFormName, bo.getFormName())
.set(StrUtil.isNotBlank(bo.getContent()), WfForm::getContent, bo.getContent())
.set(StrUtil.isNotBlank(bo.getRemark()), WfForm::getRemark, bo.getRemark())
.eq(WfForm::getFormId, bo.getFormId()));
}
/**
* 批量删除流程表单
*
* @param ids 需要删除的流程表单ID
* @return 结果
*/
@Override
public Boolean deleteWithValidByIds(Collection<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
private LambdaQueryWrapper<WfForm> buildQueryWrapper(WfFormBo bo) {
Map<String, Object> params = bo.getParams();
LambdaQueryWrapper<WfForm> lqw = Wrappers.lambdaQuery();
lqw.like(StringUtils.isNotBlank(bo.getFormName()), WfForm::getFormName, bo.getFormName());
return lqw;
}
}