From c7795eb09f3059f1a0310bc817e2fa0e9e64d29e Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期四, 26 六月 2025 21:15:01 +0800
Subject: [PATCH] Merge branch 'master' of http://118.89.139.230:10101/r/powerIntelligenceSystem

---
 src/main/java/com/whyc/service/PwrdevAcdcdataService.java |   39 ++++++++++++++++++++++++++++++++++++++-
 1 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/whyc/service/PwrdevAcdcdataService.java b/src/main/java/com/whyc/service/PwrdevAcdcdataService.java
index 3006233..7a80f2d 100644
--- a/src/main/java/com/whyc/service/PwrdevAcdcdataService.java
+++ b/src/main/java/com/whyc/service/PwrdevAcdcdataService.java
@@ -3,11 +3,20 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.whyc.dto.Real.PwrHisRealAcInDto;
 import com.whyc.dto.Real.PwrHisRealDcoutInDto;
+import com.whyc.dto.RealDataStatic.ResRealDataAc;
+import com.whyc.dto.RealDataStatic.SticRealDataAc;
 import com.whyc.mapper.PwrdevAcdcdataMapper;
+import com.whyc.pojo.db_data_history.PwrdevHistorydataId;
 import com.whyc.pojo.db_ram_db.BattRtstate;
 import com.whyc.pojo.db_ram_db.PwrdevAcdcdata;
+import com.whyc.util.ActionUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 @Service
 public class PwrdevAcdcdataService {
@@ -32,5 +41,33 @@
         PwrHisRealDcoutInDto dcoutDto=mapper.getPwrRealDcOut(powerId);
         return dcoutDto;
     }
-
+    //瀹炴椂鏁版嵁缁熻鏇茬嚎-浜ゆ祦鍗曞厓
+    public ResRealDataAc getSticRealDataAc(SticRealDataAc realDataAc) throws NoSuchFieldException, IllegalAccessException {
+        Integer powerId=realDataAc.getPowerId();
+        Map<String,List<String>> propertyInfo=realDataAc.getPropertyInfo();
+        QueryWrapper wrapper=new QueryWrapper();
+        wrapper.eq("power_id",powerId);
+        wrapper.last("limit 1");
+        PwrdevAcdcdata pwr=mapper.selectOne(wrapper);
+        ResRealDataAc data=new ResRealDataAc();
+        if(pwr!=null){
+            data.setRecordDatetime(pwr.getRecordDatetime());
+            Map<String, Map<String,Float>>dataMap=new HashMap<>();
+            for (Map.Entry<String, List<String>> entry : propertyInfo.entrySet()) {
+                String key = entry.getKey();
+                List<String> valueList = entry.getValue();
+                Map<String,Float> propertyMap=new HashMap<>();
+                for (String value : valueList) {
+                    String propertyName = ActionUtil.toCamelCase(value);
+                    Field field = PwrdevAcdcdata.class.getDeclaredField(propertyName);
+                    field.setAccessible(true); // 濡傛灉瀛楁鏄鏈夌殑锛岄渶瑕佽缃负鍙闂�
+                    Float propertyValue = (Float) field.get(pwr);
+                    propertyMap.put(value,propertyValue);
+                }
+                dataMap.put(key,propertyMap);
+            }
+            data.setPropertyInfo(dataMap);
+        }
+        return data;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.1