mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-04-02 00:33:24 +08:00
update 使用常量替代硬编码的删除标志,优化查询条件
This commit is contained in:
@@ -19,6 +19,8 @@ import java.util.HashSet;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import static org.dromara.common.core.constant.SystemConstants.NORMAL;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 部门管理 数据层
|
* 部门管理 数据层
|
||||||
*
|
*
|
||||||
@@ -105,7 +107,7 @@ public interface SysDeptMapper extends BaseMapperPlus<SysDept, SysDeptVo> {
|
|||||||
.leftJoin(SysRoleDept.class, "srd", SysRoleDept::getDeptId, SysDept::getDeptId)
|
.leftJoin(SysRoleDept.class, "srd", SysRoleDept::getDeptId, SysDept::getDeptId)
|
||||||
.leftJoin(SysRole.class, "sr", SysRole::getRoleId, SysRoleDept::getRoleId)
|
.leftJoin(SysRole.class, "sr", SysRole::getRoleId, SysRoleDept::getRoleId)
|
||||||
.eq("srd", SysRoleDept::getRoleId, roleId)
|
.eq("srd", SysRoleDept::getRoleId, roleId)
|
||||||
.eq("sr", SysRole::getStatus, "0")
|
.eq("sr", SysRole::getStatus, NORMAL)
|
||||||
.orderByAsc("d", SysDept::getParentId)
|
.orderByAsc("d", SysDept::getParentId)
|
||||||
.orderByAsc("d", SysDept::getOrderNum));
|
.orderByAsc("d", SysDept::getOrderNum));
|
||||||
Set<Long> parentIds = deptCheckStrictly ? new HashSet<>(StreamUtils.toList(depts, SysDept::getParentId)) : Collections.emptySet();
|
Set<Long> parentIds = deptCheckStrictly ? new HashSet<>(StreamUtils.toList(depts, SysDept::getParentId)) : Collections.emptySet();
|
||||||
|
|||||||
@@ -108,4 +108,13 @@ public interface FlowConstant {
|
|||||||
*/
|
*/
|
||||||
String VAR_IGNORE_COOPERATE = "ignoreCooperate";
|
String VAR_IGNORE_COOPERATE = "ignoreCooperate";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 未删除(正常数据)
|
||||||
|
*/
|
||||||
|
Integer NOT_DELETED = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 已删除(逻辑删除)
|
||||||
|
*/
|
||||||
|
Integer DELETED = 1;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package org.dromara.workflow.mapper;
|
package org.dromara.workflow.mapper;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.yulichang.toolkit.JoinWrappers;
|
import com.github.yulichang.toolkit.JoinWrappers;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
@@ -14,6 +15,9 @@ import org.dromara.workflow.domain.bo.FlowTaskBo;
|
|||||||
import org.dromara.workflow.domain.vo.FlowHisTaskVo;
|
import org.dromara.workflow.domain.vo.FlowHisTaskVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.dromara.workflow.common.constant.FlowConstant.NOT_DELETED;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 任务信息Mapper接口
|
* 任务信息Mapper接口
|
||||||
@@ -23,10 +27,8 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public interface FlwHisTaskMapper extends BaseMapperPlus<FlowHisTask, FlowHisTaskVo> {
|
public interface FlwHisTaskMapper extends BaseMapperPlus<FlowHisTask, FlowHisTaskVo> {
|
||||||
|
|
||||||
default Page<FlowHisTaskVo> getListFinishTask(Page<FlowHisTaskVo> page,
|
default Page<FlowHisTaskVo> getListFinishTask(Page<FlowHisTaskVo> page, FlowTaskBo bo, List<String> categoryIds, String userId) {
|
||||||
FlowTaskBo bo,
|
Map<String, Object> params = bo.getParams();
|
||||||
List<String> categoryIds,
|
|
||||||
String userId) {
|
|
||||||
MPJLambdaWrapper<FlowHisTask> wrapper = JoinWrappers.lambda("a", FlowHisTask.class)
|
MPJLambdaWrapper<FlowHisTask> wrapper = JoinWrappers.lambda("a", FlowHisTask.class)
|
||||||
.selectAs(FlowHisTask::getId, FlowHisTaskVo::getId)
|
.selectAs(FlowHisTask::getId, FlowHisTaskVo::getId)
|
||||||
.selectAs(FlowHisTask::getNodeCode, FlowHisTaskVo::getNodeCode)
|
.selectAs(FlowHisTask::getNodeCode, FlowHisTaskVo::getNodeCode)
|
||||||
@@ -58,17 +60,18 @@ public interface FlwHisTaskMapper extends BaseMapperPlus<FlowHisTask, FlowHisTas
|
|||||||
.leftJoin(FlowInstance.class, "b", FlowInstance::getId, FlowHisTask::getInstanceId)
|
.leftJoin(FlowInstance.class, "b", FlowInstance::getId, FlowHisTask::getInstanceId)
|
||||||
.leftJoin(FlowDefinition.class, "c", FlowDefinition::getId, FlowHisTask::getDefinitionId)
|
.leftJoin(FlowDefinition.class, "c", FlowDefinition::getId, FlowHisTask::getDefinitionId)
|
||||||
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
||||||
.eq("a", FlowHisTask::getDelFlag, "0")
|
.eq("a", FlowHisTask::getDelFlag, NOT_DELETED)
|
||||||
.eq("b", FlowInstance::getDelFlag, "0")
|
.eq("b", FlowInstance::getDelFlag, NOT_DELETED)
|
||||||
.eq("c", FlowDefinition::getDelFlag, "0")
|
.eq("c", FlowDefinition::getDelFlag, NOT_DELETED)
|
||||||
.in("a", FlowHisTask::getNodeType, List.of("1", "3", "4"))
|
.in("a", FlowHisTask::getNodeType, List.of("1", "3", "4"))
|
||||||
.like(hasText(bo.getNodeName()), "a", FlowHisTask::getNodeName, bo.getNodeName())
|
.like(StringUtils.isNotBlank(bo.getNodeName()), "a", FlowHisTask::getNodeName, bo.getNodeName())
|
||||||
.like(hasText(bo.getFlowName()), "c", FlowDefinition::getFlowName, bo.getFlowName())
|
.like(StringUtils.isNotBlank(bo.getFlowName()), "c", FlowDefinition::getFlowName, bo.getFlowName())
|
||||||
.like(hasText(bo.getFlowCode()), "c", FlowDefinition::getFlowCode, bo.getFlowCode())
|
.like(StringUtils.isNotBlank(bo.getFlowCode()), "c", FlowDefinition::getFlowCode, bo.getFlowCode())
|
||||||
.like(hasText(bo.getFlowStatus()), "b", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
.like(StringUtils.isNotBlank(bo.getFlowStatus()), "b", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
||||||
.in(hasItems(bo.getCreateByIds()), "b", FlowInstance::getCreateBy, bo.getCreateByIds())
|
.in(CollUtil.isNotEmpty(bo.getCreateByIds()), "b", FlowInstance::getCreateBy, bo.getCreateByIds())
|
||||||
.in(hasItems(categoryIds), "c", FlowDefinition::getCategory, categoryIds)
|
.in(CollUtil.isNotEmpty(categoryIds), "c", FlowDefinition::getCategory, categoryIds)
|
||||||
.between(hasBetween(bo), "a", FlowHisTask::getCreateTime, bo.getParams().get("beginTime"), bo.getParams().get("endTime"))
|
.between(params.get("beginTime") != null && params.get("endTime") != null,
|
||||||
|
"a", FlowHisTask::getCreateTime, params.get("beginTime"), params.get("endTime"))
|
||||||
.eq(StringUtils.isNotBlank(userId), "a", FlowHisTask::getNodeType, NodeType.BETWEEN.getKey())
|
.eq(StringUtils.isNotBlank(userId), "a", FlowHisTask::getNodeType, NodeType.BETWEEN.getKey())
|
||||||
.eq(StringUtils.isNotBlank(userId), "a", FlowHisTask::getApprover, userId)
|
.eq(StringUtils.isNotBlank(userId), "a", FlowHisTask::getApprover, userId)
|
||||||
.orderByDesc("a", FlowHisTask::getCreateTime)
|
.orderByDesc("a", FlowHisTask::getCreateTime)
|
||||||
@@ -76,16 +79,4 @@ public interface FlwHisTaskMapper extends BaseMapperPlus<FlowHisTask, FlowHisTas
|
|||||||
return wrapper.page(page, FlowHisTaskVo.class);
|
return wrapper.page(page, FlowHisTaskVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean hasText(String value) {
|
|
||||||
return StringUtils.isNotBlank(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasItems(List<?> values) {
|
|
||||||
return values != null && !values.isEmpty();
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasBetween(FlowTaskBo bo) {
|
|
||||||
return bo != null && bo.getParams() != null && bo.getParams().get("beginTime") != null && bo.getParams().get("endTime") != null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package org.dromara.workflow.mapper;
|
package org.dromara.workflow.mapper;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.yulichang.toolkit.JoinWrappers;
|
import com.github.yulichang.toolkit.JoinWrappers;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
@@ -13,6 +14,9 @@ import org.dromara.workflow.domain.bo.FlowTaskBo;
|
|||||||
import org.dromara.workflow.domain.vo.FlowTaskVo;
|
import org.dromara.workflow.domain.vo.FlowTaskVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.dromara.workflow.common.constant.FlowConstant.NOT_DELETED;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 任务信息Mapper接口
|
* 任务信息Mapper接口
|
||||||
@@ -22,10 +26,8 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public interface FlwTaskMapper extends BaseMapperPlus<FlowTask, FlowTaskVo> {
|
public interface FlwTaskMapper extends BaseMapperPlus<FlowTask, FlowTaskVo> {
|
||||||
|
|
||||||
default Page<FlowTaskVo> getListRunTask(Page<FlowTaskVo> page,
|
default Page<FlowTaskVo> getListRunTask(Page<FlowTaskVo> page, FlowTaskBo bo, List<String> categoryIds, String userId) {
|
||||||
FlowTaskBo bo,
|
Map<String, Object> params = bo.getParams();
|
||||||
List<String> categoryIds,
|
|
||||||
String userId) {
|
|
||||||
MPJLambdaWrapper<FlowTask> wrapper = JoinWrappers.lambda("t", FlowTask.class)
|
MPJLambdaWrapper<FlowTask> wrapper = JoinWrappers.lambda("t", FlowTask.class)
|
||||||
.distinct()
|
.distinct()
|
||||||
.selectAs(FlowTask::getId, FlowTaskVo::getId)
|
.selectAs(FlowTask::getId, FlowTaskVo::getId)
|
||||||
@@ -54,16 +56,17 @@ public interface FlwTaskMapper extends BaseMapperPlus<FlowTask, FlowTaskVo> {
|
|||||||
.leftJoin(FlowInstance.class, "i", FlowInstance::getId, FlowTask::getInstanceId)
|
.leftJoin(FlowInstance.class, "i", FlowInstance::getId, FlowTask::getInstanceId)
|
||||||
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
||||||
.eq("t", FlowTask::getNodeType, NodeType.BETWEEN.getKey())
|
.eq("t", FlowTask::getNodeType, NodeType.BETWEEN.getKey())
|
||||||
.eq("t", FlowTask::getDelFlag, "0")
|
.eq("t", FlowTask::getDelFlag, NOT_DELETED)
|
||||||
.eq("uu", FlowUser::getDelFlag, "0")
|
.eq("uu", FlowUser::getDelFlag, NOT_DELETED)
|
||||||
.in("uu", FlowUser::getType, List.of("1", "2", "3"))
|
.in("uu", FlowUser::getType, List.of("1", "2", "3"))
|
||||||
.like(hasText(bo.getNodeName()), "t", FlowTask::getNodeName, bo.getNodeName())
|
.like(StringUtils.isNotBlank(bo.getNodeName()), "t", FlowTask::getNodeName, bo.getNodeName())
|
||||||
.like(hasText(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
.like(StringUtils.isNotBlank(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
||||||
.like(hasText(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
.like(StringUtils.isNotBlank(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
||||||
.like(hasText(bo.getFlowStatus()), "i", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
.like(StringUtils.isNotBlank(bo.getFlowStatus()), "i", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
||||||
.in(hasItems(bo.getCreateByIds()), "i", FlowInstance::getCreateBy, bo.getCreateByIds())
|
.in(CollUtil.isNotEmpty(bo.getCreateByIds()), "i", FlowInstance::getCreateBy, bo.getCreateByIds())
|
||||||
.in(hasItems(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
.in(CollUtil.isNotEmpty(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
||||||
.between(hasBetween(bo), "t", FlowTask::getCreateTime, bo.getParams().get("beginTime"), bo.getParams().get("endTime"))
|
.between(params.get("beginTime") != null && params.get("endTime") != null,
|
||||||
|
"t", FlowTask::getCreateTime, params.get("beginTime"), params.get("endTime"))
|
||||||
.eq(StringUtils.isNotBlank(userId), "uu", FlowUser::getProcessedBy, userId)
|
.eq(StringUtils.isNotBlank(userId), "uu", FlowUser::getProcessedBy, userId)
|
||||||
.eq(StringUtils.isNotBlank(userId), "i", FlowInstance::getFlowStatus, BusinessStatusEnum.WAITING.getStatus())
|
.eq(StringUtils.isNotBlank(userId), "i", FlowInstance::getFlowStatus, BusinessStatusEnum.WAITING.getStatus())
|
||||||
.orderByDesc("t", FlowTask::getCreateTime)
|
.orderByDesc("t", FlowTask::getCreateTime)
|
||||||
@@ -71,10 +74,8 @@ public interface FlwTaskMapper extends BaseMapperPlus<FlowTask, FlowTaskVo> {
|
|||||||
return wrapper.page(page, FlowTaskVo.class);
|
return wrapper.page(page, FlowTaskVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
default Page<FlowTaskVo> getTaskCopyByPage(Page<FlowTaskVo> page,
|
default Page<FlowTaskVo> getTaskCopyByPage(Page<FlowTaskVo> page, FlowTaskBo bo, List<String> categoryIds, String userId) {
|
||||||
FlowTaskBo bo,
|
Map<String, Object> params = bo.getParams();
|
||||||
List<String> categoryIds,
|
|
||||||
String userId) {
|
|
||||||
MPJLambdaWrapper<FlowUser> wrapper = JoinWrappers.lambda("a", FlowUser.class)
|
MPJLambdaWrapper<FlowUser> wrapper = JoinWrappers.lambda("a", FlowUser.class)
|
||||||
.selectAs("b", FlowHisTask::getId, FlowTaskVo::getId)
|
.selectAs("b", FlowHisTask::getId, FlowTaskVo::getId)
|
||||||
.selectAs("b", FlowHisTask::getUpdateTime, FlowTaskVo::getUpdateTime)
|
.selectAs("b", FlowHisTask::getUpdateTime, FlowTaskVo::getUpdateTime)
|
||||||
@@ -98,32 +99,21 @@ public interface FlwTaskMapper extends BaseMapperPlus<FlowTask, FlowTaskVo> {
|
|||||||
.leftJoin(FlowDefinition.class, "d", FlowDefinition::getId, FlowInstance::getDefinitionId)
|
.leftJoin(FlowDefinition.class, "d", FlowDefinition::getId, FlowInstance::getDefinitionId)
|
||||||
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
||||||
.eq("a", FlowUser::getType, "4")
|
.eq("a", FlowUser::getType, "4")
|
||||||
.eq("a", FlowUser::getDelFlag, "0")
|
.eq("a", FlowUser::getDelFlag, NOT_DELETED)
|
||||||
.eq("b", FlowHisTask::getDelFlag, "0")
|
.eq("b", FlowHisTask::getDelFlag, NOT_DELETED)
|
||||||
.eq("d", FlowDefinition::getDelFlag, "0")
|
.eq("d", FlowDefinition::getDelFlag, NOT_DELETED)
|
||||||
.like(hasText(bo.getNodeName()), "b", FlowHisTask::getNodeName, bo.getNodeName())
|
.like(StringUtils.isNotBlank(bo.getNodeName()), "b", FlowHisTask::getNodeName, bo.getNodeName())
|
||||||
.like(hasText(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
.like(StringUtils.isNotBlank(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
||||||
.like(hasText(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
.like(StringUtils.isNotBlank(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
||||||
.like(hasText(bo.getFlowStatus()), "c", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
.like(StringUtils.isNotBlank(bo.getFlowStatus()), "c", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
||||||
.in(hasItems(bo.getCreateByIds()), "c", FlowInstance::getCreateBy, bo.getCreateByIds())
|
.in(CollUtil.isNotEmpty(bo.getCreateByIds()), "c", FlowInstance::getCreateBy, bo.getCreateByIds())
|
||||||
.in(hasItems(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
.in(CollUtil.isNotEmpty(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
||||||
.between(hasBetween(bo), "a", FlowUser::getCreateTime, bo.getParams().get("beginTime"), bo.getParams().get("endTime"))
|
.between(params.get("beginTime") != null && params.get("endTime") != null,
|
||||||
|
"a", FlowUser::getCreateTime, params.get("beginTime"), params.get("endTime"))
|
||||||
.eq(StringUtils.isNotBlank(userId), "a", FlowUser::getProcessedBy, userId)
|
.eq(StringUtils.isNotBlank(userId), "a", FlowUser::getProcessedBy, userId)
|
||||||
.orderByDesc("a", FlowUser::getCreateTime)
|
.orderByDesc("a", FlowUser::getCreateTime)
|
||||||
.orderByDesc("b", FlowHisTask::getUpdateTime);
|
.orderByDesc("b", FlowHisTask::getUpdateTime);
|
||||||
return wrapper.page(page, FlowTaskVo.class);
|
return wrapper.page(page, FlowTaskVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean hasText(String value) {
|
|
||||||
return StringUtils.isNotBlank(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasItems(List<?> values) {
|
|
||||||
return values != null && !values.isEmpty();
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasBetween(FlowTaskBo bo) {
|
|
||||||
return bo != null && bo.getParams() != null && bo.getParams().get("beginTime") != null && bo.getParams().get("endTime") != null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package org.dromara.workflow.mapper;
|
package org.dromara.workflow.mapper;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.yulichang.toolkit.JoinWrappers;
|
import com.github.yulichang.toolkit.JoinWrappers;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
@@ -13,6 +14,9 @@ import org.dromara.workflow.domain.bo.FlowTaskBo;
|
|||||||
import org.dromara.workflow.domain.vo.FlowTaskVo;
|
import org.dromara.workflow.domain.vo.FlowTaskVo;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import static org.dromara.workflow.common.constant.FlowConstant.NOT_DELETED;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 任务信息Mapper接口
|
* 任务信息Mapper接口
|
||||||
@@ -22,10 +26,8 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public interface FlwUserMapper extends BaseMapperPlus<FlowUser, FlowUser> {
|
public interface FlwUserMapper extends BaseMapperPlus<FlowUser, FlowUser> {
|
||||||
|
|
||||||
default Page<FlowTaskVo> getListRunTask(Page<FlowTaskVo> page,
|
default Page<FlowTaskVo> getListRunTask(Page<FlowTaskVo> page, FlowTaskBo bo, List<String> categoryIds, String userId) {
|
||||||
FlowTaskBo bo,
|
Map<String, Object> params = bo.getParams();
|
||||||
List<String> categoryIds,
|
|
||||||
String userId) {
|
|
||||||
MPJLambdaWrapper<FlowTask> wrapper = JoinWrappers.lambda("t", FlowTask.class)
|
MPJLambdaWrapper<FlowTask> wrapper = JoinWrappers.lambda("t", FlowTask.class)
|
||||||
.distinct()
|
.distinct()
|
||||||
.selectAs(FlowTask::getId, FlowTaskVo::getId)
|
.selectAs(FlowTask::getId, FlowTaskVo::getId)
|
||||||
@@ -54,16 +56,17 @@ public interface FlwUserMapper extends BaseMapperPlus<FlowUser, FlowUser> {
|
|||||||
.leftJoin(FlowInstance.class, "i", FlowInstance::getId, FlowTask::getInstanceId)
|
.leftJoin(FlowInstance.class, "i", FlowInstance::getId, FlowTask::getInstanceId)
|
||||||
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
||||||
.eq("t", FlowTask::getNodeType, NodeType.BETWEEN.getKey())
|
.eq("t", FlowTask::getNodeType, NodeType.BETWEEN.getKey())
|
||||||
.eq("t", FlowTask::getDelFlag, "0")
|
.eq("t", FlowTask::getDelFlag, NOT_DELETED)
|
||||||
.eq("uu", FlowUser::getDelFlag, "0")
|
.eq("uu", FlowUser::getDelFlag, NOT_DELETED)
|
||||||
.in("uu", FlowUser::getType, List.of("1", "2", "3"))
|
.in("uu", FlowUser::getType, List.of("1", "2", "3"))
|
||||||
.like(hasText(bo.getNodeName()), "t", FlowTask::getNodeName, bo.getNodeName())
|
.like(StringUtils.isNotBlank(bo.getNodeName()), "t", FlowTask::getNodeName, bo.getNodeName())
|
||||||
.like(hasText(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
.like(StringUtils.isNotBlank(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
||||||
.like(hasText(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
.like(StringUtils.isNotBlank(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
||||||
.like(hasText(bo.getFlowStatus()), "i", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
.like(StringUtils.isNotBlank(bo.getFlowStatus()), "i", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
||||||
.in(hasItems(bo.getCreateByIds()), "i", FlowInstance::getCreateBy, bo.getCreateByIds())
|
.in(CollUtil.isNotEmpty(bo.getCreateByIds()), "i", FlowInstance::getCreateBy, bo.getCreateByIds())
|
||||||
.in(hasItems(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
.in(CollUtil.isNotEmpty(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
||||||
.between(hasBetween(bo), "t", FlowTask::getCreateTime, bo.getParams().get("beginTime"), bo.getParams().get("endTime"))
|
.between(params.get("beginTime") != null && params.get("endTime") != null,
|
||||||
|
"t", FlowTask::getCreateTime, params.get("beginTime"), params.get("endTime"))
|
||||||
.eq(StringUtils.isNotBlank(userId), "uu", FlowUser::getProcessedBy, userId)
|
.eq(StringUtils.isNotBlank(userId), "uu", FlowUser::getProcessedBy, userId)
|
||||||
.eq(StringUtils.isNotBlank(userId), "i", FlowInstance::getFlowStatus, BusinessStatusEnum.WAITING.getStatus())
|
.eq(StringUtils.isNotBlank(userId), "i", FlowInstance::getFlowStatus, BusinessStatusEnum.WAITING.getStatus())
|
||||||
.orderByDesc("t", FlowTask::getCreateTime)
|
.orderByDesc("t", FlowTask::getCreateTime)
|
||||||
@@ -71,10 +74,8 @@ public interface FlwUserMapper extends BaseMapperPlus<FlowUser, FlowUser> {
|
|||||||
return wrapper.page(page, FlowTaskVo.class);
|
return wrapper.page(page, FlowTaskVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
default Page<FlowTaskVo> getTaskCopyByPage(Page<FlowTaskVo> page,
|
default Page<FlowTaskVo> getTaskCopyByPage(Page<FlowTaskVo> page, FlowTaskBo bo, List<String> categoryIds, String userId) {
|
||||||
FlowTaskBo bo,
|
Map<String, Object> params = bo.getParams();
|
||||||
List<String> categoryIds,
|
|
||||||
String userId) {
|
|
||||||
MPJLambdaWrapper<FlowUser> wrapper = JoinWrappers.lambda("a", FlowUser.class)
|
MPJLambdaWrapper<FlowUser> wrapper = JoinWrappers.lambda("a", FlowUser.class)
|
||||||
.selectAs("b", FlowHisTask::getId, FlowTaskVo::getId)
|
.selectAs("b", FlowHisTask::getId, FlowTaskVo::getId)
|
||||||
.selectAs("b", FlowHisTask::getUpdateTime, FlowTaskVo::getUpdateTime)
|
.selectAs("b", FlowHisTask::getUpdateTime, FlowTaskVo::getUpdateTime)
|
||||||
@@ -98,32 +99,21 @@ public interface FlwUserMapper extends BaseMapperPlus<FlowUser, FlowUser> {
|
|||||||
.leftJoin(FlowDefinition.class, "d", FlowDefinition::getId, FlowInstance::getDefinitionId)
|
.leftJoin(FlowDefinition.class, "d", FlowDefinition::getId, FlowInstance::getDefinitionId)
|
||||||
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
.leftJoin(FlowInstanceBizExt.class, "biz", FlowInstanceBizExt::getInstanceId, FlowInstance::getId)
|
||||||
.eq("a", FlowUser::getType, "4")
|
.eq("a", FlowUser::getType, "4")
|
||||||
.eq("a", FlowUser::getDelFlag, "0")
|
.eq("a", FlowUser::getDelFlag, NOT_DELETED)
|
||||||
.eq("b", FlowHisTask::getDelFlag, "0")
|
.eq("b", FlowHisTask::getDelFlag, NOT_DELETED)
|
||||||
.eq("d", FlowDefinition::getDelFlag, "0")
|
.eq("d", FlowDefinition::getDelFlag, NOT_DELETED)
|
||||||
.like(hasText(bo.getNodeName()), "b", FlowHisTask::getNodeName, bo.getNodeName())
|
.like(StringUtils.isNotBlank(bo.getNodeName()), "b", FlowHisTask::getNodeName, bo.getNodeName())
|
||||||
.like(hasText(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
.like(StringUtils.isNotBlank(bo.getFlowName()), "d", FlowDefinition::getFlowName, bo.getFlowName())
|
||||||
.like(hasText(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
.like(StringUtils.isNotBlank(bo.getFlowCode()), "d", FlowDefinition::getFlowCode, bo.getFlowCode())
|
||||||
.like(hasText(bo.getFlowStatus()), "c", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
.like(StringUtils.isNotBlank(bo.getFlowStatus()), "c", FlowInstance::getFlowStatus, bo.getFlowStatus())
|
||||||
.in(hasItems(bo.getCreateByIds()), "c", FlowInstance::getCreateBy, bo.getCreateByIds())
|
.in(CollUtil.isNotEmpty(bo.getCreateByIds()), "c", FlowInstance::getCreateBy, bo.getCreateByIds())
|
||||||
.in(hasItems(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
.in(CollUtil.isNotEmpty(categoryIds), "d", FlowDefinition::getCategory, categoryIds)
|
||||||
.between(hasBetween(bo), "a", FlowUser::getCreateTime, bo.getParams().get("beginTime"), bo.getParams().get("endTime"))
|
.between(params.get("beginTime") != null && params.get("endTime") != null,
|
||||||
|
"a", FlowUser::getCreateTime, params.get("beginTime"), params.get("endTime"))
|
||||||
.eq(StringUtils.isNotBlank(userId), "a", FlowUser::getProcessedBy, userId)
|
.eq(StringUtils.isNotBlank(userId), "a", FlowUser::getProcessedBy, userId)
|
||||||
.orderByDesc("a", FlowUser::getCreateTime)
|
.orderByDesc("a", FlowUser::getCreateTime)
|
||||||
.orderByDesc("b", FlowHisTask::getUpdateTime);
|
.orderByDesc("b", FlowHisTask::getUpdateTime);
|
||||||
return wrapper.page(page, FlowTaskVo.class);
|
return wrapper.page(page, FlowTaskVo.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean hasText(String value) {
|
|
||||||
return StringUtils.isNotBlank(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasItems(List<?> values) {
|
|
||||||
return values != null && !values.isEmpty();
|
|
||||||
}
|
|
||||||
|
|
||||||
default boolean hasBetween(FlowTaskBo bo) {
|
|
||||||
return bo != null && bo.getParams() != null && bo.getParams().get("beginTime") != null && bo.getParams().get("endTime") != null;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user