From c18f376e2a64b20c1bdc342241b45ab19de864df Mon Sep 17 00:00:00 2001 From: lwj <3529558005@qq.com> Date: Mon, 26 Aug 2024 20:30:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=91=E5=BD=A2=E7=BB=93?= =?UTF-8?q?=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/muyu/domain/TableInfo.java | 12 ++++++ .../com/muyu/domain/rep/TableInfoResp.java | 41 +++++++++++++++++++ .../etl/controller/TableInfoController.java | 23 +++++++++++ 3 files changed, 76 insertions(+) create mode 100644 cloud-etl-common/src/main/java/com/muyu/domain/rep/TableInfoResp.java diff --git a/cloud-etl-common/src/main/java/com/muyu/domain/TableInfo.java b/cloud-etl-common/src/main/java/com/muyu/domain/TableInfo.java index 04aa6f9..4cf3ef2 100644 --- a/cloud-etl-common/src/main/java/com/muyu/domain/TableInfo.java +++ b/cloud-etl-common/src/main/java/com/muyu/domain/TableInfo.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.web.domain.BaseEntity; import com.muyu.domain.rep.TableInfoRep; +import com.muyu.domain.rep.TableInfoResp; import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; @@ -64,4 +65,15 @@ public class TableInfo extends BaseEntity { .build(); } + public static TableInfoResp toTableInfoResp(TableInfo tableInfo) { + return TableInfoResp.builder() + .id(tableInfo.id) + .tableName(tableInfo.tableName) + .tableRemark(tableInfo.tableRemark) + .isCenter(tableInfo.center) + .dataNum(tableInfo.dataNum) + .build(); + } + + } diff --git a/cloud-etl-common/src/main/java/com/muyu/domain/rep/TableInfoResp.java b/cloud-etl-common/src/main/java/com/muyu/domain/rep/TableInfoResp.java new file mode 100644 index 0000000..380daae --- /dev/null +++ b/cloud-etl-common/src/main/java/com/muyu/domain/rep/TableInfoResp.java @@ -0,0 +1,41 @@ +package com.muyu.domain.rep; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class TableInfoResp { + + /** + * id + */ + private Long id; + + /** + * 表名称/数据库 + */ + private String tableName; + + /** + * 表备注 + */ + private String tableRemark; + + /** 数据量 */ + private Long dataNum; + + /** 是否核心 'Y'是 'N'不是 */ + private String isCenter; + + /** + * 子内容 + */ + private List children; +} diff --git a/cloud-etl-server/src/main/java/com/muyu/cloud/etl/controller/TableInfoController.java b/cloud-etl-server/src/main/java/com/muyu/cloud/etl/controller/TableInfoController.java index 6b5fe47..b049d80 100644 --- a/cloud-etl-server/src/main/java/com/muyu/cloud/etl/controller/TableInfoController.java +++ b/cloud-etl-server/src/main/java/com/muyu/cloud/etl/controller/TableInfoController.java @@ -1,11 +1,13 @@ package com.muyu.cloud.etl.controller; +import com.dtflys.forest.annotation.NotNull; import com.muyu.cloud.etl.service.StructureService; import com.muyu.cloud.etl.service.TableInfoService; import com.muyu.common.core.domain.Result; import com.muyu.domain.Structure; import com.muyu.domain.TableInfo; import com.muyu.domain.rep.TableInfoRep; +import com.muyu.domain.rep.TableInfoResp; import com.muyu.domain.rep.TableInfoTreeRep; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -44,4 +46,25 @@ public class TableInfoController { return Result.success(tableInfoTreeReps); } + + @GetMapping("/findTableInfoList") + public Result findByTableName() { + List list = tableInfoService.list(); + List respList = list.stream().filter(tableInfo -> tableInfo.getParentId()==0).map(tableInfo -> { + TableInfoResp tableInfoResp = TableInfo.toTableInfoResp(tableInfo); + tableInfoResp.setChildren(getChildren(tableInfo, list)); + return tableInfoResp; + }).toList(); + return Result.success(respList); + } + + + + @NotNull + private static List getChildren(TableInfo tableInfo, List list) { + return list.stream().filter(tableInfo1 -> tableInfo1.getParentId().equals(tableInfo.getId())).map( + tableInfo2 -> TableInfo.toTableInfoResp(tableInfo2) + ).toList(); + } + }