初始版本提交

This commit is contained in:
hzj
2025-02-08 10:16:40 +08:00
parent 78f68cefed
commit 37ec7c3019

View File

@@ -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<Object> result){
//如果返回错误,且为内部错误,则直接抛出异常
CommonResponseEnum commonResponseEnum = EnumUtils.getCommonResponseEnumByCode(result.getCode());
if (commonResponseEnum == CommonResponseEnum.DEVICE_RESPONSE_ENUM) {
return getEventEnumResponseEnumByMessage(result.getMessage());
}
return commonResponseEnum;
}
}