update 优化 SpEL表达式回显名称

dev
疯狂的狮子Li 5 months ago
parent b77152357f
commit 7141e855bb

@ -40,7 +40,7 @@ public enum TaskAssigneeEnum {
/**
* SPEL
*/
SPEL("SPEL表达式", "");
SPEL("SpEL表达式", "");
private final String desc;
private final String code;

@ -9,6 +9,7 @@ import org.dromara.workflow.domain.vo.FlowSpelVo;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* spelService
@ -18,8 +19,6 @@ import java.util.List;
*/
public interface IFlwSpelService {
RemoteTaskAssigneeVo selectSpelByTaskAssigneeList(RemoteTaskAssigneeBo taskQuery);
/**
* spel
*
@ -69,4 +68,21 @@ public interface IFlwSpelService {
* @return
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
/**
* spel
*
* @param taskQuery
* @return
*/
RemoteTaskAssigneeVo selectSpelByTaskAssigneeList(RemoteTaskAssigneeBo taskQuery);
/**
* SpEL
*
* @param viewSpels SpEL
* @return key SpEL value Map
*/
Map<String, String> selectRemarksBySpels(List<String> viewSpels);
}

@ -1,5 +1,6 @@
package org.dromara.workflow.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -7,6 +8,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.core.constant.SystemConstants;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StreamUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -21,6 +23,7 @@ import org.dromara.workflow.service.IFlwSpelService;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@ -38,26 +41,6 @@ public class FlwSpelServiceImpl implements IFlwSpelService {
private final FlwSpelMapper baseMapper;
/**
* spel
*/
@Override
public RemoteTaskAssigneeVo selectSpelByTaskAssigneeList(RemoteTaskAssigneeBo taskQuery) {
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
FlowSpelBo bo = new FlowSpelBo();
bo.setViewSpel(taskQuery.getHandlerCode());
bo.setRemark(taskQuery.getHandlerName());
bo.setStatus(SystemConstants.NORMAL);
Map<String, Object> params = bo.getParams();
params.put("beginTime", taskQuery.getBeginTime());
params.put("endTime", taskQuery.getEndTime());
TableDataInfo<FlowSpelVo> page = this.queryPageList(bo, pageQuery);
// 使用封装的字段映射方法进行转换
List<RemoteTaskAssigneeVo.TaskHandler> handlers = RemoteTaskAssigneeVo.convertToHandlerList(page.getRows(),
FlowSpelVo::getViewSpel, c -> "", FlowSpelVo::getRemark, null, FlowSpelVo::getCreateTime);
return new RemoteTaskAssigneeVo(page.getTotal(), handlers);
}
/**
* spel
*
@ -159,4 +142,46 @@ public class FlwSpelServiceImpl implements IFlwSpelService {
}
return baseMapper.deleteByIds(ids) > 0;
}
/**
* spel
*
* @param taskQuery
* @return
*/
@Override
public RemoteTaskAssigneeVo selectSpelByTaskAssigneeList(RemoteTaskAssigneeBo taskQuery) {
PageQuery pageQuery = new PageQuery(taskQuery.getPageSize(), taskQuery.getPageNum());
FlowSpelBo bo = new FlowSpelBo();
bo.setViewSpel(taskQuery.getHandlerCode());
bo.setRemark(taskQuery.getHandlerName());
bo.setStatus(SystemConstants.NORMAL);
Map<String, Object> params = bo.getParams();
params.put("beginTime", taskQuery.getBeginTime());
params.put("endTime", taskQuery.getEndTime());
TableDataInfo<FlowSpelVo> page = this.queryPageList(bo, pageQuery);
// 使用封装的字段映射方法进行转换
List<RemoteTaskAssigneeVo.TaskHandler> handlers = RemoteTaskAssigneeVo.convertToHandlerList(page.getRows(),
FlowSpelVo::getViewSpel, c -> "", FlowSpelVo::getRemark, null, FlowSpelVo::getCreateTime);
return new RemoteTaskAssigneeVo(page.getTotal(), handlers);
}
/**
* SpEL
*
* @param viewSpels SpEL
* @return key SpEL value Map
*/
@Override
public Map<String, String> selectRemarksBySpels(List<String> viewSpels) {
if (CollUtil.isEmpty(viewSpels)) {
return Collections.emptyMap();
}
List<FlowSpel> list = baseMapper.selectList(
new LambdaQueryWrapper<FlowSpel>()
.select(FlowSpel::getViewSpel, FlowSpel::getRemark)
);
return StreamUtils.toMap(list, FlowSpel::getViewSpel, FlowSpel::getRemark);
}
}

Loading…
Cancel
Save