From 37ec7c3019ff7d4d84b7371c7b88732d265107f1 Mon Sep 17 00:00:00 2001 From: hzj <826100833@qq.com> Date: Sat, 8 Feb 2025 10:16:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E7=89=88=E6=9C=AC=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/njcn/event/utils/EventEnumUtil.java | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 analysis/event/event-api/src/main/java/com/njcn/event/utils/EventEnumUtil.java diff --git a/analysis/event/event-api/src/main/java/com/njcn/event/utils/EventEnumUtil.java b/analysis/event/event-api/src/main/java/com/njcn/event/utils/EventEnumUtil.java new file mode 100644 index 0000000..f68a60a --- /dev/null +++ b/analysis/event/event-api/src/main/java/com/njcn/event/utils/EventEnumUtil.java @@ -0,0 +1,46 @@ +package com.njcn.event.utils; + +import cn.hutool.core.util.StrUtil; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; +import com.njcn.common.pojo.exception.BusinessException; +import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.EnumUtils; +import com.njcn.event.enums.EventResponseEnum; + +import javax.validation.constraints.NotNull; +import java.util.Objects; + +/** + * @author hongawen + * @version 1.0.0 + * @date 2021年12月20日 10:03 + */ +public class EventEnumUtil { + + /** + * 获取HarmonicResponseEnum实例 + */ + public static EventResponseEnum getEventEnumResponseEnumByMessage(@NotNull Object value) { + EventResponseEnum statResponseEnum; + try { + String message = value.toString(); + if(message.indexOf(StrUtil.C_COMMA)>0){ + value = message.substring(message.indexOf(StrUtil.C_COMMA)+1); + } + statResponseEnum = EnumUtils.valueOf(EventResponseEnum.class, value, EventResponseEnum.class.getMethod(BusinessException.GET_MESSAGE_METHOD)); + return Objects.isNull(statResponseEnum) ? EventResponseEnum.STAT_COMMON_ERROR : statResponseEnum; + } catch (NoSuchMethodException e) { + throw new BusinessException(CommonResponseEnum.INTERNAL_ERROR); + } + } + public static Enum getExceptionEnum(HttpResult result){ + //如果返回错误,且为内部错误,则直接抛出异常 + CommonResponseEnum commonResponseEnum = EnumUtils.getCommonResponseEnumByCode(result.getCode()); + if (commonResponseEnum == CommonResponseEnum.DEVICE_RESPONSE_ENUM) { + return getEventEnumResponseEnumByMessage(result.getMessage()); + } + return commonResponseEnum; + } + + +}