提交 5ee6121f authored 作者: hzh's avatar hzh

代码优化

上级 d31f456e
......@@ -13,7 +13,7 @@ public enum ProcessKey {
//出差审批
PROCESS_KEY_TRAVEL("process-travel", "出差审批");
private String key;
private String desc;
private final String key;
private final String desc;
}
package org.dromara.server.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 流程步骤类型
*
* @author wenhe
*/
@Getter
@AllArgsConstructor
public enum ProcessStepType {
/**
* 开始
*/
START,
START("START","开始"),
/**
* 其他
*/
OTHER,
OTHER("OTHER","其他"),
/**
* 审批
*/
APPROVE,
APPROVE("APPROVE","审批"),
/**
* 结束
*/
END;
END("END","结束"),;
private final String type;
private final String desc;
}
package org.dromara.server.domain;
import lombok.experimental.Accessors;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
......@@ -14,6 +15,7 @@ import java.io.Serial;
* @date 2024-12-11
*/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@TableName("process_config")
public class ProcessConfig extends TenantEntity {
......
......@@ -17,8 +17,9 @@ public interface IProcessConfigService extends IBaseService<ProcessConfigVo, Pro
* 创建默认审批流程配置
*
* @param processKey 流程key
* @param tenantId 租户id
* @return boolean
*/
boolean createDefaultProcessConfig(String processKey);
boolean createDefaultProcessConfig(String processKey, String tenantId);
}
package org.dromara.server.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.common.mybatis.service.AbstractBaseService;
import org.dromara.server.constant.ProcessKey;
import org.dromara.server.domain.ProcessConfig;
import org.dromara.server.domain.bo.ProcessConfigBo;
import org.dromara.server.domain.vo.Process;
import org.dromara.server.domain.vo.ProcessConfigVo;
import org.dromara.server.mapper.ProcessConfigMapper;
import org.dromara.server.service.IProcessConfigService;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
......@@ -43,8 +48,24 @@ public class ProcessConfigServiceImpl extends AbstractBaseService<ProcessConfigV
}
@Override
public boolean createDefaultProcessConfig(String processKey) {
//TODO 创建默认审批流程配置
return false;
public boolean createDefaultProcessConfig(String processKey, String tenantId) {
Arrays.stream(ProcessKey.values())
.filter(item -> StringUtils.equals(item.getKey(), processKey))
.findFirst()
.ifPresent(pk -> {
if (StringUtils.equals(pk.getKey(), ProcessKey.PROCESS_KEY_TRAVEL.getKey())) {
List<Process> processList = List.of(
new Process().setStepKey(System.currentTimeMillis()+"")
);
ProcessConfig pc = new ProcessConfig()
.setProcessKey(pk.getKey())
.setProcessName(pk.getDesc())
.setProcess(JSON.toJSONString(processList));
pc.setTenantId(tenantId);
baseMapper.insert(pc);
}
});
return true;
}
}
......@@ -83,7 +83,7 @@ public class ProcessProgressServiceImpl extends AbstractBaseService<ProcessProgr
//获取审批配置
List<Process> processList = JSON.parseArray(process, Process.class);
//获取审批步骤
List<Process> approveProcessList = StreamUtils.filter(processList, p -> StringUtils.equals(p.getStepType(), ProcessStepType.APPROVE.name()));
List<Process> approveProcessList = StreamUtils.filter(processList, p -> StringUtils.equals(p.getStepType(), ProcessStepType.APPROVE.getType()));
//获取审批进度
List<ProcessProgress> progressList = baseMapper.selectList(
new LambdaQueryWrapper<>(ProcessProgress.class)
......@@ -210,7 +210,7 @@ public class ProcessProgressServiceImpl extends AbstractBaseService<ProcessProgr
} else {
//获取审批配置
List<Process> processList = JSON.parseArray(process, Process.class);
List<Process> approveProcessList = StreamUtils.filter(processList, p -> StringUtils.equals(p.getStepType(), ProcessStepType.APPROVE.name()));
List<Process> approveProcessList = StreamUtils.filter(processList, p -> StringUtils.equals(p.getStepType(), ProcessStepType.APPROVE.getType()));
return approveProcessList.stream().flatMap(p -> p.getOperatorList().stream()).collect(Collectors.toList());
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论