package jnpf.flowable.mapper; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import jnpf.base.mapper.SuperMapper; import jnpf.flowable.entity.LaunchUserEntity; import jnpf.flowable.model.util.FlowNature; import java.util.ArrayList; import java.util.List; /** * 类的描述 * * @author JNPF@YinMai Info. Co., Ltd * @version 5.0.x * @since 2024/4/18 9:44 */ public interface LaunchUserMapper extends SuperMapper { default LaunchUserEntity getInfoByTask(String taskId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(LaunchUserEntity::getTaskId, taskId); queryWrapper.lambda().eq(LaunchUserEntity::getType, FlowNature.TaskInitiation); return this.selectOne(queryWrapper); } default List getTaskList(String taskId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(LaunchUserEntity::getTaskId, taskId); queryWrapper.lambda().eq(LaunchUserEntity::getType, FlowNature.StepInitiation); return this.selectList(queryWrapper); } default void delete(String taskId) { delete(taskId, new ArrayList<>()); } default void delete(String taskId, List nodeCode) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(LaunchUserEntity::getTaskId, taskId); if (ObjectUtil.isNotEmpty(nodeCode)) { queryWrapper.lambda().in(LaunchUserEntity::getNodeCode, nodeCode); } List list = this.selectList(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { this.deleteByIds(list); } } default void deleteStepUser(String taskId) { List list = getTaskList(taskId); if (CollectionUtil.isNotEmpty(list)) { this.deleteByIds(list); } } }