package com.ruoyi.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; @Getter @AllArgsConstructor public enum TypeEnums implements BaseEnum { PUBLIC_OUT(1L, "公出管理"), LEAVE(2L, "请假管理"), BUSINESS_TRIP(3L, "出差管理"), REIMBURSEMENT(4L, "报销管理"), PURCHASE_APPROVAL(5L, "采购审批"), QUOTATION_APPROVAL(6L, "报价审批"), SHIPPING_APPROVAL(7L, "发货审批"), DANGEROUS_OPERATION(8L, "危险作业审批"), OFFICE_SUPPLIES(9L, "办公用品审批"), REGULARIZATION_APPROVAL(10L, "转正审批"), TRANSFER_APPROVAL(11L, "调动审批"), RESIGNATION_APPROVAL(12L, "离职审批"), WORK_HANDOVER_APPROVAL(13L, "工作交接审批"), LEAVE_APPROVAL(14L, "请假审批"), OVERTIME_APPROVAL(15L, "加班审批"), TRAVEL_REIMBURSEMENT_APPROVAL(16L, "出差报销审批"), EXPENSE_APPROVAL(17L, "费用审批"), ENTERPRISE_NEWS_APPROVAL(18L, "企业新闻审批"); private final Long value; private final String label; @Override public Long getCode() { return value; } @Override public String getValue() { return label; } /** * 根据值获取对应的枚举 * @param value 业务类型值 * @return 对应的枚举,未匹配返回null */ public static TypeEnums fromValue(Long value) { if (value == null) { return null; } for (TypeEnums type : values()) { if (type.getCode().equals(value)) { return type; } } return null; } /** * 根据值获取描述 * @param value 业务类型值 * @return 业务类型描述,未匹配返回"自定义审批" */ public static String getLabelByValue(Long value) { TypeEnums typeEnum = fromValue(value); return typeEnum != null ? typeEnum.getValue() : "自定义审批"; } }