Result.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. package com.zsElectric.openapi.common;
  2. import lombok.Data;
  3. import java.io.Serializable;
  4. /**
  5. * 统一响应结果
  6. *
  7. * @author Ray.Hao
  8. */
  9. @Data
  10. public class Result<T> implements Serializable {
  11. private static final long serialVersionUID = 1L;
  12. /**
  13. * 状态码
  14. */
  15. private Integer code;
  16. /**
  17. * 返回消息
  18. */
  19. private String message;
  20. /**
  21. * 返回数据
  22. */
  23. private T data;
  24. /**
  25. * 时间戳
  26. */
  27. private Long timestamp;
  28. public Result() {
  29. this.timestamp = System.currentTimeMillis();
  30. }
  31. public Result(Integer code, String message) {
  32. this();
  33. this.code = code;
  34. this.message = message;
  35. }
  36. public Result(Integer code, String message, T data) {
  37. this(code, message);
  38. this.data = data;
  39. }
  40. /**
  41. * 成功返回结果
  42. */
  43. public static <T> Result<T> success() {
  44. return new Result<>(200, "操作成功");
  45. }
  46. /**
  47. * 成功返回结果
  48. *
  49. * @param data 获取的数据
  50. */
  51. public static <T> Result<T> success(T data) {
  52. return new Result<>(200, "操作成功", data);
  53. }
  54. /**
  55. * 成功返回结果
  56. *
  57. * @param message 提示信息
  58. */
  59. public static <T> Result<T> success(String message) {
  60. return new Result<>(200, message);
  61. }
  62. /**
  63. * 成功返回结果
  64. *
  65. * @param message 提示信息
  66. * @param data 获取的数据
  67. */
  68. public static <T> Result<T> success(String message, T data) {
  69. return new Result<>(200, message, data);
  70. }
  71. /**
  72. * 失败返回结果
  73. *
  74. * @param message 提示信息
  75. */
  76. public static <T> Result<T> error(String message) {
  77. return new Result<>(500, message);
  78. }
  79. /**
  80. * 失败返回结果
  81. *
  82. * @param code 状态码
  83. * @param message 提示信息
  84. */
  85. public static <T> Result<T> error(Integer code, String message) {
  86. return new Result<>(code, message);
  87. }
  88. /**
  89. * 失败返回结果
  90. */
  91. public static <T> Result<T> error() {
  92. return new Result<>(500, "操作失败");
  93. }
  94. }