package com.ycl.common.enums.business;
|
|
import cn.hutool.core.util.ObjectUtil;
|
import lombok.AllArgsConstructor;
|
import lombok.Getter;
|
|
@Getter
|
@AllArgsConstructor
|
public enum ProjectCategoryEnum {
|
|
RESERVE("1", "pendding", "储备项目","reserve","储备规划阶段"),
|
PREVIOUS("2", "pendding","前期项目","previous","项目前期阶段"),
|
IMPLEMENT("3", "working,stop","实施项目","implement","实施阶段"),
|
FINISH("4", "finish","竣工项目","finish","竣工投用阶段"),
|
EXCEPTION("5", "","异常项目","exception","");
|
|
|
private final String type;
|
private final String status;
|
private final String name;
|
private final String code;
|
private final String desc;
|
|
//判断传入数据是否存在四种项目推进状态
|
public static boolean isValidType(String type) {
|
for (ProjectCategoryEnum status : ProjectCategoryEnum.values()) {
|
if (status.getDesc().equals(type) && ObjectUtil.notEqual(type,ProjectCategoryEnum.EXCEPTION.getName())) {
|
return true;
|
}
|
}
|
return false;
|
}
|
|
/**
|
* 获取项目阶段
|
* @param projectStatus
|
* @param hasProcess 是否启动流程
|
* @return
|
*/
|
public static String getPhaseByProjectStatus(String projectStatus, boolean hasProcess) {
|
for (ProjectCategoryEnum projectCategoryEnum : ProjectCategoryEnum.values()) {
|
if (hasProcess && PREVIOUS.status.contains(projectStatus)) {
|
return PREVIOUS.desc;
|
}
|
if (projectCategoryEnum.status.contains(projectStatus)) {
|
return projectCategoryEnum.desc;
|
}
|
}
|
return null;
|
}
|
}
|