From 56e254f4c6a3eab1218a4fbea3f60609d209ff95 Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期五, 27 六月 2025 14:19:26 +0800
Subject: [PATCH] 鞍信平均值

---
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsag.java        |   89 ++++++++++++++
 /dev/null                                                                                                                                   |  118 -------------------
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java                    |   13 -
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsMediaType.java |   37 ++++-
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/MeasureHandle.java                  |   26 ++-
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/SourceApiEnum.java                    |    1 
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdb.java        |   24 +++
 iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/MeasurePointValueType.java                      |   32 +++++
 8 files changed, 190 insertions(+), 150 deletions(-)

diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java
index 378df11..3728ef9 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/HttpCollector.java
@@ -8,8 +8,7 @@
 
 import com.iailab.framework.common.constant.CommonConstant;
 import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdb;
-import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdc;
-import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsde;
+import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsMediaType;
 import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdy;
 import com.iailab.module.data.channel.http.collector.ihdb.HttpCollectorForIhd;
 import com.iailab.module.data.channel.http.entity.HttpApiEntity;
@@ -37,10 +36,7 @@
     private HttpCollectorForAsdb httpCollectorForAsdb;
 
     @Autowired
-    private HttpCollectorForAsde httpCollectorForAsde;
-
-    @Autowired
-    private HttpCollectorForAsdc httpCollectorForAsdc;
+    private HttpCollectorForAsMediaType httpCollectorForAsMediaType;
 
     @Autowired
     private HttpCollectorForAsdy httpCollectorForAsdy;
@@ -64,10 +60,9 @@
                 valueMap = httpCollectorForAsdy.getTagValues(apiId, tagNames);
                 break;
             case ASDC:
-                valueMap = httpCollectorForAsdc.getTagValues(apiId, tagNames);
-                break;
             case ASDE:
-                valueMap = httpCollectorForAsde.getTagValues(apiId, tagNames);
+            case ASDM:
+                valueMap = httpCollectorForAsMediaType.getTagValues(apiId, tagNames);
                 break;
             default:
                 break;
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/SourceApiEnum.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/SourceApiEnum.java
index 64193e1..133fd4c 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/SourceApiEnum.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/SourceApiEnum.java
@@ -1,6 +1,5 @@
 package com.iailab.module.data.channel.http.collector;
 
-import com.iailab.module.data.point.common.ExtremalTypeEnum;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsde.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsMediaType.java
similarity index 73%
rename from iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsde.java
rename to iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsMediaType.java
index 8b7a77f..9e087bc 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsde.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsMediaType.java
@@ -9,6 +9,7 @@
 import com.iailab.module.data.channel.http.service.HttpApiService;
 import com.iailab.module.data.common.enums.DataSourceType;
 import com.iailab.module.data.common.utils.TagUtils;
+import com.iailab.module.data.point.common.MeasurePointValueType;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -16,10 +17,7 @@
 import org.springframework.util.CollectionUtils;
 
 import java.math.BigDecimal;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 
 /**
@@ -29,13 +27,16 @@
  */
 @Slf4j
 @Component
