diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartGroupMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartGroupMapper.xml
index 111ae9cab0..dfe3e343ed 100644
--- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartGroupMapper.xml
+++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartGroupMapper.xml
@@ -37,6 +37,12 @@
and chart_group.create_time = #{createTime,jdbcType=BIGINT}
+
+ and id in
+
+ #{item}
+
+
order by ${sort}
diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml
index 1728fd92d4..66f0e6cb9b 100644
--- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml
+++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtChartViewMapper.xml
@@ -39,6 +39,9 @@
and scene_id = #{sceneId,jdbcType=VARCHAR}
+
+ and name like CONCAT('%', #{name},'%')
+
order by ${sort}
diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetGroupMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetGroupMapper.xml
index 5a881f4bf2..88ef56c5d3 100644
--- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetGroupMapper.xml
+++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetGroupMapper.xml
@@ -37,6 +37,12 @@
and dataset_group.create_time = #{createTime,jdbcType=BIGINT}
+
+ and id in
+
+ #{item}
+
+
order by ${sort}
diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetTableMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetTableMapper.xml
index 77f6be94d5..be315eb38d 100644
--- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetTableMapper.xml
+++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtDataSetTableMapper.xml
@@ -45,6 +45,9 @@
and scene_id = #{sceneId,jdbcType=VARCHAR}
+
+ and name like CONCAT('%', #{name},'%')
+
and mode = #{mode,jdbcType=INTEGER}
diff --git a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java
index d84402a9a6..ad43882cc3 100644
--- a/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java
+++ b/backend/src/main/java/io/dataease/controller/chart/ChartViewController.java
@@ -4,7 +4,9 @@ import io.dataease.base.domain.ChartViewWithBLOBs;
import io.dataease.commons.utils.AuthUtils;
import io.dataease.controller.request.chart.ChartExtRequest;
import io.dataease.controller.request.chart.ChartViewRequest;
+import io.dataease.controller.request.dataset.DataSetTableRequest;
import io.dataease.dto.chart.ChartViewDTO;
+import io.dataease.dto.dataset.DataSetTableDTO;
import io.dataease.service.chart.ChartViewService;
import org.springframework.web.bind.annotation.*;
@@ -63,7 +65,7 @@ public class ChartViewController {
}
@GetMapping("searchAdviceSceneId/{panelId}")
- public String searchAdviceSceneId(@PathVariable String panelId){
+ public String searchAdviceSceneId(@PathVariable String panelId) {
return chartViewService.searchAdviceSceneId(panelId);
}
@@ -71,10 +73,16 @@ public class ChartViewController {
public ChartViewDTO getOneWithPermission(@PathVariable String id, @RequestBody ChartExtRequest requestList) throws Exception {
//如果能获取用户 则添加对应的权限
ChartViewDTO dto = chartViewService.getData(id, requestList);
- if(dto!=null && AuthUtils.getUser()!=null){
- ChartViewDTO permissionDto = chartViewService.getOneWithPermission(dto.getId());
+ if (dto != null && AuthUtils.getUser() != null) {
+ ChartViewDTO permissionDto = chartViewService.getOneWithPermission(dto.getId());
dto.setPrivileges(permissionDto.getPrivileges());
}
return dto;
}
+
+
+ @PostMapping("search")
+ public List search(@RequestBody ChartViewRequest chartViewRequest) {
+ return chartViewService.search(chartViewRequest);
+ }
}
diff --git a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java
index 37d921e8d4..2ab3bd8075 100644
--- a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java
+++ b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableController.java
@@ -108,4 +108,9 @@ public class DataSetTableController {
public Boolean checkDorisTableIsExists(@PathVariable String id) throws Exception {
return dataSetTableService.checkDorisTableIsExists(id);
}
+
+ @PostMapping("search")
+ public List search(@RequestBody DataSetTableRequest dataSetTableRequest) {
+ return dataSetTableService.search(dataSetTableRequest);
+ }
}
diff --git a/backend/src/main/java/io/dataease/controller/request/chart/ChartGroupRequest.java b/backend/src/main/java/io/dataease/controller/request/chart/ChartGroupRequest.java
index 8ddcd1958c..624380ba30 100644
--- a/backend/src/main/java/io/dataease/controller/request/chart/ChartGroupRequest.java
+++ b/backend/src/main/java/io/dataease/controller/request/chart/ChartGroupRequest.java
@@ -3,9 +3,12 @@ package io.dataease.controller.request.chart;
import io.dataease.base.domain.ChartGroup;
import lombok.Data;
+import java.util.Set;
+
@Data
public class ChartGroupRequest extends ChartGroup {
private String sort;
private String userId;
+ private Set ids;
}
diff --git a/backend/src/main/java/io/dataease/controller/request/dataset/DataSetGroupRequest.java b/backend/src/main/java/io/dataease/controller/request/dataset/DataSetGroupRequest.java
index cde03a2ffc..430fb22f1c 100644
--- a/backend/src/main/java/io/dataease/controller/request/dataset/DataSetGroupRequest.java
+++ b/backend/src/main/java/io/dataease/controller/request/dataset/DataSetGroupRequest.java
@@ -3,6 +3,9 @@ package io.dataease.controller.request.dataset;
import io.dataease.base.domain.DatasetGroup;
import lombok.Data;
+import java.util.List;
+import java.util.Set;
+
/**
* @Author gin
* @Date 2021/2/22 1:30 下午
@@ -12,4 +15,6 @@ public class DataSetGroupRequest extends DatasetGroup {
private String sort;
private String userId;
+
+ private Set ids;
}
diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java
index 84dbbf0fd7..85bf03df55 100644
--- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java
+++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java
@@ -15,11 +15,15 @@ import io.dataease.controller.request.chart.ChartExtFilterRequest;
import io.dataease.controller.request.chart.ChartExtRequest;
import io.dataease.controller.request.chart.ChartGroupRequest;
import io.dataease.controller.request.chart.ChartViewRequest;
+import io.dataease.controller.request.dataset.DataSetGroupRequest;
+import io.dataease.controller.request.dataset.DataSetTableRequest;
import io.dataease.datasource.provider.DatasourceProvider;
import io.dataease.datasource.provider.ProviderFactory;
import io.dataease.datasource.request.DatasourceRequest;
import io.dataease.datasource.service.DatasourceService;
import io.dataease.dto.chart.*;
+import io.dataease.dto.dataset.DataSetGroupDTO;
+import io.dataease.dto.dataset.DataSetTableDTO;
import io.dataease.dto.dataset.DataSetTableUnionDTO;
import io.dataease.dto.dataset.DataTableInfoDTO;
import io.dataease.i18n.Translator;
@@ -110,6 +114,41 @@ public class ChartViewService {
return group;
}
+ public List search(ChartViewRequest chartViewRequest) {
+ String userId = String.valueOf(AuthUtils.getUser().getUserId());
+ chartViewRequest.setUserId(userId);
+ List ds = extChartViewMapper.search(chartViewRequest);
+ if (CollectionUtils.isEmpty(ds)) {
+ return ds;
+ }
+
+ TreeSet ids = new TreeSet<>();
+ ds.forEach(ele -> {
+ ele.setIsLeaf(true);
+ ele.setPid(ele.getSceneId());
+ ids.add(ele.getPid());
+ });
+
+ ChartGroupRequest chartGroupRequest = new ChartGroupRequest();
+ chartGroupRequest.setUserId(userId);
+ chartGroupRequest.setIds(ids);
+ List search = extChartGroupMapper.search(chartGroupRequest);
+ while (CollectionUtils.isNotEmpty(search)) {
+ ids.clear();
+ search.forEach(ele -> {
+ ChartViewDTO dto = new ChartViewDTO();
+ BeanUtils.copyBean(dto, ele);
+ dto.setIsLeaf(false);
+ dto.setType("group");
+ ds.add(dto);
+ ids.add(ele.getPid());
+ });
+ chartGroupRequest.setIds(ids);
+ search = extChartGroupMapper.search(chartGroupRequest);
+ }
+ return ds;
+ }
+
public ChartViewWithBLOBs get(String id) {
return chartViewMapper.selectByPrimaryKey(id);
}
diff --git a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java
index 0991fbd679..5c61f458e0 100644
--- a/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java
+++ b/backend/src/main/java/io/dataease/service/dataset/DataSetTableService.java
@@ -12,6 +12,7 @@ import io.dataease.commons.constants.JobStatus;
import io.dataease.commons.constants.ScheduleType;
import io.dataease.commons.constants.TaskStatus;
import io.dataease.commons.utils.*;
+import io.dataease.controller.request.chart.ChartGroupRequest;
import io.dataease.controller.request.dataset.DataSetGroupRequest;
import io.dataease.controller.request.dataset.DataSetTableRequest;
import io.dataease.controller.request.dataset.DataSetTaskRequest;
@@ -232,6 +233,41 @@ public class DataSetTableService {
return group;
}
+ public List search(DataSetTableRequest dataSetTableRequest) {
+ String userId = String.valueOf(AuthUtils.getUser().getUserId());
+ dataSetTableRequest.setUserId(userId);
+ List ds = extDataSetTableMapper.search(dataSetTableRequest);
+ if (CollectionUtils.isEmpty(ds)) {
+ return ds;
+ }
+
+ TreeSet ids = new TreeSet<>();
+ ds.forEach(ele -> {
+ ele.setIsLeaf(true);
+ ele.setPid(ele.getSceneId());
+ ids.add(ele.getPid());
+ });
+
+ DataSetGroupRequest dataSetGroupRequest = new DataSetGroupRequest();
+ dataSetGroupRequest.setUserId(userId);
+ dataSetGroupRequest.setIds(ids);
+ List search = extDataSetGroupMapper.search(dataSetGroupRequest);
+ while (CollectionUtils.isNotEmpty(search)) {
+ ids.clear();
+ search.forEach(ele -> {
+ DataSetTableDTO dto = new DataSetTableDTO();
+ BeanUtils.copyBean(dto, ele);
+ dto.setIsLeaf(false);
+ dto.setType("group");
+ ds.add(dto);
+ ids.add(ele.getPid());
+ });
+ dataSetGroupRequest.setIds(ids);
+ search = extDataSetGroupMapper.search(dataSetGroupRequest);
+ }
+ return ds;
+ }
+
public DatasetTable get(String id) {
return datasetTableMapper.selectByPrimaryKey(id);
}
diff --git a/frontend/src/views/chart/group/Group.vue b/frontend/src/views/chart/group/Group.vue
index e533378f31..6fae053c64 100644
--- a/frontend/src/views/chart/group/Group.vue
+++ b/frontend/src/views/chart/group/Group.vue
@@ -891,14 +891,18 @@ export default {
searchTree(val) {
const queryCondition = {
- withExtend: 'parent',
- modelType: 'chart',
+ // withExtend: 'parent',
+ // modelType: 'chart',
name: val
}
- authModel(queryCondition).then(res => {
- // this.highlights(res.data)
+ // authModel(queryCondition).then(res => {
+ // // this.highlights(res.data)
+ // this.tData = this.buildTree(res.data)
+ // // console.log(this.tData)
+ // })
+
+ post('/chart/view/search', queryCondition).then(res => {
this.tData = this.buildTree(res.data)
- // console.log(this.tData)
})
},
@@ -910,8 +914,8 @@ export default {
const roots = []
arrs.forEach(el => {
// 判断根节点 ###
- el.type = el.modelInnerType
- el.isLeaf = el.leaf
+ // el.type = el.modelInnerType
+ // el.isLeaf = el.leaf
if (el[this.treeProps.parentId] === null || el[this.treeProps.parentId] === 0 || el[this.treeProps.parentId] === '0') {
roots.push(el)
return
diff --git a/frontend/src/views/dataset/group/Group.vue b/frontend/src/views/dataset/group/Group.vue
index dd8292be32..19f8db239a 100644
--- a/frontend/src/views/dataset/group/Group.vue
+++ b/frontend/src/views/dataset/group/Group.vue
@@ -856,14 +856,18 @@ export default {
searchTree(val) {
const queryCondition = {
- withExtend: 'parent',
- modelType: 'dataset',
+ // withExtend: 'parent',
+ // modelType: 'dataset',
name: val
}
- authModel(queryCondition).then(res => {
- // this.highlights(res.data)
+ // authModel(queryCondition).then(res => {
+ // // this.highlights(res.data)
+ // this.tData = this.buildTree(res.data)
+ // // console.log(this.tData)
+ // })
+
+ post('/dataset/table/search', queryCondition).then(res => {
this.tData = this.buildTree(res.data)
- // console.log(this.tData)
})
},
@@ -875,8 +879,8 @@ export default {
const roots = []
arrs.forEach(el => {
// 判断根节点 ###
- el.type = el.modelInnerType
- el.isLeaf = el.leaf
+ // el.type = el.modelInnerType
+ // el.isLeaf = el.leaf
if (el[this.treeProps.parentId] === null || el[this.treeProps.parentId] === 0 || el[this.treeProps.parentId] === '0') {
roots.push(el)
return