From ca5b15962514b60473cfb4be981398531a24c1d5 Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Wed, 17 Apr 2024 15:57:06 +0800 Subject: [PATCH 1/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E7=9F=A9=E9=98=B5?= =?UTF-8?q?=E4=B8=A4=E4=B8=AA=E6=8E=A5=E5=8F=A3=E6=94=AF=E6=8C=81matrixLab?= =?UTF-8?q?el=E6=9B=BF=E4=BB=A3matrixUuid=EF=BC=8CattrName=E6=9B=BF?= =?UTF-8?q?=E4=BB=A3attrUuid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1136926608818176]矩阵两个接口支持matrixLabel替代matrixUuid,attrName替代attrUuid http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1136926608818176 --- .../MatrixColumnDataSearchForSelectApi.java | 131 ++++++++++++++++-- .../MatrixColumnDataSearchForTableNewApi.java | 120 +++++++++++++--- 2 files changed, 216 insertions(+), 35 deletions(-) diff --git a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java index 70bdad36..e06d1e30 100644 --- a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java +++ b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java @@ -19,6 +19,7 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import neatlogic.framework.common.constvalue.ApiParamType; import neatlogic.framework.common.dto.BasePageVo; +import neatlogic.framework.exception.type.ParamNotExistsException; import neatlogic.framework.matrix.constvalue.SearchExpression; import neatlogic.framework.matrix.core.IMatrixDataSourceHandler; import neatlogic.framework.matrix.core.MatrixDataSourceHandlerFactory; @@ -70,15 +71,21 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase @Input({ @Param(name = "keyword", desc = "关键字", type = ApiParamType.STRING, xss = true), - @Param(name = "matrixUuid", desc = "矩阵Uuid", type = ApiParamType.STRING, isRequired = true), + @Param(name = "matrixUuid", desc = "矩阵Uuid", type = ApiParamType.STRING), @Param(name = "keywordColumn", desc = "关键字属性uuid", type = ApiParamType.STRING), - @Param(name = "valueField", desc = "value属性uuid", type = ApiParamType.STRING, isRequired = true), - @Param(name = "textField", desc = "text属性uuid", type = ApiParamType.STRING, isRequired = true), + @Param(name = "valueField", desc = "value属性uuid", type = ApiParamType.STRING), + @Param(name = "textField", desc = "text属性uuid", type = ApiParamType.STRING), @Param(name = "hiddenFieldList", desc = "隐藏属性uuid列表", type = ApiParamType.JSONARRAY), @Param(name = "currentPage", desc = "当前页", type = ApiParamType.INTEGER), @Param(name = "pageSize", desc = "显示条目数", type = ApiParamType.INTEGER), @Param(name = "defaultValue", desc = "精确匹配回显数据参数", type = ApiParamType.JSONARRAY), - @Param(name = "filterList", desc = "过滤条件集合", type = ApiParamType.JSONARRAY) + @Param(name = "filterList", desc = "过滤条件集合", type = ApiParamType.JSONARRAY), + + @Param(name = "matrixLabel", desc = "矩阵名", type = ApiParamType.STRING), + @Param(name = "keywordColumnName", desc = "关键字属性名", type = ApiParamType.STRING), + @Param(name = "valueFieldName", desc = "value属性名", type = ApiParamType.STRING), + @Param(name = "textFieldName", desc = "text属性名", type = ApiParamType.STRING), + @Param(name = "hiddenFieldNameList", desc = "隐藏属性名列表", type = ApiParamType.JSONARRAY) }) @Output({ @Param(name = "dataList", type = ApiParamType.JSONARRAY, desc = "属性数据集合"), @@ -125,13 +132,29 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase public Object myDoService(JSONObject jsonObj) throws Exception { jsonObj.remove("needPage"); MatrixDataVo dataVo = jsonObj.toJavaObject(MatrixDataVo.class); - MatrixVo matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVo(dataVo.getMatrixUuid()); - if (matrixVo == null) { - matrixVo = matrixMapper.getMatrixByUuid(dataVo.getMatrixUuid()); + if (StringUtils.isBlank(dataVo.getMatrixUuid()) && StringUtils.isBlank(dataVo.getMatrixLabel())) { + throw new ParamNotExistsException("matrixUuid", "matrixLabel"); + } + MatrixVo matrixVo = null; + if (StringUtils.isNotBlank(dataVo.getMatrixUuid())) { + matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVo(dataVo.getMatrixUuid()); + if (matrixVo == null) { + matrixVo = matrixMapper.getMatrixByUuid(dataVo.getMatrixUuid()); + if (matrixVo == null) { + throw new MatrixNotFoundException(dataVo.getMatrixUuid()); + } + } + } else if (StringUtils.isNotBlank(dataVo.getMatrixLabel())) { + matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVoByLabel(dataVo.getMatrixLabel()); if (matrixVo == null) { - throw new MatrixNotFoundException(dataVo.getMatrixUuid()); + matrixVo = matrixMapper.getMatrixByLabel(dataVo.getMatrixLabel()); + if (matrixVo == null) { + throw new MatrixNotFoundException(dataVo.getMatrixLabel()); + } } + dataVo.setMatrixUuid(matrixVo.getUuid()); } + IMatrixDataSourceHandler matrixDataSourceHandler = MatrixDataSourceHandlerFactory.getHandler(matrixVo.getType()); if (matrixDataSourceHandler == null) { throw new MatrixDataSourceHandlerNotFoundException(matrixVo.getType()); @@ -141,14 +164,28 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase if (CollectionUtils.isEmpty(matrixAttributeList)) { return new JSONObject(); } + Map nameToUuidMap = matrixAttributeList.stream().collect(Collectors.toMap(MatrixAttributeVo::getName, MatrixAttributeVo::getUuid)); List filterList = dataVo.getFilterList(); if (CollectionUtils.isNotEmpty(filterList)) { Iterator iterator = filterList.iterator(); while (iterator.hasNext()) { MatrixFilterVo matrixFilterVo = iterator.next(); if (StringUtils.isBlank(matrixFilterVo.getUuid())) { - iterator.remove(); - } else if (CollectionUtils.isEmpty(matrixFilterVo.getValueList())) { + if (StringUtils.isBlank(matrixFilterVo.getName())) { + iterator.remove(); + continue; + } + String attrUuid = nameToUuidMap.get(matrixFilterVo.getName()); + if (StringUtils.isBlank(attrUuid)) { + iterator.remove(); + continue; + } + matrixFilterVo.setUuid(attrUuid); + } + if (CollectionUtils.isEmpty(matrixFilterVo.getValueList()) + && !Objects.equals(matrixFilterVo.getExpression(), SearchExpression.NULL.getExpression()) + && !Objects.equals(matrixFilterVo.getExpression(), SearchExpression.NOTNULL.getExpression()) + ) { iterator.remove(); } } @@ -156,13 +193,37 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase Set notNullColumnSet = new HashSet<>(); List attributeList = matrixAttributeList.stream().map(MatrixAttributeVo::getUuid).collect(Collectors.toList()); String valueField = jsonObj.getString("valueField"); - if (!attributeList.contains(valueField)) { - throw new MatrixAttributeNotFoundException(matrixVo.getName(), valueField); + String valueFieldName = jsonObj.getString("valueFieldName"); + if (StringUtils.isNotBlank(valueField)) { + if (!attributeList.contains(valueField)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), valueField); + } + } else { + if (StringUtils.isBlank(valueFieldName)) { + throw new ParamNotExistsException("valueField", "valueFieldName"); + } + String attrUuid = nameToUuidMap.get(valueFieldName); + if (StringUtils.isBlank(attrUuid)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), valueFieldName); + } + valueField = attrUuid; } notNullColumnSet.add(valueField); String textField = jsonObj.getString("textField"); - if (!attributeList.contains(textField)) { - throw new MatrixAttributeNotFoundException(matrixVo.getName(), textField); + String textFieldName = jsonObj.getString("textFieldName"); + if (StringUtils.isNotBlank(textField)) { + if (!attributeList.contains(textField)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), textField); + } + } else { + if (StringUtils.isBlank(textFieldName)) { + throw new ParamNotExistsException("textField", "textFieldName"); + } + String attrUuid = nameToUuidMap.get(textFieldName); + if (StringUtils.isBlank(attrUuid)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), textFieldName); + } + textField = attrUuid; } List> resultList = new ArrayList<>(); dataVo.setKeywordColumn(textField); @@ -171,6 +232,7 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase columnList.add(valueField); columnList.add(textField); JSONArray hiddenFieldList = jsonObj.getJSONArray("hiddenFieldList"); + JSONArray hiddenFieldNameList = jsonObj.getJSONArray("hiddenFieldNameList"); if (CollectionUtils.isNotEmpty(hiddenFieldList)) { for (int i = 0; i < hiddenFieldList.size(); i++) { String hiddenField = hiddenFieldList.getString(i); @@ -181,9 +243,31 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase columnList.add(hiddenField); } } + } else if (CollectionUtils.isNotEmpty(hiddenFieldNameList)) { + for (int i = 0; i < hiddenFieldNameList.size(); i++) { + String hiddenFieldName = hiddenFieldNameList.getString(i); + if (StringUtils.isBlank(hiddenFieldName)) { + continue; + } + String hiddenField = nameToUuidMap.get(hiddenFieldName); + if (StringUtils.isBlank(hiddenField)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), hiddenFieldName); + } + columnList.add(hiddenField); + } } dataVo.setColumnList(columnList); dataVo.setNotNullColumnList(new ArrayList<>(notNullColumnSet)); + + String keywordColumn = dataVo.getKeywordColumn(); + String keywordColumnName = dataVo.getKeywordColumnName(); + if (StringUtils.isBlank(keywordColumn) && StringUtils.isNotBlank(keywordColumnName)) { + String attrUuid = nameToUuidMap.get(keywordColumnName); + if (StringUtils.isBlank(attrUuid)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), keywordColumnName); + } + dataVo.setKeywordColumn(attrUuid); + } JSONArray defaultValue = dataVo.getDefaultValue(); if (CollectionUtils.isNotEmpty(defaultValue)) { List defaultValueFilterList = new ArrayList<>(); @@ -264,6 +348,25 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase element.put(hiddenField, hiddenFieldValue); } } + } else if (CollectionUtils.isNotEmpty(hiddenFieldNameList)) { + for (int i = 0; i < hiddenFieldNameList.size(); i++) { + String hiddenFieldName = hiddenFieldNameList.getString(i); + if (StringUtils.isBlank(hiddenFieldName)) { + continue; + } + String hiddenField = nameToUuidMap.get(hiddenFieldName); + if (StringUtils.isBlank(hiddenField)) { + continue; + } + if (Objects.equals(hiddenField, valueField)) { + continue; + } + JSONObject hiddenFieldObj = result.get(hiddenField); + if (MapUtils.isNotEmpty(hiddenFieldObj)) { + String hiddenFieldValue = hiddenFieldObj.getString("value"); + element.put(hiddenFieldName, hiddenFieldValue); + } + } } dataList.add(element); } diff --git a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForTableNewApi.java b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForTableNewApi.java index 4335cf3d..20a8ca92 100644 --- a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForTableNewApi.java +++ b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForTableNewApi.java @@ -17,6 +17,7 @@ package neatlogic.module.tenant.api.matrix; import neatlogic.framework.common.constvalue.ApiParamType; import neatlogic.framework.common.dto.BasePageVo; +import neatlogic.framework.exception.type.ParamNotExistsException; import neatlogic.framework.matrix.constvalue.SearchExpression; import neatlogic.framework.matrix.core.IMatrixDataSourceHandler; import neatlogic.framework.matrix.core.MatrixDataSourceHandlerFactory; @@ -64,14 +65,17 @@ public class MatrixColumnDataSearchForTableNewApi extends PrivateApiComponentBas } @Input({ - @Param(name = "matrixUuid", desc = "矩阵Uuid", type = ApiParamType.STRING, isRequired = true), + @Param(name = "matrixUuid", desc = "矩阵Uuid", type = ApiParamType.STRING), @Param(name = "defaultValue", desc = "需要回显的数据uuid集合", type = ApiParamType.JSONARRAY), - @Param(name = "columnList", desc = "目标属性集合,数据按这个字段顺序返回", type = ApiParamType.JSONARRAY, isRequired = true, minSize = 1), + @Param(name = "columnList", desc = "目标属性集合,数据按这个字段顺序返回", type = ApiParamType.JSONARRAY, minSize = 1), @Param(name = "searchColumnList ", desc = "搜索属性集合", type = ApiParamType.JSONARRAY), @Param(name = "needPage", type = ApiParamType.BOOLEAN, desc = "是否需要分页,默认true"), @Param(name = "pageSize", type = ApiParamType.INTEGER, desc = "每页条目"), @Param(name = "currentPage", type = ApiParamType.INTEGER, desc = "当前页"), - @Param(name = "filterList", desc = "过滤条件集合", type = ApiParamType.JSONARRAY) + @Param(name = "filterList", desc = "过滤条件集合", type = ApiParamType.JSONARRAY), + + @Param(name = "matrixLabel", desc = "矩阵名", type = ApiParamType.STRING), + @Param(name = "columnNameList", desc = "目标属性集合,数据按这个字段顺序返回", type = ApiParamType.JSONARRAY, minSize = 1), }) @Description(desc = "矩阵属性数据查询-table接口") @Output({ @@ -121,28 +125,57 @@ public class MatrixColumnDataSearchForTableNewApi extends PrivateApiComponentBas @Override public Object myDoService(JSONObject jsonObj) throws Exception { MatrixDataVo dataVo = jsonObj.toJavaObject(MatrixDataVo.class); - List columnList = dataVo.getColumnList(); - - MatrixVo matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVo(dataVo.getMatrixUuid()); - if (matrixVo == null) { - matrixVo = matrixMapper.getMatrixByUuid(dataVo.getMatrixUuid()); + if (StringUtils.isBlank(dataVo.getMatrixUuid()) && StringUtils.isBlank(dataVo.getMatrixLabel())) { + throw new ParamNotExistsException("matrixUuid", "matrixLabel"); + } + MatrixVo matrixVo = null; + if (StringUtils.isNotBlank(dataVo.getMatrixUuid())) { + matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVo(dataVo.getMatrixUuid()); + if (matrixVo == null) { + matrixVo = matrixMapper.getMatrixByUuid(dataVo.getMatrixUuid()); + if (matrixVo == null) { + throw new MatrixNotFoundException(dataVo.getMatrixUuid()); + } + } + } else if (StringUtils.isNotBlank(dataVo.getMatrixLabel())) { + matrixVo = MatrixPrivateDataSourceHandlerFactory.getMatrixVoByLabel(dataVo.getMatrixLabel()); if (matrixVo == null) { - throw new MatrixNotFoundException(dataVo.getMatrixUuid()); + matrixVo = matrixMapper.getMatrixByLabel(dataVo.getMatrixLabel()); + if (matrixVo == null) { + throw new MatrixNotFoundException(dataVo.getMatrixLabel()); + } } + dataVo.setMatrixUuid(matrixVo.getUuid()); } + String type = matrixVo.getType(); IMatrixDataSourceHandler matrixDataSourceHandler = MatrixDataSourceHandlerFactory.getHandler(type); if (matrixDataSourceHandler == null) { throw new MatrixDataSourceHandlerNotFoundException(type); } + List matrixAttributeList = matrixDataSourceHandler.getAttributeList(matrixVo); + if (CollectionUtils.isEmpty(matrixAttributeList)) { + return new JSONObject(); + } + Map nameToUuidMap = matrixAttributeList.stream().collect(Collectors.toMap(MatrixAttributeVo::getName, MatrixAttributeVo::getUuid)); List filterList = dataVo.getFilterList(); if (CollectionUtils.isNotEmpty(filterList)) { Iterator iterator = filterList.iterator(); while (iterator.hasNext()) { MatrixFilterVo matrixFilterVo = iterator.next(); if (StringUtils.isBlank(matrixFilterVo.getUuid())) { - iterator.remove(); - } else if (CollectionUtils.isEmpty(matrixFilterVo.getValueList()) + if (StringUtils.isBlank(matrixFilterVo.getName())) { + iterator.remove(); + continue; + } + String attrUuid = nameToUuidMap.get(matrixFilterVo.getName()); + if (StringUtils.isBlank(attrUuid)) { + iterator.remove(); + continue; + } + matrixFilterVo.setUuid(attrUuid); + } + if (CollectionUtils.isEmpty(matrixFilterVo.getValueList()) && !Objects.equals(matrixFilterVo.getExpression(), SearchExpression.NULL.getExpression()) && !Objects.equals(matrixFilterVo.getExpression(), SearchExpression.NOTNULL.getExpression()) ) { @@ -150,17 +183,55 @@ public class MatrixColumnDataSearchForTableNewApi extends PrivateApiComponentBas } } } - List matrixAttributeList = matrixDataSourceHandler.getAttributeList(matrixVo); - if (CollectionUtils.isEmpty(matrixAttributeList)) { - return new JSONObject(); - } + List attributeUuidList = matrixAttributeList.stream().map(MatrixAttributeVo::getUuid).collect(Collectors.toList()); - List notFoundColumnList = ListUtils.removeAll(columnList, attributeUuidList); - if (CollectionUtils.isNotEmpty(notFoundColumnList)) { - throw new MatrixAttributeNotFoundException(matrixVo.getName(), String.join(",", notFoundColumnList)); + List columnNameList = dataVo.getColumnNameList(); + if (CollectionUtils.isNotEmpty(dataVo.getColumnList())) { + dataVo.setColumnNameList(null); + List notFoundColumnList = ListUtils.removeAll(dataVo.getColumnList(), attributeUuidList); + if (CollectionUtils.isNotEmpty(notFoundColumnList)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), String.join(",", notFoundColumnList)); + } + } else if (CollectionUtils.isNotEmpty(columnNameList)) { + List columnList = new ArrayList<>(); + List notFoundColumnList = new ArrayList<>(); + for (String columnName : columnNameList) { + if (StringUtils.isBlank(columnName)) { + continue; + } + String column = nameToUuidMap.get(columnName); + if (StringUtils.isBlank(column)) { + notFoundColumnList.add(columnName); + } else { + columnList.add(column); + } + } + if (CollectionUtils.isNotEmpty(notFoundColumnList)) { + throw new MatrixAttributeNotFoundException(matrixVo.getName(), String.join(",", notFoundColumnList)); + } + dataVo.setColumnList(columnList); } List> tbodyList = matrixDataSourceHandler.searchTableDataNew(dataVo); - JSONArray theadList = getTheadList(dataVo.getMatrixUuid(), matrixAttributeList, dataVo.getColumnList()); + if (CollectionUtils.isNotEmpty(columnNameList)) { + List> newTbodyList = new ArrayList<>(); + for (Map tbody : tbodyList) { + Map newTbody = new HashMap<>(); + for (String columnName : columnNameList) { + String attrUuid = nameToUuidMap.get(columnName); + if (StringUtils.isBlank(attrUuid)) { + continue; + } + JSONObject jsonObject = tbody.get(attrUuid); + if (jsonObject == null) { + continue; + } + newTbody.put(columnName, jsonObject); + } + newTbodyList.add(newTbody); + } + tbodyList = newTbodyList; + } + JSONArray theadList = getTheadList(dataVo.getMatrixUuid(), matrixAttributeList, dataVo.getColumnList(), columnNameList); JSONObject returnObj = TableResultUtil.getResult(theadList, tbodyList, dataVo); JSONArray searchColumnArray = jsonObj.getJSONArray("searchColumnList"); returnObj.put("searchColumnDetailList", getSearchColumnDetailList(dataVo.getMatrixUuid(), matrixAttributeList, searchColumnArray)); @@ -188,7 +259,10 @@ public class MatrixColumnDataSearchForTableNewApi extends PrivateApiComponentBas return null; } - private JSONArray getTheadList(String matrixUuid, List attributeList, List columnList) { + private JSONArray getTheadList(String matrixUuid, List attributeList, List columnList, List columnNameList) { + if (columnNameList == null) { + columnNameList = new ArrayList<>(); + } Map attributeMap = new HashMap<>(); for (MatrixAttributeVo attribute : attributeList) { attributeMap.put(attribute.getUuid(), attribute); @@ -200,7 +274,11 @@ public class MatrixColumnDataSearchForTableNewApi extends PrivateApiComponentBas throw new MatrixAttributeNotFoundException(matrixUuid, column); } JSONObject theadObj = new JSONObject(); - theadObj.put("key", attribute.getUuid()); + if (columnNameList.contains(attribute.getName())) { + theadObj.put("key", attribute.getName()); + } else { + theadObj.put("key", attribute.getUuid()); + } theadObj.put("title", attribute.getName()); theadList.add(theadObj); } -- Gitee From e373630d8fcc4dc38ac0b8a9ec5ec10bcb06edc2 Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Wed, 17 Apr 2024 16:04:00 +0800 Subject: [PATCH 2/2] =?UTF-8?q?[=E5=8A=9F=E8=83=BD]=20=E7=9F=A9=E9=98=B5?= =?UTF-8?q?=E4=B8=A4=E4=B8=AA=E6=8E=A5=E5=8F=A3=E6=94=AF=E6=8C=81matrixLab?= =?UTF-8?q?el=E6=9B=BF=E4=BB=A3matrixUuid=EF=BC=8CattrName=E6=9B=BF?= =?UTF-8?q?=E4=BB=A3attrUuid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 关联 #[1136926608818176]矩阵两个接口支持matrixLabel替代matrixUuid,attrName替代attrUuid http://192.168.0.96:8090/demo/rdm.html#/story-detail/939050947543040/939050947543042/1136926608818176 --- .../MatrixColumnDataSearchForSelectApi.java | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java index e06d1e30..5e9359af 100644 --- a/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java +++ b/src/main/java/neatlogic/module/tenant/api/matrix/MatrixColumnDataSearchForSelectApi.java @@ -271,8 +271,7 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase JSONArray defaultValue = dataVo.getDefaultValue(); if (CollectionUtils.isNotEmpty(defaultValue)) { List defaultValueFilterList = new ArrayList<>(); - for (int i = 0; i < defaultValue.size(); i++) { - Object defaultValueObject = defaultValue.get(i); + for (Object defaultValueObject : defaultValue) { if (defaultValueObject instanceof JSONObject) { JSONObject defaultValueObj = (JSONObject) defaultValueObject; String value = defaultValueObj.getString("value"); @@ -304,14 +303,10 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase while (resultList.size() < pageSize) { currentPage++; dataVo.setCurrentPage(currentPage); - if (currentPage < startPage) { - List> list = matrixDataSourceHandler.searchTableDataNew(dataVo); - deduplicateData(previousPageList, valueField, textField, list); - previousPageList.addAll(list); - } else { - List> list = matrixDataSourceHandler.searchTableDataNew(dataVo); - deduplicateData(previousPageList, valueField, textField, list); - previousPageList.addAll(list); + List> list = matrixDataSourceHandler.searchTableDataNew(dataVo); + deduplicateData(previousPageList, valueField, textField, list); + previousPageList.addAll(list); + if (currentPage >= startPage) { resultList.addAll(list); } if (currentPage >= dataVo.getPageCount()) { @@ -400,9 +395,7 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase duplicateValue.add(value); } String text = secondObj.getString("text"); - if (duplicateText.contains(text)) { - continue; - } else { + if (!duplicateText.contains(text)) { duplicateText.add(text); } } @@ -430,7 +423,6 @@ public class MatrixColumnDataSearchForSelectApi extends PrivateApiComponentBase String text = secondObj.getString("text"); if (duplicateText.contains(text)) { iterator.remove(); - continue; } else { duplicateText.add(text); } -- Gitee