-public class HttpCollectorForAsde {
+public class HttpCollectorForAsMediaType {
 
     @Autowired
     private HttpApiService httpApiService;
 
     @Autowired
     private RedisTemplate redisTemplate;
+
+    @Autowired
+    private HttpCollectorForAsag httpCollectorForAsag;
 
     public static final long offset = 10;
 
@@ -90,8 +91,24 @@
             return new HashMap<>();
         }
         try {
-            HttpApiEntity httpApi = this.getHttpApi(params.get(0)[0].toString());
-            this.getByHtp(httpApi.getUrl(), httpApi.getCode(), result, params);
+            List<Object[]> paramsDig = new ArrayList<>();
+            List<Object[]> paramsSim = new ArrayList<>();
+            for (Object[] param : params) {
+                if (((String) param[3]).equals(MeasurePointValueType.DIGITAL.getCode()) || (Integer) param[2] == 0) {
+                    paramsDig.add(param);
+                } else {
+                    paramsSim.add(param);
+                }
+            }
+            if (!CollectionUtils.isEmpty(paramsDig)) {
+                log.info("查询数字量,paramsDig.size(): " + paramsDig.size());
+                HttpApiEntity httpApi = this.getHttpApi(params.get(0)[0].toString());
+                this.getByHtp(httpApi.getUrl(), httpApi.getCode(), result, paramsDig);
+            }
+            if (!CollectionUtils.isEmpty(paramsSim)) {
+                log.info("查询模拟量,paramsSim.size(): " + paramsSim.size());
+                httpCollectorForAsag.getTagValues(paramsSim, collectTime, result);
+            }
         } catch (Exception ex) {
             ex.printStackTrace();
         }
@@ -99,10 +116,10 @@
     }
 
     private void getByHtp(String url, String sourceName, Map<String, Object> result, List<Object[]> params) {
-        log.info("HttpCollectorForAsde.getByHtp:url=" + url);
-        log.info("HttpCollectorForAsde.getByHtp:params=" + JSONArray.toJSONString(params));
+        log.info("HttpCollectorForAsMediaType.getByHtp:url=" + url);
+        log.info("HttpCollectorForAsMediaType.getByHtp:params=" + JSONArray.toJSONString(params));
         String responseStr = HttpUtils.sendGet(url, null, "");
-        log.info("HttpCollectorForAsde.getByHtp:responseStr=" + responseStr);
+        log.info("HttpCollectorForAsMediaType.getByHtp:responseStr=" + responseStr);
         List<HttpAsdbRespDataVO> dataList = JSON.parseArray(responseStr, HttpAsdbRespDataVO.class);
         Map<String, HttpAsdbRespDataVO> valueGroup = new HashMap<>();
         for (HttpAsdbRespDataVO data : dataList) {
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsag.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsag.java
new file mode 100644
index 0000000..a912427
--- /dev/null
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsag.java
@@ -0,0 +1,89 @@
+package com.iailab.module.data.channel.http.collector.asdb;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.iailab.framework.common.util.http.HttpUtils;
+import com.iailab.module.data.channel.http.entity.HttpApiEntity;
+import com.iailab.module.data.channel.http.service.HttpApiService;
+import com.iailab.module.data.common.enums.DataSourceType;
+import com.iailab.module.data.common.utils.DateUtils;
+import com.iailab.module.data.common.utils.TagUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Component;
+
+import java.util.*;
+
+/**
+ * 鞍信平均值接口
+ * GET
+ * http://10.50.37.1:8806/batch/xxb/getDagongHistoryPointAvg?point=E1Q00001001&startTime=2025-06-25 09:16:00&endTime=2025-06-25 09:17:00
+ * {
+ * "E1Q00001001": 16.747500000000002
+ * }
+ *
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月27日
+ */
+@Slf4j
+@Component
+public class HttpCollectorForAsag {
+
+    @Autowired
+    private HttpApiService httpApiService;
+
+    @Autowired
+    private RedisTemplate redisTemplate;
+
+    public static final long offset = 10;
+
+    private final static String API_CODE = "ASAG";
+
+    private static String api_url;
+
+    private HttpApiEntity getHttpApi(String id) {
+        return httpApiService.getFromCatch(id);
+    }
+
+    public Map<String, Object> getTagValues(List<Object[]> params, Date collectTime, Map<String, Object> result) {
+        try {
+            this.getByHtp(result, params, collectTime);
+        } catch (Exception ex) {
+            log.info("getCurrentValue异常");
+            ex.printStackTrace();
+            throw ex;
+        }
+        return result;
+    }
+
+    private void getByHtp(Map<String, Object> result, List<Object[]> params, Date collectTime) {
+        if (StringUtils.isBlank(api_url)) {
+            HttpApiEntity apiEntity = httpApiService.getByCode(API_CODE);
+            api_url = apiEntity.getUrl();
+        }
+        for (Object[] item : params) {
+            HttpApiEntity httpApi = this.getHttpApi(item[0].toString());
+            String sourceName = httpApi.getCode();
+            Calendar calendar = Calendar.getInstance();
+            calendar.setTime(collectTime);
+            Date endTime = calendar.getTime();
+            calendar.add(Calendar.MINUTE, (Integer) item[2] * -1);
+            Date startTime = calendar.getTime();
+
+            Map<String, String> queryMap = new HashMap<>();
+            String point = item[1].toString();
+            queryMap.put("point", point);
+            queryMap.put("startTime", DateUtils.format(startTime, "yyyy-MM-dd HH:mm:ss"));
+            queryMap.put("endTime", DateUtils.format(endTime, "yyyy-MM-dd HH:mm:ss"));
+            String responseStr = HttpUtils.sendGet(api_url, queryMap, "");
+            JSONObject obj = JSON.parseObject(responseStr);
+            if (obj.containsKey(point)) {
+                Double value = obj.getDouble(point);
+                result.put(TagUtils.genTagId(DataSourceType.HTTP.getCode(), sourceName, point), value);
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdb.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdb.java
index 7c5e119..f8fc261 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdb.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdb.java
@@ -8,6 +8,7 @@
 import com.iailab.module.data.channel.http.service.HttpApiService;
 import com.iailab.module.data.common.enums.DataSourceType;
 import com.iailab.module.data.common.utils.TagUtils;
+import com.iailab.module.data.point.common.MeasurePointValueType;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
@@ -32,6 +33,9 @@
 
     @Autowired
     private RedisTemplate redisTemplate;
+
+    @Autowired
+    private HttpCollectorForAsag httpCollectorForAsag;
 
     public static final long offset = 10;
 
@@ -86,8 +90,24 @@
             return new HashMap<>();
         }
         try {
-            HttpApiEntity httpApi = this.getHttpApi(params.get(0)[0].toString());
-            this.getByHtp(httpApi.getUrl(), httpApi.getCode(), result, params);
+            List<Object[]> paramsSim = new ArrayList<>();
+            List<Object[]> paramsDig = new ArrayList<>();
+            for (Object[] param : params) {
+                if (((String) param[3]).equals(MeasurePointValueType.DIGITAL.getCode()) || (Integer) param[2] == 0) {
+                    paramsDig.add(param);
+                } else {
+                    paramsSim.add(param);
+                }
+            }
+            if (!CollectionUtils.isEmpty(paramsDig)) {
+                log.info("查询数字量,paramsDig.size(): " + paramsDig.size());
+                HttpApiEntity httpApi = this.getHttpApi(params.get(0)[0].toString());
+                this.getByHtp(httpApi.getUrl(), httpApi.getCode(), result, params);
+            }
+            if (!CollectionUtils.isEmpty(paramsSim)) {
+                log.info("查询模拟量,paramsSim.size(): " + paramsSim.size());
+                httpCollectorForAsag.getTagValues(paramsSim, collectTime, result);
+            }
         } catch (Exception ex) {
             ex.printStackTrace();
         }
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdc.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdc.java
deleted file mode 100644
index c17331c..0000000
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/channel/http/collector/asdb/HttpCollectorForAsdc.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package com.iailab.module.data.channel.http.collector.asdb;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
-import com.iailab.framework.common.constant.CommonConstant;
-import com.iailab.framework.common.util.http.HttpUtils;
-import com.iailab.module.data.channel.http.collector.asdb.vo.HttpAsdbRespDataVO;
-import com.iailab.module.data.channel.http.entity.HttpApiEntity;
-import com.iailab.module.data.channel.http.service.HttpApiService;
-import com.iailab.module.data.common.enums.DataSourceType;
-import com.iailab.module.data.common.utils.TagUtils;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.stereotype.Component;
-import org.springframework.util.CollectionUtils;
-
-import java.math.BigDecimal;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
-
-/**
- * @author PanZhibao
- * @Description
- * @createTime 2025年03月28日
- */
-@Slf4j
-@Component
-public class HttpCollectorForAsdc {
-
-    @Autowired
-    private HttpApiService httpApiService;
-
-    @Autowired
-    private RedisTemplate redisTemplate;
-
-    public static final long offset = 10;
-
-    private HttpApiEntity getHttpApi(String id) {
-        return httpApiService.getFromCatch(id);
-    }
-
-    public BigDecimal getTagValue(String sourceId, String tagNo) {
-        BigDecimal value = CommonConstant.BAD_VALUE;
-        HttpApiEntity httpApi = this.getHttpApi(sourceId);
-        //先查缓存
-        String catchKey = "IailabData:" + httpApi.getCode() + ":" + tagNo;
-        if (redisTemplate.hasKey(catchKey)) {
-            log.info("查找IailabData缓存: " + catchKey);
-            return new BigDecimal(redisTemplate.opsForValue().get(catchKey).toString());
-        }
-        String responseStr = HttpUtils.sendGet(httpApi.getUrl(), null, "");
-        List<HttpAsdbRespDataVO> dataList = JSON.parseArray(responseStr, HttpAsdbRespDataVO.class);
-        log.info("存入IailabData缓存: " + catchKey);
-        dataList.forEach(item -> {
-            redisTemplate.opsForValue().set("IailabData:" + httpApi.getCode() + ":" + item.getPoint(), item.getValue().toString(), offset, TimeUnit.SECONDS);
-        });
-        for (HttpAsdbRespDataVO data : dataList){
-            if (tagNo.equals(data.getPoint())){
-                value = data.getValue();
-                break;
-            }
-        }
-        return value;
-    }
-
-    public Map<String, Object> getTagValues(String sourceId, List<String> tagNames) {
-        Map<String, Object> result = new HashMap<>();
-        try {
-            if (CollectionUtils.isEmpty(tagNames)) {
-                return result;
-            }
-            for (String tagName : tagNames) {
-                result.put(tagName, getTagValue(sourceId, tagName));
-            }
-        } catch (Exception ex) {
-            log.info("getCurrentValue异常");
-            ex.printStackTrace();
-            throw ex;
-        }
-        return result;
-    }
-
-    public Map<String, Object> getTagValues(List<Object[]> params, Date collectTime) {
-        Map<String, Object> result = new HashMap<>();
-        if (CollectionUtils.isEmpty(params)) {
-            return new HashMap<>();
-        }
-        try {
-            HttpApiEntity httpApi = this.getHttpApi(params.get(0)[0].toString());
-            this.getByHtp(httpApi.getUrl(), httpApi.getCode(), result, params);
-        } catch (Exception ex) {
-            ex.printStackTrace();
-        }
-        return result;
-    }
-
-    private void getByHtp(String url, String sourceName, Map<String, Object> result, List<Object[]> params) {
-        log.info("HttpCollectorForAsdc.getByHtp:url=" + url);
-        log.info("HttpCollectorForAsdc.getByHtp:params=" + JSONArray.toJSONString(params));
-        String responseStr = HttpUtils.sendGet(url, null, "");
-        log.info("HttpCollectorForAsdc.getByHtp:responseStr=" + responseStr);
-        List<HttpAsdbRespDataVO> dataList = JSON.parseArray(responseStr, HttpAsdbRespDataVO.class);
-        Map<String, HttpAsdbRespDataVO> valueGroup = new HashMap<>();
-        for (HttpAsdbRespDataVO data : dataList) {
-            valueGroup.put(data.getPoint(), data);
-        }
-        for (Object[] item : params) {
-            if (valueGroup.containsKey(item[1].toString())) {
-                HttpAsdbRespDataVO data = valueGroup.get(item[1].toString());
-                result.put(TagUtils.genTagId(DataSourceType.HTTP.getCode(), sourceName, data.getPoint()), data.getValue());
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/MeasureHandle.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/MeasureHandle.java
index 7fb4a6f..68e9cbc 100644
--- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/MeasureHandle.java
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/collection/handler/MeasureHandle.java
@@ -3,8 +3,7 @@
 import com.iailab.framework.common.util.string.StrUtils;
 import com.iailab.module.data.channel.http.collector.SourceApiEnum;
 import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdb;
-import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdc;
-import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsde;
+import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsMediaType;
 import com.iailab.module.data.channel.http.collector.asdb.HttpCollectorForAsdy;
 import com.iailab.module.data.channel.http.collector.ihdb.HttpCollectorForIhd;
 import com.iailab.module.data.channel.opcda.collector.OpcDACollector;
@@ -64,10 +63,7 @@
     private HttpCollectorForAsdb httpCollectorForAsdb;
 
     @Autowired
-    private HttpCollectorForAsde httpCollectorForAsde;
-
-    @Autowired
-    private HttpCollectorForAsdc httpCollectorForAsdc;
+    private HttpCollectorForAsMediaType httpCollectorForAsMediaType;
 
     @Autowired
     private HttpCollectorForAsdy httpCollectorForAsdy;
@@ -94,6 +90,7 @@
         List<Object[]> httpTagAsde = new ArrayList<>();
         List<Object[]> httpTagAsdc = new ArrayList<>();
         List<Object[]> httpTagAsdy = new ArrayList<>();
+        List<Object[]> httpTagAsdm = new ArrayList<>();
 
         dtos.stream().forEach(item -> {
             if (DataSourceType.OPCUA.getCode().equals(item.getSourceType())) {
@@ -125,6 +122,10 @@
                     if (item.getTagNo() != null && item.getDimension() != null && item.getValueType() != null) {
                         httpTagAsdy.add(new Object[]{item.getSourceId(), item.getTagNo(), item.getDimension(), item.getValueType()});
                     }
+                } else if (SourceApiEnum.ASDM.getCode().equals(item.getSourceName())) {
+                    if (item.getTagNo() != null && item.getDimension() != null && item.getValueType() != null) {
+                        httpTagAsdm.add(new Object[]{item.getSourceId(), item.getTagNo(), item.getDimension(), item.getValueType()});
+                    }
                 }
             }
         });
@@ -149,10 +150,13 @@
             tagValues.putAll(httpCollectorForAsdb.getTagValues(httpTagAsdb, collectTime));
         }
         if (!CollectionUtils.isEmpty(httpTagAsde)) {
-            tagValues.putAll(httpCollectorForAsde.getTagValues(httpTagAsde, collectTime));
+            tagValues.putAll(httpCollectorForAsMediaType.getTagValues(httpTagAsde, collectTime));
         }
         if (!CollectionUtils.isEmpty(httpTagAsdc)) {
-            tagValues.putAll(httpCollectorForAsdc.getTagValues(httpTagAsdc, collectTime));
+            tagValues.putAll(httpCollectorForAsMediaType.getTagValues(httpTagAsdc, collectTime));
+        }
+        if (!CollectionUtils.isEmpty(httpTagAsdm)) {
+            tagValues.putAll(httpCollectorForAsMediaType.getTagValues(httpTagAsdm, collectTime));
         }
         if (!CollectionUtils.isEmpty(httpTagAsdy)) {
             tagValues.putAll(httpCollectorForAsdy.getTagValues(httpTagAsdy, collectTime));
@@ -248,9 +252,11 @@
                     } else if (SourceApiEnum.ASDB.getCode().equals(item.getSourceName())) {
                         value = httpCollectorForAsdb.getTagValue(item.getSourceId(), item.getTagNo());
                     } else if (SourceApiEnum.ASDE.getCode().equals(item.getSourceName())) {
-                        value = httpCollectorForAsde.getTagValue(item.getSourceId(), item.getTagNo());
+                        value = httpCollectorForAsMediaType.getTagValue(item.getSourceId(), item.getTagNo());
                     } else if (SourceApiEnum.ASDC.getCode().equals(item.getSourceName())) {
-                        value = httpCollectorForAsdc.getTagValue(item.getSourceId(), item.getTagNo());
+                        value = httpCollectorForAsMediaType.getTagValue(item.getSourceId(), item.getTagNo());
+                    } else if (SourceApiEnum.ASDM.getCode().equals(item.getSourceName())) {
+                        value = httpCollectorForAsMediaType.getTagValue(item.getSourceId(), item.getTagNo());
                     } else if (SourceApiEnum.ASDY.getCode().equals(item.getSourceName())) {
                         value = httpCollectorForAsdy.getTagValue(item.getSourceId(), item.getTagNo());
                     }
diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/MeasurePointValueType.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/MeasurePointValueType.java
new file mode 100644
index 0000000..6a9e096
--- /dev/null
+++ b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/point/common/MeasurePointValueType.java
@@ -0,0 +1,32 @@
+package com.iailab.module.data.point.common;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @author PanZhibao
+ * @Description
+ * @createTime 2025年06月27日
+ */
+@Getter
+@AllArgsConstructor
+public enum MeasurePointValueType {
+    SIMULATE("SIMULATE", "模拟量"),
+    DIGITAL("DIGITAL", "数字量");
+
+    private String code;
+    private String desc;
+
+    public static MeasurePointValueType getEumByCode(String code) {
+        if (code == null) {
+            return null;
+        }
+
+        for (MeasurePointValueType statusEnum : MeasurePointValueType.values()) {
+            if (statusEnum.getCode().equals(code)) {
+                return statusEnum;
+            }
+        }
+        return null;
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.3