From efd06734fc113f13db777c30c52bf6f8a98c32b0 Mon Sep 17 00:00:00 2001 From: wisonic Date: Fri, 29 Aug 2025 16:57:18 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=9B=BE=E8=A1=A8):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E6=98=8E=E7=BB=86=E8=A1=A8=E5=90=88=E5=B9=B6=E5=8D=95=E5=85=83?= =?UTF-8?q?=E6=A0=BC=E5=90=8E=EF=BC=8C=E7=BB=B4=E5=BA=A6=E5=88=97=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E7=A9=BA=E5=80=BC=E6=97=B6=E5=AF=BC=E5=87=BA=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=20#16777?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataease/chart/server/ChartDataServer.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java b/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java index 98f1b8f144..7a06316895 100644 --- a/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java +++ b/core/core-backend/src/main/java/io/dataease/chart/server/ChartDataServer.java @@ -555,12 +555,22 @@ public class ChartDataServer implements ChartDataApi { var preRowRange = preRange.get(preRangeIndex); var start = preRowRange[0]; var end = preRowRange[1]; - var lastColValue = data.get(start)[curColIndex].toString(); + var lastColValue = data.get(start)[curColIndex]; + if (lastColValue != null) { + lastColValue = lastColValue.toString(); + } else { + lastColValue = ""; + } var lastRowIndex = start; for (Integer curRowIndex = start + 1; curRowIndex <= end; curRowIndex++) { var curRow = data.get(curRowIndex); - var curColValue = curRow[curColIndex].toString(); - if (!StringUtils.equals(lastColValue, curColValue) && (curRowIndex - lastRowIndex > 1)) { + var curColValue = curRow[curColIndex]; + if (curColValue != null) { + curColValue = curColValue.toString(); + } else { + curColValue = ""; + } + if (!StringUtils.equals(lastColValue.toString(), curColValue.toString()) && (curRowIndex - lastRowIndex > 1)) { curRange.add(new Integer[]{lastRowIndex, curRowIndex - 1}); result.add(new CellRangeAddress(lastRowIndex + offsetHeight, curRowIndex + offsetHeight - 1, curColIndex, curColIndex)); } @@ -568,7 +578,7 @@ public class ChartDataServer implements ChartDataApi { curRange.add(new Integer[]{lastRowIndex, curRowIndex}); result.add(new CellRangeAddress(lastRowIndex + offsetHeight, curRowIndex + offsetHeight, curColIndex, curColIndex)); } - if (!StringUtils.equals(lastColValue, curColValue)) { + if (!StringUtils.equals(lastColValue.toString(), curColValue.toString())) { lastColValue = curColValue; lastRowIndex = curRowIndex; }