From 69e3afc7707d467b758858b52d3784947f7a502b Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 20 五月 2024 10:25:23 +0800 Subject: [PATCH] !538 ♥️发布 5.2.0-BETA 公测版本 Merge pull request !538 from 疯狂的狮子Li/dev --- ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/BusinessStatusEnum.java | 152 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 152 insertions(+), 0 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/BusinessStatusEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/BusinessStatusEnum.java new file mode 100644 index 0000000..6eb6ffe --- /dev/null +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/BusinessStatusEnum.java @@ -0,0 +1,152 @@ +package org.dromara.workflow.common.enums; + +import cn.hutool.core.util.StrUtil; +import lombok.AllArgsConstructor; +import lombok.Getter; +import org.dromara.common.core.exception.ServiceException; +import org.dromara.common.core.utils.StringUtils; + +import java.util.Arrays; + +/** + * 涓氬姟鐘舵�佹灇涓� + * + * @author may + */ +@Getter +@AllArgsConstructor +public enum BusinessStatusEnum { + /** + * 宸叉挙閿� + */ + CANCEL("cancel", "宸叉挙閿�"), + /** + * 鑽夌 + */ + DRAFT("draft", "鑽夌"), + /** + * 寰呭鏍� + */ + WAITING("waiting", "寰呭鏍�"), + /** + * 宸插畬鎴� + */ + FINISH("finish", "宸插畬鎴�"), + /** + * 宸蹭綔搴� + */ + INVALID("invalid", "宸蹭綔搴�"), + /** + * 宸查��鍥� + */ + BACK("back", "宸查��鍥�"), + /** + * 宸茬粓姝� + */ + TERMINATION("termination", "宸茬粓姝�"); + + /** + * 鐘舵�� + */ + private final String status; + + /** + * 鎻忚堪 + */ + private final String desc; + + /** + * 鑾峰彇涓氬姟鐘舵�� + * + * @param status 鐘舵�� + */ + public static String findByStatus(String status) { + if (StringUtils.isBlank(status)) { + return StrUtil.EMPTY; + } + return Arrays.stream(BusinessStatusEnum.values()) + .filter(statusEnum -> statusEnum.getStatus().equals(status)) + .findFirst() + .map(BusinessStatusEnum::getDesc) + .orElse(StrUtil.EMPTY); + } + + /** + * 鍚姩娴佺▼鏍¢獙 + * + * @param status 鐘舵�� + */ + public static void checkStartStatus(String status) { + if (WAITING.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡鎻愪氦杩囩敵璇�,姝e湪瀹℃壒涓紒"); + } else if (FINISH.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡瀹屾垚鐢宠锛�"); + } else if (INVALID.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡浣滃簾锛�"); + } else if (TERMINATION.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡缁堟锛�"); + } else if (StringUtils.isBlank(status)) { + throw new ServiceException("娴佺▼鐘舵�佷负绌猴紒"); + } + } + + /** + * 鎾ら攢娴佺▼鏍¢獙 + * + * @param status 鐘舵�� + */ + public static void checkCancelStatus(String status) { + if (CANCEL.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡鎾ら攢锛�"); + } else if (FINISH.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡瀹屾垚鐢宠锛�"); + } else if (INVALID.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡浣滃簾锛�"); + } else if (TERMINATION.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡缁堟锛�"); + } else if (BACK.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡閫�鍥烇紒"); + } else if (StringUtils.isBlank(status)) { + throw new ServiceException("娴佺▼鐘舵�佷负绌猴紒"); + } + } + + /** + * 椹冲洖娴佺▼鏍¢獙 + * + * @param status 鐘舵�� + */ + public static void checkBackStatus(String status) { + if (BACK.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡閫�鍥烇紒"); + } else if (FINISH.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡瀹屾垚鐢宠锛�"); + } else if (INVALID.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡浣滃簾锛�"); + } else if (TERMINATION.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡缁堟锛�"); + } else if (CANCEL.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡鎾ら攢锛�"); + } else if (StringUtils.isBlank(status)) { + throw new ServiceException("娴佺▼鐘舵�佷负绌猴紒"); + } + } + + /** + * 浣滃簾,缁堟娴佺▼鏍¢獙 + * + * @param status 鐘舵�� + */ + public static void checkInvalidStatus(String status) { + if (FINISH.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡瀹屾垚鐢宠锛�"); + } else if (INVALID.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡浣滃簾锛�"); + } else if (TERMINATION.getStatus().equals(status)) { + throw new ServiceException("璇ュ崟鎹凡缁堟锛�"); + } else if (StringUtils.isBlank(status)) { + throw new ServiceException("娴佺▼鐘舵�佷负绌猴紒"); + } + } +} + -- Gitblit v1.9.3