From d424e1540075f5271f5297cc1908c1a416bb49be Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Mon, 10 Jan 2022 15:28:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A4=9A=E5=AD=97=E6=AE=B5=E6=9E=9A?= =?UTF-8?q?=E4=B8=BENPE=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataset/DataSetTableFieldController.java | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java index 3b72309c60..7d66eac976 100644 --- a/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java +++ b/backend/src/main/java/io/dataease/controller/dataset/DataSetTableFieldController.java @@ -23,6 +23,8 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; +import cn.hutool.core.collection.CollectionUtil; + import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.*; @@ -100,8 +102,10 @@ public class DataSetTableFieldController { @ApiOperation("多字段值枚举") @PostMapping("linkMultFieldValues") - public List linkMultFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { - HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + public List linkMultFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) + throws Exception { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); String linkToken = request.getHeader(F2CLinkFilter.LINK_TOKEN_KEY); DecodedJWT jwt = JWT.decode(linkToken); Long userId = jwt.getClaim("userId").asLong(); @@ -114,18 +118,21 @@ public class DataSetTableFieldController { public List multFieldValues(@RequestBody MultFieldValuesRequest multFieldValuesRequest) throws Exception { List results = new ArrayList<>(); for (String fieldId : multFieldValuesRequest.getFieldIds()) { - results.addAll(dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId())); + List fieldValues = dataSetFieldService.fieldValues(fieldId, multFieldValuesRequest.getUserId()); + if (CollectionUtil.isNotEmpty(fieldValues)) { + results.addAll(fieldValues); + } + } ArrayList list = results.stream().collect( Collectors.collectingAndThen( Collectors.toCollection( () -> new TreeSet<>(Comparator.comparing(t -> { - if (ObjectUtils.isEmpty(t)) return ""; + if (ObjectUtils.isEmpty(t)) + return ""; return t.toString(); - })) - ), ArrayList::new - ) - ); + }))), + ArrayList::new)); return list; } }