ResultData.java 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package com.fdkankan.fusion.common;
  2. import com.alibaba.fastjson.JSONObject;
  3. import lombok.AllArgsConstructor;
  4. import lombok.Data;
  5. import lombok.NoArgsConstructor;
  6. import java.io.Serializable;
  7. import java.util.Calendar;
  8. @Data
  9. @NoArgsConstructor
  10. @AllArgsConstructor
  11. public class ResultData<T> implements Serializable {
  12. /**
  13. * 状态码
  14. */
  15. private int code;
  16. /**
  17. * 响应信息
  18. */
  19. private String message;
  20. /**
  21. * 后端返回结果
  22. */
  23. private T data;
  24. /**
  25. * 后端返回结果
  26. */
  27. private Boolean success;
  28. /**
  29. * 响应时间戳
  30. */
  31. private long timestamp = Calendar.getInstance().getTimeInMillis();
  32. public static ResultData ok() {
  33. return ok(null);
  34. }
  35. public static ResultData ok(Object data) {
  36. return ok(ResultCode.SUCCESS.msg, data);
  37. }
  38. public static ResultData ok(String msg, Object data) {
  39. return base(ResultCode.SUCCESS.code, msg, data, true);
  40. }
  41. public static ResultData ok(int page, int pageSize, int total, Object data) {
  42. return ok(new PageInfo(page, pageSize, total, data));
  43. }
  44. public static ResultData error( String msg) {
  45. return error(ResultCode.ERROR.code, msg, null);
  46. }
  47. public static ResultData error(int code, String msg) {
  48. return error(code, msg, null);
  49. }
  50. public static ResultData error(int code, String msg, Object data) {
  51. return base(code, msg, data, false);
  52. }
  53. public static ResultData error(ResultCode errorCode, Object data) {
  54. return base(errorCode.code, errorCode.msg, data, false);
  55. }
  56. public static ResultData error(ResultCode errorCode) {
  57. return error(errorCode.code, errorCode.msg);
  58. }
  59. public static String errorString(ResultCode errorCode) {
  60. return JSONObject.toJSONString(error(errorCode.code, errorCode.msg));
  61. }
  62. private static ResultData base(int code, String msg, Object data, Boolean success) {
  63. ResultData rd = new ResultData();
  64. rd.setCode(code);
  65. rd.setMessage(msg);
  66. rd.setData(data);
  67. rd.setSuccess(success);
  68. return rd;
  69. }
  70. }