diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java new file mode 100644 index 0000000..ccecaed --- /dev/null +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/TableTreeResp.java @@ -0,0 +1,39 @@ +package com.muyu.etl.domain.resp; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.muyu.etl.domain.BasicConfigInfo; +import com.muyu.etl.domain.TableInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * @ClassName TableTreeResp + * @Description 描述 + * @Author SaiSai.Liu + * @Date 2024/4/23 8:59 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class TableTreeResp { + @TableId(value = "id",type = IdType.AUTO) + private Long Id; + /** + * 父级信息 + */ + private TableInfo tableInfo; + /** + * 链接信息 + */ + private BasicConfigInfo basicConfigInfo; + /** + * 子级信息 + */ + private List Children; +} diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java index 4211256..67c3a08 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java @@ -8,6 +8,7 @@ import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; import com.muyu.common.security.annotation.RequiresPermissions; import com.muyu.etl.domain.BasicConfigInfo; +import com.muyu.etl.domain.resp.TableTreeResp; import com.muyu.etl.service.BasicConfigInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -113,4 +114,11 @@ public class BasicConfigInfoController extends BaseController public Result> getData(){ return getDataTable(basicConfigInfoService.getDataByEtl()); } + + @RequiresPermissions("etl:table:list") + @Log(title = "获取已成功链接的树级结构") + @GetMapping("/getTableTree") + public Result> getTableTree(){ + return Result.success(basicConfigInfoService.getTableTree()); + } } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java index 44b5a88..8aff536 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java @@ -1,8 +1,10 @@ package com.muyu.etl.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.etl.domain.BasicConfigInfo; +import com.muyu.etl.domain.resp.TableTreeResp; import javax.servlet.ServletException; import java.util.List; @@ -66,4 +68,6 @@ public interface BasicConfigInfoService extends IService boolean connectionTest(BasicConfigInfo basicConfigInfo) throws ServletException; List getDataByEtl(); + + List getTableTree(); } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java index 501f3e6..ad1df80 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java @@ -1,13 +1,12 @@ package com.muyu.etl.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.security.utils.SecurityUtils; import com.muyu.etl.domain.BasicConfigInfo; import com.muyu.etl.domain.Structure; import com.muyu.etl.domain.TableInfo; +import com.muyu.etl.domain.resp.TableTreeResp; import com.muyu.etl.mapper.BasicConfigInfoMapper; import com.muyu.etl.service.BasicConfigInfoService; import com.muyu.etl.service.StructureService; @@ -21,6 +20,7 @@ import javax.servlet.ServletException; import java.sql.*; import java.util.Date; import java.util.*; +import java.util.stream.Collectors; /** * Service业务层处理 @@ -219,16 +219,16 @@ public class BasicConfigInfoServiceImpl extends ServiceImpl list = this.list(); @@ -294,4 +298,32 @@ public class BasicConfigInfoServiceImpl extends ServiceImpl getTableTree() { + List tableTreeRespList = tableInfoService.selectTableInfoList(new TableInfo(){{setParentId(0L);}}).stream().map(tableInfo ->{ + BasicConfigInfo basicConfigInfo = this.selectBasicConfigInfoById(tableInfo.getBasicId()); + List tableInfoList = tableInfoService.selectTableInfoList(new TableInfo() {{ + setParentId(tableInfo.getId()); + }}); + return TableTreeResp.builder() + .tableInfo(tableInfo) + .basicConfigInfo(basicConfigInfo) + .Children(tableInfoList) + .build(); + }).collect(Collectors.toList()); + return tableTreeRespList; + } + //{ + // label: '一级 1', + // children: [{ + // label: '二级 1-1', + // data + // }] + // } } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/TableInfoMapper.xml b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/TableInfoMapper.xml index f8223ca..894931d 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/TableInfoMapper.xml +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/TableInfoMapper.xml @@ -20,7 +20,7 @@ - select id, parent_id, table_name, table_remark, data_num, center, remark, create_by, create_time, update_by, update_time from table_info + select id, parent_id, basic_id,table_name, table_remark, data_num, center, remark, create_by, create_time, update_by, update_time from table_info