R.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package com.example.resource.clue.convert.vo;
  2. import lombok.Data;
  3. import lombok.NoArgsConstructor;
  4. import java.io.Serializable;
  5. /**
  6. * 响应信息主体
  7. *
  8. * @author Lion Li
  9. */
  10. @Data
  11. @NoArgsConstructor
  12. public class R<T> implements Serializable {
  13. private static final long serialVersionUID = 1L;
  14. /**
  15. * 成功
  16. */
  17. public static final int SUCCESS = 200;
  18. /**
  19. * 失败
  20. */
  21. public static final int FAIL = 500;
  22. private int code;
  23. private String msg;
  24. private T data;
  25. public static <T> R<T> ok() {
  26. return restResult(null, SUCCESS, "操作成功");
  27. }
  28. public static <T> R<T> ok(T data) {
  29. return restResult(data, SUCCESS, "操作成功");
  30. }
  31. public static <T> R<T> ok(String msg) {
  32. return restResult(null, SUCCESS, msg);
  33. }
  34. public static <T> R<T> ok(String msg, T data) {
  35. return restResult(data, SUCCESS, msg);
  36. }
  37. public static <T> R<T> fail() {
  38. return restResult(null, FAIL, "操作失败");
  39. }
  40. public static <T> R<T> fail(String msg) {
  41. return restResult(null, FAIL, msg);
  42. }
  43. public static <T> R<T> fail(T data) {
  44. return restResult(data, FAIL, "操作失败");
  45. }
  46. public static <T> R<T> fail(String msg, T data) {
  47. return restResult(data, FAIL, msg);
  48. }
  49. public static <T> R<T> fail(int code, String msg) {
  50. return restResult(null, code, msg);
  51. }
  52. private static <T> R<T> restResult(T data, int code, String msg) {
  53. R<T> r = new R<>();
  54. r.setCode(code);
  55. r.setData(data);
  56. r.setMsg(msg);
  57. return r;
  58. }
  59. public Boolean isError() {
  60. return !isSuccess();
  61. }
  62. public Boolean isSuccess() {
  63. return R.SUCCESS == getCode();
  64. }
  65. }