commit
f2b0cf359e
@ -6,11 +6,6 @@
|
||||
<a href="https://github.com/dataease/dataease"><img src="https://img.shields.io/github/stars/dataease/dataease?color=%231890FF&style=flat-square" alt="Stars"></a>
|
||||
</p>
|
||||
|
||||
|说明|
|
||||
|------------------|
|
||||
|此分支为 DataEase v2 版本的开发分支。DataEase v2 正在快速迭代中,如是在生产环境部署 DataEase,建议使用 v1.18.* 的最新稳定版本。|
|
||||
<hr/>
|
||||
|
||||
## 什么是 DataEase?
|
||||
|
||||
DataEase 是开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。DataEase 支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便的与他人分享。
|
||||
|
||||
@ -498,4 +498,26 @@ public class DatasetGroupManage {
|
||||
geFullName(parent.getPid(), fullName);
|
||||
}
|
||||
}
|
||||
|
||||
public List<DatasetTableDTO> getDetailWithPerm(List<Long> ids) {
|
||||
var result = new ArrayList<DatasetTableDTO>();
|
||||
if (CollectionUtil.isNotEmpty(ids)) {
|
||||
var dsList = coreDatasetGroupMapper.selectBatchIds(ids);
|
||||
if (CollectionUtil.isNotEmpty(dsList)) {
|
||||
dsList.forEach(ds -> {
|
||||
DatasetTableDTO dto = new DatasetTableDTO();
|
||||
BeanUtils.copyBean(dto, ds);
|
||||
var fields = datasetTableFieldManage.listFieldsWithPermissions(ds.getId());
|
||||
List<DatasetTableFieldDTO> dimensionList = fields.stream().filter(ele -> StringUtils.equalsIgnoreCase(ele.getGroupType(), "d")).toList();
|
||||
List<DatasetTableFieldDTO> quotaList = fields.stream().filter(ele -> StringUtils.equalsIgnoreCase(ele.getGroupType(), "q")).toList();
|
||||
Map<String, List<DatasetTableFieldDTO>> map = new LinkedHashMap<>();
|
||||
map.put("dimensionList", dimensionList);
|
||||
map.put("quotaList", quotaList);
|
||||
dto.setFields(map);
|
||||
result.add(dto);
|
||||
});
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,9 @@
|
||||
package io.dataease.dataset.manage;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import io.dataease.api.chart.dto.ColumnPermissionItem;
|
||||
import io.dataease.auth.bo.TokenUserBO;
|
||||
import io.dataease.dataset.dao.auto.entity.CoreDatasetTableField;
|
||||
import io.dataease.dataset.dao.auto.mapper.CoreDatasetGroupMapper;
|
||||
import io.dataease.dataset.dao.auto.mapper.CoreDatasetTableFieldMapper;
|
||||
@ -9,6 +12,7 @@ import io.dataease.datasource.provider.CalciteProvider;
|
||||
import io.dataease.dto.dataset.DatasetTableFieldDTO;
|
||||
import io.dataease.exception.DEException;
|
||||
import io.dataease.i18n.Translator;
|
||||
import io.dataease.utils.AuthUtils;
|
||||
import io.dataease.utils.BeanUtils;
|
||||
import io.dataease.utils.IDUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
@ -18,9 +22,7 @@ import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@ -187,6 +189,20 @@ public class DatasetTableFieldManage {
|
||||
return map;
|
||||
}
|
||||
|
||||
public List<DatasetTableFieldDTO> listFieldsWithPermissions(Long id) {
|
||||
List<DatasetTableFieldDTO> fields = selectByDatasetGroupId(id);
|
||||
Map<String, ColumnPermissionItem> desensitizationList = new HashMap<>();
|
||||
Long userId = AuthUtils.getUser() == null ? null : AuthUtils.getUser().getUserId();
|
||||
List<DatasetTableFieldDTO> tmp = permissionManage
|
||||
.filterColumnPermissions(fields, desensitizationList, id, userId)
|
||||
.stream()
|
||||
.sorted(Comparator.comparing(DatasetTableFieldDTO::getGroupType))
|
||||
.toList();
|
||||
tmp.forEach(ele -> ele.setDesensitized(desensitizationList.containsKey(ele.getDataeaseName())));
|
||||
return tmp;
|
||||
}
|
||||
|
||||
|
||||
public List<DatasetTableFieldDTO> transDTO(List<CoreDatasetTableField> list) {
|
||||
return list.stream().map(ele -> {
|
||||
DatasetTableFieldDTO dto = new DatasetTableFieldDTO();
|
||||
|
||||
@ -53,6 +53,11 @@ public class DatasetFieldServer implements DatasetTableApi {
|
||||
return datasetTableFieldManage.listByDQ(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DatasetTableFieldDTO> listFieldsWithPermissions(Long id) {
|
||||
return datasetTableFieldManage.listFieldsWithPermissions(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> multFieldValuesForPermissions(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception {
|
||||
return datasetDataManage.getFieldEnum(multFieldValuesRequest.getFieldIds());
|
||||
|
||||
@ -77,4 +77,10 @@ public class DatasetTreeServer implements DatasetTreeApi {
|
||||
public List<SqlVariableDetails> getSqlParams(List<Long> ids) throws Exception {
|
||||
return datasetGroupManage.getSqlParams(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DatasetTableDTO> detailWithPerm(List<Long> ids) throws Exception {
|
||||
return datasetGroupManage.getDetailWithPerm(ids);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -3748,7 +3748,7 @@ CREATE TABLE QRTZ_JOB_DETAILS
|
||||
JOB_DATA BLOB NULL,
|
||||
PRIMARY KEY (SCHED_NAME, JOB_NAME, JOB_GROUP)
|
||||
);
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
CREATE TABLE QRTZ_TRIGGERS
|
||||
(
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
@ -3827,9 +3827,7 @@ CREATE TABLE QRTZ_BLOB_TRIGGERS
|
||||
PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
|
||||
FOREIGN KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
REFERENCES QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
);
|
||||
|
||||
CREATE TABLE QRTZ_CALENDARS
|
||||
(
|
||||
@ -3896,9 +3894,7 @@ CREATE TABLE `visualization_background`
|
||||
`base_url` varchar(255) DEFAULT NULL,
|
||||
`url` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
);
|
||||
|
||||
INSERT INTO `visualization_background` (`id`, `name`, `classification`, `content`, `remark`, `sort`, `upload_time`,
|
||||
`base_url`, `url`)
|
||||
@ -3947,11 +3943,7 @@ CREATE TABLE `visualization_background_image`
|
||||
`base_url` varchar(255) DEFAULT NULL,
|
||||
`url` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
|
||||
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_subject
|
||||
@ -3959,7 +3951,7 @@ CREATE TABLE `visualization_background_image`
|
||||
DROP TABLE IF EXISTS `visualization_subject`;
|
||||
CREATE TABLE `visualization_subject`
|
||||
(
|
||||
`id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
|
||||
`id` varchar(50) NOT NULL,
|
||||
`name` varchar(255) DEFAULT NULL COMMENT '主题名称',
|
||||
`type` varchar(255) DEFAULT NULL COMMENT '主题类型 system 系统主题,self 自定义主题',
|
||||
`details` longtext COMMENT '主题内容',
|
||||
@ -3973,11 +3965,7 @@ CREATE TABLE `visualization_subject`
|
||||
`delete_time` bigint DEFAULT NULL COMMENT '删除时间',
|
||||
`delete_by` bigint DEFAULT NULL COMMENT '删除人',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
|
||||
|
||||
);
|
||||
commit;
|
||||
|
||||
DROP TABLE IF EXISTS `core_dataset_table_sql_log`;
|
||||
@ -3991,9 +3979,7 @@ CREATE TABLE `core_dataset_table_sql_log`
|
||||
`sql` longtext NOT NULL COMMENT '详细信息',
|
||||
`status` varchar(45) DEFAULT NULL COMMENT '状态',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE utf8mb4_0900_ai_ci;
|
||||
);
|
||||
|
||||
|
||||
INSERT INTO `visualization_subject` (`id`, `name`, `type`, `details`, `delete_flag`, `cover_url`, `create_num`,
|
||||
@ -4024,9 +4010,7 @@ CREATE TABLE `core_store`
|
||||
`resource_type` int NOT NULL COMMENT '资源类型',
|
||||
`time` bigint NOT NULL COMMENT '收藏时间',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for xpack_share
|
||||
@ -4044,9 +4028,7 @@ CREATE TABLE `xpack_share`
|
||||
`oid` bigint NOT NULL COMMENT '组织ID',
|
||||
`type` int NOT NULL COMMENT '业务类型',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for xpack_setting_authentication
|
||||
@ -4061,25 +4043,8 @@ CREATE TABLE `xpack_setting_authentication`
|
||||
`sync_time` bigint NOT NULL COMMENT '同步时间',
|
||||
`relational_ids` varchar(255) DEFAULT NULL COMMENT '相关的ID',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : de2-qa-123.56.90.236
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80100
|
||||
Source Host : 123.56.90.236:3306
|
||||
Source Schema : dataease
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80100
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 22/09/2023 00:30:08
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
@ -4093,14 +4058,12 @@ CREATE TABLE `visualization_link_jump`
|
||||
`id` bigint NOT NULL,
|
||||
`source_dv_id` bigint DEFAULT NULL COMMENT '源仪表板ID',
|
||||
`source_view_id` bigint DEFAULT NULL COMMENT '源视图ID',
|
||||
`link_jump_info` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '跳转信息',
|
||||
`link_jump_info` varchar(4000) DEFAULT NULL COMMENT '跳转信息',
|
||||
`checked` tinyint(1) DEFAULT NULL COMMENT '是否启用',
|
||||
`copy_from` bigint DEFAULT NULL,
|
||||
`copy_id` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_link_jump_info
|
||||
@ -4110,19 +4073,17 @@ CREATE TABLE `visualization_link_jump_info`
|
||||
(
|
||||
`id` bigint NOT NULL,
|
||||
`link_jump_id` bigint DEFAULT NULL COMMENT 'link jump ID',
|
||||
`link_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '关联类型 inner 内部仪表板,outer 外部链接',
|
||||
`jump_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '跳转类型 _blank 新开页面 _self 当前窗口',
|
||||
`link_type` varchar(255) DEFAULT NULL COMMENT '关联类型 inner 内部仪表板,outer 外部链接',
|
||||
`jump_type` varchar(255) DEFAULT NULL COMMENT '跳转类型 _blank 新开页面 _self 当前窗口',
|
||||
`target_dv_id` bigint DEFAULT NULL COMMENT '关联仪表板ID',
|
||||
`source_field_id` bigint DEFAULT NULL COMMENT '字段ID',
|
||||
`content` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '内容 linkType = outer时使用',
|
||||
`content` varchar(4000) DEFAULT NULL COMMENT '内容 linkType = outer时使用',
|
||||
`checked` tinyint(1) DEFAULT NULL COMMENT '是否可用',
|
||||
`attach_params` tinyint(1) DEFAULT NULL COMMENT '是否附加点击参数',
|
||||
`copy_from` bigint DEFAULT NULL,
|
||||
`copy_id` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_link_jump_target_view_info
|
||||
@ -4138,9 +4099,7 @@ CREATE TABLE `visualization_link_jump_target_view_info`
|
||||
`copy_from` bigint DEFAULT NULL,
|
||||
`copy_id` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`target_id`) USING BTREE
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_linkage
|
||||
@ -4160,9 +4119,7 @@ CREATE TABLE `visualization_linkage`
|
||||
`copy_from` bigint DEFAULT NULL,
|
||||
`copy_id` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_linkage_field
|
||||
@ -4178,16 +4135,11 @@ CREATE TABLE `visualization_linkage_field`
|
||||
`copy_from` bigint DEFAULT NULL,
|
||||
`copy_id` bigint DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_0900_ai_ci;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
||||
);
|
||||
|
||||
ALTER TABLE `core_datasource`
|
||||
ADD COLUMN `update_by` bigint NULL COMMENT '变更人' AFTER `update_time`;
|
||||
|
||||
|
||||
DROP TABLE IF EXISTS `core_ds_finish_page`;
|
||||
CREATE TABLE `core_ds_finish_page`
|
||||
(
|
||||
@ -4205,9 +4157,7 @@ CREATE TABLE `core_opt_recent`
|
||||
`opt_type` int DEFAULT NULL COMMENT '1 新建 2 修改',
|
||||
`time` bigint NOT NULL COMMENT '收藏时间',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for core_sys_setting
|
||||
@ -4221,6 +4171,4 @@ CREATE TABLE `core_sys_setting`
|
||||
`type` varchar(255) NOT NULL COMMENT '类型',
|
||||
`sort` int NOT NULL DEFAULT '0' COMMENT '顺序',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4
|
||||
COLLATE = utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
@ -14,7 +14,7 @@ CREATE TABLE `visualization_template` (
|
||||
`template_data` longtext COMMENT 'template 数据',
|
||||
`dynamic_data` longtext COMMENT '预存数据',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='模板表';
|
||||
) COMMENT='模板表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_template_category
|
||||
@ -32,7 +32,7 @@ CREATE TABLE `visualization_template_category` (
|
||||
`snapshot` longtext COMMENT '缩略图',
|
||||
`template_type` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='模板表';
|
||||
) COMMENT='模板表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_template_category_map
|
||||
@ -43,7 +43,7 @@ CREATE TABLE `visualization_template_category_map` (
|
||||
`category_id` varchar(255) DEFAULT NULL COMMENT '名称',
|
||||
`template_id` varchar(255) DEFAULT NULL COMMENT '父级id',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='模板表';
|
||||
) COMMENT='模板表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for visualization_template_extend_data
|
||||
@ -57,7 +57,7 @@ CREATE TABLE `visualization_template_extend_data` (
|
||||
`copy_from` varchar(255) DEFAULT NULL,
|
||||
`copy_id` varchar(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
);
|
||||
|
||||
BEGIN;
|
||||
INSERT INTO `core_menu`
|
||||
|
||||
@ -15,6 +15,7 @@ export interface Field {
|
||||
extField: number
|
||||
checked: boolean
|
||||
fieldShortName: string
|
||||
desensitized: boolean
|
||||
}
|
||||
|
||||
export interface ComponentInfo {
|
||||
|
||||
@ -154,6 +154,11 @@ export const getDsDetails = async (data): Promise<DatasetDetail[]> => {
|
||||
return res?.data
|
||||
})
|
||||
}
|
||||
export const getDsDetailsWithPerm = async (data): Promise<DatasetDetail[]> => {
|
||||
return request.post({ url: '/datasetTree/detailWithPerm', data }).then(res => {
|
||||
return res?.data
|
||||
})
|
||||
}
|
||||
export const getSqlParams = async (data): Promise<ParamsDetail[]> => {
|
||||
return request.post({ url: '/datasetTree/getSqlParams', data }).then(res => {
|
||||
return res?.data
|
||||
@ -175,6 +180,10 @@ export const multFieldValuesForPermissions = (data = {}) => {
|
||||
return request.post({ url: '/datasetField/multFieldValuesForPermissions', data })
|
||||
}
|
||||
|
||||
export const listFieldsWithPermissions = (datasetId: number) => {
|
||||
return request.get({ url: '/datasetField/listWithPermissions/' + datasetId })
|
||||
}
|
||||
|
||||
export const saveRowPermission = (data = {}) => {
|
||||
return request.post({ url: '/dataset/rowPermissions/save', data })
|
||||
}
|
||||
|
||||
@ -7,7 +7,7 @@ import { useI18n } from '@/hooks/web/useI18n'
|
||||
import { fieldType } from '@/utils/attr'
|
||||
import { ElMessage } from 'element-plus-secondary'
|
||||
import type { DatasetDetail } from '@/api/dataset'
|
||||
import { getDsDetails, getSqlParams } from '@/api/dataset'
|
||||
import { getDsDetailsWithPerm, getSqlParams, listFieldsWithPermissions } from '@/api/dataset'
|
||||
import EmptyBackground from '@/components/empty-background/src/EmptyBackground.vue'
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
import Select from './Select.vue'
|
||||
@ -391,7 +391,7 @@ const init = (queryId: string) => {
|
||||
}
|
||||
const params = [...new Set(datasetFieldList.value.map(ele => ele.tableId).filter(ele => !!ele))]
|
||||
if (!params.length) return
|
||||
getDsDetails(params)
|
||||
getDsDetailsWithPerm(params)
|
||||
.then(res => {
|
||||
res
|
||||
.filter(ele => !!ele)
|
||||
@ -438,7 +438,7 @@ const handleCondition = item => {
|
||||
curComponent.value = conditions.value.find(ele => ele.id === item.id)
|
||||
|
||||
multiple.value = curComponent.value.multiple
|
||||
if (!curComponent.value.dataset.fields.length) {
|
||||
if (!curComponent.value.dataset.fields.length && curComponent.value.dataset.id) {
|
||||
getOptions(curComponent.value.dataset.id, curComponent.value)
|
||||
}
|
||||
datasetFieldList.value.forEach(ele => {
|
||||
@ -468,12 +468,8 @@ const handleCondition = item => {
|
||||
}
|
||||
|
||||
const getOptions = (id, component) => {
|
||||
getDsDetails([id]).then(res => {
|
||||
res.forEach(ele => {
|
||||
if (!ele) return
|
||||
const { dimensionList, quotaList } = ele.fields
|
||||
component.dataset.fields = [...dimensionList, ...quotaList]
|
||||
})
|
||||
listFieldsWithPermissions(id).then(res => {
|
||||
component.dataset.fields = res.data
|
||||
})
|
||||
}
|
||||
|
||||
@ -840,8 +836,12 @@ defineExpose({
|
||||
:key="ele.id"
|
||||
:label="ele.name"
|
||||
:value="ele.id"
|
||||
:disabled="ele.desensitized"
|
||||
>
|
||||
<div class="flex-align-center icon">
|
||||
<div
|
||||
class="flex-align-center icon"
|
||||
:title="ele.desensitized ? '脱敏字段,不能被设置为查询条件' : ''"
|
||||
>
|
||||
<el-icon>
|
||||
<Icon
|
||||
:name="`field_${fieldType[ele.deType]}`"
|
||||
@ -990,8 +990,12 @@ defineExpose({
|
||||
:key="ele.id"
|
||||
:label="ele.name"
|
||||
:value="ele.id"
|
||||
:disabled="ele.desensitized"
|
||||
>
|
||||
<div class="flex-align-center icon">
|
||||
<div
|
||||
class="flex-align-center icon"
|
||||
:title="ele.desensitized ? '脱敏字段,不能被设置为查询条件' : ''"
|
||||
>
|
||||
<el-icon>
|
||||
<Icon
|
||||
:name="`field_${fieldType[ele.deType]}`"
|
||||
|
||||
2
de-xpack
2
de-xpack
@ -1 +1 @@
|
||||
Subproject commit e584ed4e9f88eac8de7bd31c74eb32e91eb9279b
|
||||
Subproject commit 391d9aa251594c2b310cdb81847aa9cd9a808e41
|
||||
@ -3,6 +3,7 @@ package io.dataease.api.dataset;
|
||||
import io.dataease.api.dataset.dto.MultFieldValuesRequest;
|
||||
import io.dataease.api.dataset.engine.SQLFunctionDTO;
|
||||
import io.dataease.dto.dataset.DatasetTableFieldDTO;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
@ -37,6 +38,9 @@ public interface DatasetTableApi {
|
||||
@PostMapping("listByDQ/{id}")
|
||||
Map<String, List<DatasetTableFieldDTO>> listByDQ(@PathVariable Long id);
|
||||
|
||||
@GetMapping ("listWithPermissions/{id}")
|
||||
List<DatasetTableFieldDTO> listFieldsWithPermissions(@PathVariable Long id);
|
||||
|
||||
|
||||
@PostMapping("multFieldValuesForPermissions")
|
||||
List<String> multFieldValuesForPermissions(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception;
|
||||
|
||||
@ -72,4 +72,7 @@ public interface DatasetTreeApi {
|
||||
|
||||
@PostMapping("getSqlParams")
|
||||
List<SqlVariableDetails> getSqlParams(@RequestBody List<Long> ids) throws Exception;
|
||||
|
||||
@PostMapping("detailWithPerm")
|
||||
List<DatasetTableDTO> detailWithPerm(@RequestBody List<Long> ids) throws Exception;
|
||||
}
|
||||
|
||||
@ -121,4 +121,9 @@ public class DatasetTableFieldDTO implements Serializable {
|
||||
* 字段short name
|
||||
*/
|
||||
private String fieldShortName;
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否脱敏
|
||||
*/
|
||||
private Boolean desensitized;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user