提交 8aa0bf21 authored 作者: taojinlong's avatar taojinlong

fix: 行权限枚举值

上级 48203672
...@@ -159,7 +159,7 @@ public class DataSetTableFieldController { ...@@ -159,7 +159,7 @@ public class DataSetTableFieldController {
public List<Object> multFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { public List<Object> multFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception {
List<Object> results = new ArrayList<>(); List<Object> results = new ArrayList<>();
for (String fieldId : multFieldValuesRequest.getFieldIds()) { for (String fieldId : multFieldValuesRequest.getFieldIds()) {
List<Object> fieldValues = dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId(), true); List<Object> fieldValues = dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId(), true, false);
if (CollectionUtil.isNotEmpty(fieldValues)) { if (CollectionUtil.isNotEmpty(fieldValues)) {
results.addAll(fieldValues); results.addAll(fieldValues);
} }
...@@ -185,13 +185,13 @@ public class DataSetTableFieldController { ...@@ -185,13 +185,13 @@ public class DataSetTableFieldController {
DecodedJWT jwt = JWT.decode(linkToken); DecodedJWT jwt = JWT.decode(linkToken);
Long userId = jwt.getClaim("userId").asLong(); Long userId = jwt.getClaim("userId").asLong();
multFieldValuesRequest.setUserId(userId); multFieldValuesRequest.setUserId(userId);
return dataSetFieldService.fieldValues(multFieldValuesRequest.getFieldIds(), multFieldValuesRequest.getUserId(), true, true); return dataSetFieldService.fieldValues(multFieldValuesRequest.getFieldIds(), multFieldValuesRequest.getUserId(), true, true,false);
} }
@ApiIgnore @ApiIgnore
@PostMapping("mappingFieldValues") @PostMapping("mappingFieldValues")
public List<Object> mappingFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { public List<Object> mappingFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception {
return dataSetFieldService.fieldValues(multFieldValuesRequest.getFieldIds(), multFieldValuesRequest.getUserId(), true, true); return dataSetFieldService.fieldValues(multFieldValuesRequest.getFieldIds(), multFieldValuesRequest.getUserId(), true, true, false);
} }
@ApiIgnore @ApiIgnore
...@@ -199,7 +199,7 @@ public class DataSetTableFieldController { ...@@ -199,7 +199,7 @@ public class DataSetTableFieldController {
public List<Object> multFieldValuesForPermissions(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { public List<Object> multFieldValuesForPermissions(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception {
List<Object> results = new ArrayList<>(); List<Object> results = new ArrayList<>();
for (String fieldId : multFieldValuesRequest.getFieldIds()) { for (String fieldId : multFieldValuesRequest.getFieldIds()) {
List<Object> fieldValues = dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId(), false); List<Object> fieldValues = dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId(), false, true);
if (CollectionUtil.isNotEmpty(fieldValues)) { if (CollectionUtil.isNotEmpty(fieldValues)) {
results.addAll(fieldValues); results.addAll(fieldValues);
} }
......
...@@ -5,7 +5,7 @@ import java.util.List; ...@@ -5,7 +5,7 @@ import java.util.List;
public interface DataSetFieldService { public interface DataSetFieldService {
List<Object> fieldValues(String fieldId, Long userId, Boolean userPermissions) throws Exception; List<Object> fieldValues(String fieldId, Long userId, Boolean userPermissions, Boolean rowAndColumnMgm) throws Exception;
List<Object> fieldValues(List<String> fieldIds, Long userId, Boolean userPermissions, Boolean needMapping) throws Exception; List<Object> fieldValues(List<String> fieldIds, Long userId, Boolean userPermissions, Boolean needMapping, Boolean rowAndColumnMgm) throws Exception;
} }
...@@ -45,14 +45,14 @@ public class DirectFieldService implements DataSetFieldService { ...@@ -45,14 +45,14 @@ public class DirectFieldService implements DataSetFieldService {
private EngineService engineService; private EngineService engineService;
@Override @Override
public List<Object> fieldValues(String fieldId, Long userId, Boolean userPermissions) throws Exception { public List<Object> fieldValues(String fieldId, Long userId, Boolean userPermissions, Boolean rowAndColumnMgm) throws Exception {
List<String> filedIds = new ArrayList<>(); List<String> filedIds = new ArrayList<>();
filedIds.add(fieldId); filedIds.add(fieldId);
return fieldValues(filedIds, userId, userPermissions, false); return fieldValues(filedIds, userId, userPermissions, false, rowAndColumnMgm);
} }
@Override @Override
public List<Object> fieldValues(List<String> fieldIds, Long userId, Boolean userPermissions, Boolean needMapping) throws Exception { public List<Object> fieldValues(List<String> fieldIds, Long userId, Boolean userPermissions, Boolean needMapping, Boolean rowAndColumnMgm) throws Exception {
String fieldId = fieldIds.get(0); String fieldId = fieldIds.get(0);
DatasetTableField field = dataSetTableFieldsService.selectByPrimaryKey(fieldId); DatasetTableField field = dataSetTableFieldsService.selectByPrimaryKey(fieldId);
if (field == null || StringUtils.isEmpty(field.getTableId())) return null; if (field == null || StringUtils.isEmpty(field.getTableId())) return null;
...@@ -70,22 +70,15 @@ public class DirectFieldService implements DataSetFieldService { ...@@ -70,22 +70,15 @@ public class DirectFieldService implements DataSetFieldService {
List<DatasetTableField> permissionFields = fields; List<DatasetTableField> permissionFields = fields;
List<ChartFieldCustomFilterDTO> customFilter = new ArrayList<>(); List<ChartFieldCustomFilterDTO> customFilter = new ArrayList<>();
if(userPermissions){ if (userPermissions) {
//列权限 //列权限
List<String> desensitizationList = new ArrayList<>(); List<String> desensitizationList = new ArrayList<>();
fields = permissionService.filterColumnPermissons(fields, desensitizationList, datasetTable.getId(), userId); fields = permissionService.filterColumnPermissons(fields, desensitizationList, datasetTable.getId(), userId);
Map<String, DatasetTableField> fieldMap = fields.stream().collect(Collectors.toMap(DatasetTableField::getId, node -> node)); Map<String, DatasetTableField> fieldMap = fields.stream().collect(Collectors.toMap(DatasetTableField::getId, node -> node));
permissionFields = fieldIds.stream().map(fieldMap::get).collect(Collectors.toList()); permissionFields = fieldIds.stream().map(fieldMap::get).collect(Collectors.toList());
//permissionFields = fields.stream().filter(node -> fieldIds.stream().anyMatch(item -> StringUtils.equals(node.getId(), item))).collect(Collectors.toList());
if (CollectionUtils.isEmpty(permissionFields)) { if (CollectionUtils.isEmpty(permissionFields)) {
return new ArrayList<>(); return new ArrayList<>();
} }
//禁用的
/*if(!fields.stream().map(DatasetTableField::getId).collect(Collectors.toList()).contains(fieldId)){
return new ArrayList<>();
}*/
if (CollectionUtils.isNotEmpty(desensitizationList) && desensitizationList.contains(field.getDataeaseName())) { if (CollectionUtils.isNotEmpty(desensitizationList) && desensitizationList.contains(field.getDataeaseName())) {
List<Object> results = new ArrayList<>(); List<Object> results = new ArrayList<>();
results.add(ColumnPermissionConstants.Desensitization_desc); results.add(ColumnPermissionConstants.Desensitization_desc);
...@@ -94,6 +87,13 @@ public class DirectFieldService implements DataSetFieldService { ...@@ -94,6 +87,13 @@ public class DirectFieldService implements DataSetFieldService {
//行权限 //行权限
customFilter = permissionService.getCustomFilters(fields, datasetTable, userId); customFilter = permissionService.getCustomFilters(fields, datasetTable, userId);
} }
if (rowAndColumnMgm) {
Map<String, DatasetTableField> fieldMap = fields.stream().collect(Collectors.toMap(DatasetTableField::getId, node -> node));
permissionFields = fieldIds.stream().map(fieldMap::get).collect(Collectors.toList());
if (CollectionUtils.isEmpty(permissionFields)) {
return new ArrayList<>();
}
}
DatasourceRequest datasourceRequest = new DatasourceRequest(); DatasourceRequest datasourceRequest = new DatasourceRequest();
Provider datasourceProvider = null; Provider datasourceProvider = null;
...@@ -148,7 +148,7 @@ public class DirectFieldService implements DataSetFieldService { ...@@ -148,7 +148,7 @@ public class DirectFieldService implements DataSetFieldService {
} }
private List<BaseTreeNode> buildTreeNode(String [] row, Set<String> pkSet) { private List<BaseTreeNode> buildTreeNode(String[] row, Set<String> pkSet) {
List<BaseTreeNode> nodes = new ArrayList<>(); List<BaseTreeNode> nodes = new ArrayList<>();
List<String> parentPkList = new ArrayList<>(); List<String> parentPkList = new ArrayList<>();
for (int i = 0; i < row.length; i++) { for (int i = 0; i < row.length; i++) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论