001package run.iget.framework.common.exception; 002 003import lombok.Getter; 004import run.iget.framework.common.enums.BaseResultEnum; 005 006/** 007 * 代码千万行,注释第一行;注释不规范,迭代两行泪 008 * ---------------------------------------- 009 * 业务异常 010 * ---------------------------------------- 011 * author: 大周 012 * date: 2022/2/7 17:21 013 **/ 014@Getter 015public class BusinessException extends RuntimeException { 016 017 /** 018 * 异常返回枚举对象 019 */ 020 private BaseResultEnum resultEnum; 021 022 /** 023 * 带参构造方法 024 * @param msg 异常信息 025 */ 026 public BusinessException(String msg) { 027 this(BaseResultEnum.ERROR_PARAM.getCode(), msg); 028 } 029 030 /** 031 * 带参构造方法 032 * @param msg 异常信息 033 */ 034 public BusinessException(String code, String msg) { 035 this(BaseResultEnum.of(code, msg), null); 036 } 037 038 /** 039 * 带参构造方法 040 * @param resultEnum 041 */ 042 public BusinessException(BaseResultEnum resultEnum) { 043 this(resultEnum, null); 044 } 045 046 /** 047 * 带参构造方法 048 * @param resultEnum -- 异常返回对象 049 * @param cause -- 异常根因 050 */ 051 public BusinessException(BaseResultEnum resultEnum, Throwable cause) { 052 super(resultEnum.getDesc(), cause); 053 this.resultEnum = resultEnum; 054 } 055 056}