BaseException.java 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. package com.ruoyi.common.exception.base;
  2. import com.ruoyi.common.utils.MessageUtils;
  3. import com.ruoyi.common.utils.StringUtils;
  4. import lombok.*;
  5. /**
  6. * 基础异常
  7. *
  8. * @author ruoyi
  9. */
  10. @Data
  11. @EqualsAndHashCode(callSuper = true)
  12. @NoArgsConstructor
  13. public class BaseException extends RuntimeException {
  14. private static final long serialVersionUID = 1L;
  15. /**
  16. * 所属模块
  17. */
  18. private String module;
  19. /**
  20. * 错误码
  21. */
  22. private String code;
  23. /**
  24. * 错误码对应的参数
  25. */
  26. private Object[] args;
  27. /**
  28. * 错误消息
  29. */
  30. private String defaultMessage;
  31. public BaseException(String module, String code, Object[] args, String defaultMessage) {
  32. this.module = module;
  33. this.code = code;
  34. this.args = args;
  35. this.defaultMessage = defaultMessage;
  36. }
  37. public BaseException(String module, String code, Object[] args) {
  38. this(module, code, args, null);
  39. }
  40. public BaseException(String module, String defaultMessage) {
  41. this(module, null, null, defaultMessage);
  42. }
  43. public BaseException(String code, Object[] args) {
  44. this(null, code, args, null);
  45. }
  46. public BaseException(String defaultMessage) {
  47. this(null, null, null, defaultMessage);
  48. }
  49. @Override
  50. public String getMessage() {
  51. String message = null;
  52. if (!StringUtils.isEmpty(code)) {
  53. message = MessageUtils.message(code, args);
  54. }
  55. if (message == null) {
  56. message = defaultMessage;
  57. }
  58. return message;
  59. }
  60. }