From 961073ec96bfbb920f9afd952052c20b3791eb4d Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 15 二月 2022 10:45:04 +0800
Subject: [PATCH] update 优化 TreeBuildUtils 工具 使用反射自动获取顶级父id

---
 ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java |  107 +++++++++++++++++++++++++++--------------------------
 1 files changed, 54 insertions(+), 53 deletions(-)

diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java
index 847685b..48353e3 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java
@@ -1,85 +1,86 @@
 package com.ruoyi.common.core.page;
 
+import cn.hutool.http.HttpStatus;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
 import java.io.Serializable;
 import java.util.List;
 
 /**
  * 琛ㄦ牸鍒嗛〉鏁版嵁瀵硅薄
- * 
- * @author ruoyi
+ *
+ * @author Lion Li
  */
-public class TableDataInfo implements Serializable
-{
+
+@Data
+@NoArgsConstructor
+@ApiModel("鍒嗛〉鍝嶅簲瀵硅薄")
+public class TableDataInfo<T> implements Serializable {
     private static final long serialVersionUID = 1L;
 
-    /** 鎬昏褰曟暟 */
+    /**
+     * 鎬昏褰曟暟
+     */
+    @ApiModelProperty("鎬昏褰曟暟")
     private long total;
 
-    /** 鍒楄〃鏁版嵁 */
-    private List<?> rows;
+    /**
+     * 鍒楄〃鏁版嵁
+     */
+    @ApiModelProperty("鍒楄〃鏁版嵁")
+    private List<T> rows;
 
-    /** 娑堟伅鐘舵�佺爜 */
+    /**
+     * 娑堟伅鐘舵�佺爜
+     */
+    @ApiModelProperty("娑堟伅鐘舵�佺爜")
     private int code;
 
-    /** 娑堟伅鍐呭 */
+    /**
+     * 娑堟伅鍐呭
+     */
+    @ApiModelProperty("娑堟伅鍐呭")
     private String msg;
 
     /**
-     * 琛ㄦ牸鏁版嵁瀵硅薄
-     */
-    public TableDataInfo()
-    {
-    }
-
-    /**
      * 鍒嗛〉
-     * 
-     * @param list 鍒楄〃鏁版嵁
+     *
+     * @param list  鍒楄〃鏁版嵁
      * @param total 鎬昏褰曟暟
      */
-    public TableDataInfo(List<?> list, int total)
-    {
+    public TableDataInfo(List<T> list, long total) {
         this.rows = list;
         this.total = total;
     }
 
-    public long getTotal()
-    {
-        return total;
+    public static <T> TableDataInfo<T> build(IPage<T> page) {
+        TableDataInfo<T> rspData = new TableDataInfo<>();
+        rspData.setCode(HttpStatus.HTTP_OK);
+        rspData.setMsg("鏌ヨ鎴愬姛");
+        rspData.setRows(page.getRecords());
+        rspData.setTotal(page.getTotal());
+        return rspData;
     }
 
-    public void setTotal(long total)
-    {
-        this.total = total;
+    public static <T> TableDataInfo<T> build(List<T> list) {
+        TableDataInfo<T> rspData = new TableDataInfo<>();
+        rspData.setCode(HttpStatus.HTTP_OK);
+        rspData.setMsg("鏌ヨ鎴愬姛");
+        rspData.setRows(list);
+        rspData.setTotal(list.size());
+        return rspData;
     }
 
-    public List<?> getRows()
-    {
-        return rows;
+    public static <T> TableDataInfo<T> build() {
+        TableDataInfo<T> rspData = new TableDataInfo<>();
+        rspData.setCode(HttpStatus.HTTP_OK);
+        rspData.setMsg("鏌ヨ鎴愬姛");
+        return rspData;
     }
 
-    public void setRows(List<?> rows)
-    {
-        this.rows = rows;
-    }
-
-    public int getCode()
-    {
-        return code;
-    }
-
-    public void setCode(int code)
-    {
-        this.code = code;
-    }
-
-    public String getMsg()
-    {
-        return msg;
-    }
-
-    public void setMsg(String msg)
-    {
-        this.msg = msg;
-    }
 }

--
Gitblit v1.9.3