From a9f305fc48e6b1d8d8fd7caf9e04598de52dcfd0 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期四, 16 一月 2025 18:41:50 +0800
Subject: [PATCH] 计算指标查询异常修复

---
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/CalItemHandler.java  |   12 ++++++++++--
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/AtomItemHandler.java |    9 ++++++---
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/DerItemHandler.java  |    3 ++-
 3 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/AtomItemHandler.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/AtomItemHandler.java
index fcc4dd5..5c2f392 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/AtomItemHandler.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/AtomItemHandler.java
@@ -7,6 +7,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -31,9 +32,11 @@
         try {
             QuerySourceValueDTO queryDto = indSqlUtils.getAtomSql(itemId);
             result = indItemValueService.getSourceValue(queryDto);
-            result.forEach(item -> {
-                item.setItemNo(queryDto.getItemNo());
-            });
+            if (!CollectionUtils.isEmpty(result)) {
+                result.forEach(item -> {
+                    item.setItemNo(queryDto.getItemNo());
+                });
+            }
         } catch (Exception ex) {
             ex.printStackTrace();
         }
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/CalItemHandler.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/CalItemHandler.java
index e2b3297..48a3c7b 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/CalItemHandler.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/CalItemHandler.java
@@ -14,6 +14,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
@@ -63,16 +64,23 @@
                 }
                 IndItemEntity subItem = indItemService.getInfoByNo(s);
                 ItemTypeEnum itemType = ItemTypeEnum.getEumByCode(subItem.getItemType());
+                List<IndItemValueVO> vl = new ArrayList<>();
                 switch (itemType) {
                     case ATOM:
-                        valueMix.add(atomItemHandler.queryValue(subItem.getId()));
+                        vl = atomItemHandler.queryValue(subItem.getId());
                         break;
                     case DER:
-                        valueMix.add(derItemHandler.queryValue(subItem.getId()));
+                        vl = derItemHandler.queryValue(subItem.getId());
                         break;
                     default:
                         break;
                 }
+                if (!CollectionUtils.isEmpty(vl)) {
+                    vl.forEach(vi -> {
+                        vi.setItemNo(s);
+                    });
+                }
+                valueMix.add(vl);
             }
             dataLength = valueMix.get(0).size();
 
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/DerItemHandler.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/DerItemHandler.java
index 404f4c5..f76c567 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/DerItemHandler.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/ind/collection/handler/DerItemHandler.java
@@ -7,6 +7,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -31,7 +32,7 @@
         List<IndItemValueVO> result = new ArrayList<IndItemValueVO>();
         try {
             QuerySourceValueDTO queryDto = indSqlUtils.getDerSql(itemId);
-            return indItemValueService.getSourceValue(queryDto);
+            result = indItemValueService.getSourceValue(queryDto);
         } catch (Exception ex) {
             ex.printStackTrace();
         }

--
Gitblit v1.9.3