yangjunfeng преди 1 година
родител
ревизия
c4e63e07c9

+ 40 - 1
hnls-scada/src/main/java/com/tofly/scada/service/impl/IOServerServiceImpl.java

@@ -169,7 +169,46 @@ public class IOServerServiceImpl implements IOServerService {
         log.info("IOServer获取指定变量列表实时值,返回参数{}", s);
         IOServerResultVo ioServerResultVo = JSONObject.parseObject(s, IOServerResultVo.class);
         if (null != ioServerResultVo && 0 == ioServerResultVo.getCode()) {
-            return JSONObject.parseArray(ioServerResultVo.getData().toString(), IOServerDataInfoVo.class);
+            List<IOServerDataInfoVo> list = JSONObject.parseArray(ioServerResultVo.getData().toString(), IOServerDataInfoVo.class);
+            List<String> codes = new ArrayList<>();
+            codes.add("PosFeedback_FV2_1");
+            codes.add("State_FV2_1");
+            Map<String, Long> collect = monitorService.list(new QueryWrapper<ScadaMonitor>().lambda()
+                    .in(ScadaMonitor::getCode, codes).select(ScadaMonitor::getId, ScadaMonitor::getCode)).stream().collect(Collectors.toMap(ScadaMonitor::getCode, ScadaMonitor::getId, ((k, v) -> v)));
+            list.forEach(i -> {
+                        String n = i.getN();
+                        String v = i.getV();
+                        if("false".equals(v)){
+                            v = "0";
+                        }else if("true".equals(v)){
+                            v = "1";
+                        }
+                        Date t = new Date();
+                        Scada scada = new Scada();
+                        scada.setCode(n);
+                        scada.setValue(v);
+                        scada.setScadaTime(t);
+                        scada.setUpdateTime(t);
+                        ScadaMonitor scadaMonitor = new ScadaMonitor();
+                        scadaMonitor.setCode(n);
+                        scadaMonitor.setValue(v);
+                        scadaMonitor.setScadaTime(t);
+                        scadaMonitor.setUpdateTime(t);
+                        ScadaIoserverHis his = new ScadaIoserverHis();
+                        his.setCode(n);
+                        his.setValue(v);
+                        his.setOperationTime(t);
+                        his.setOperationUser(SecurityUtils.getUserId());
+                        scadaMapper.insert(scada);
+                        if (collect.containsKey(n)) {
+                            scadaMonitor.setId(collect.get(n));
+                            monitorService.updateById(scadaMonitor);
+                        } else {
+                            monitorService.save(scadaMonitor);
+                        }
+                        ioserverHisService.save(his);
+            });
+            return list;
         }
 //        outAuthorization(headers.get("Authorization"));
         return null;

+ 2 - 2
hnls-scada/src/main/resources/bootstrap-pro.yml

@@ -3,7 +3,7 @@ spring:
     nacos:
       config:
         # nacos配置中心指定空间
-        namespace: tofly-xrty-pro
+        namespace: 0896ea21-55fd-48a6-9e40-5d70b63d3118
         # nacos部署IP
         server-addr: tofly-nacos:8848
         # 配置后缀
@@ -20,7 +20,7 @@ spring:
           dataId: public_config_redis.yaml
 
       discovery:
-        namespace: tofly-xrty-pro
+        namespace: 0896ea21-55fd-48a6-9e40-5d70b63d3118
         server-addr: tofly-nacos:8848
   application:
     # 该应用在nacos配置中的名称

+ 1 - 1
hnls-scada/src/main/resources/bootstrap.yml

@@ -1,6 +1,6 @@
 spring:
   profiles:
-    active: loc
+    active: pro
 
 pagehelper:
   helper-dialect: oracle