package com.ruoyi.common.enums;
|
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
import com.fasterxml.jackson.annotation.JsonValue;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
import lombok.Getter;
|
|
/**
|
* 企业新闻状态枚举类
|
*
|
* @author ruoyi
|
* @date 2026-05-20
|
*/
|
@Schema(description = "企业新闻状态枚举")
|
public enum EnterpriseNewsStatusEnum implements BaseEnum<String> {
|
|
/**
|
* 草稿
|
*/
|
@Schema(description = "草稿")
|
DRAFT("DRAFT", "草稿"),
|
|
/**
|
* 待审批
|
*/
|
@Schema(description = "待审批")
|
PENDING("PENDING", "待审批"),
|
|
/**
|
* 已发布
|
*/
|
@Schema(description = "已发布")
|
PUBLISHED("PUBLISHED", "已发布"),
|
|
/**
|
* 驳回
|
*/
|
@Schema(description = "驳回")
|
REJECTED("REJECTED", "驳回"),
|
|
/**
|
* 已下线
|
*/
|
@Schema(description = "已下线")
|
OFFLINE("OFFLINE", "已下线");
|
|
/**
|
* 状态码
|
*/
|
private final String code;
|
|
/**
|
* 状态描述
|
* -- GETTER --
|
* 获取状态描述
|
*
|
* @return 状态描述
|
|
*/
|
@Getter
|
private final String description;
|
|
EnterpriseNewsStatusEnum(String code, String description) {
|
this.code = code;
|
this.description = description;
|
}
|
|
/**
|
* 获取状态码
|
*
|
* @return 状态码
|
*/
|
@JsonValue
|
public String getCode() {
|
return code;
|
}
|
|
@Override
|
public String getValue() {
|
return "";
|
}
|
|
/**
|
* 根据状态码获取枚举
|
*
|
* @param code 状态码
|
* @return 枚举值
|
*/
|
@JsonCreator
|
public static EnterpriseNewsStatusEnum getByCode(String code) {
|
for (EnterpriseNewsStatusEnum status : values()) {
|
if (status.code.equals(code)) {
|
return status;
|
}
|
}
|
throw new IllegalArgumentException("Invalid enterprise news status code: " + code);
|
}
|
|
/**
|
* 判断是否为草稿状态
|
*
|
* @return 是否为草稿状态
|
*/
|
public boolean isDraft() {
|
return DRAFT.equals(this);
|
}
|
|
/**
|
* 判断是否为待审批状态
|
*
|
* @return 是否为待审批状态
|
*/
|
public boolean isPending() {
|
return PENDING.equals(this);
|
}
|
|
/**
|
* 判断是否为已发布状态
|
*
|
* @return 是否为已发布状态
|
*/
|
public boolean isPublished() {
|
return PUBLISHED.equals(this);
|
}
|
|
/**
|
* 判断是否为驳回状态
|
*
|
* @return 是否为驳回状态
|
*/
|
public boolean isRejected() {
|
return REJECTED.equals(this);
|
}
|
|
/**
|
* 判断是否为已下线状态
|
*
|
* @return 是否为已下线状态
|
*/
|
public boolean isOffline() {
|
return OFFLINE.equals(this);
|
}
|
}
|