From f48c38125956578611832f6017b0cb2ffdbe3725 Mon Sep 17 00:00:00 2001
From: 吴健 <14790700720@163.com>
Date: 星期二, 15 四月 2025 09:00:32 +0800
Subject: [PATCH] add

---
 billion-main/src/main/java/com/billion/main/plc/sub/OPCUaSubscriptionTemp.java |  332 +++++++++++++++++++++++++++---------------------------
 1 files changed, 166 insertions(+), 166 deletions(-)

diff --git a/billion-main/src/main/java/com/billion/main/plc/sub/OPCUaSubscriptionTemp.java b/billion-main/src/main/java/com/billion/main/plc/sub/OPCUaSubscriptionTemp.java
index 1a5b98f..51adbee 100644
--- a/billion-main/src/main/java/com/billion/main/plc/sub/OPCUaSubscriptionTemp.java
+++ b/billion-main/src/main/java/com/billion/main/plc/sub/OPCUaSubscriptionTemp.java
@@ -1,166 +1,166 @@
-package com.billion.main.plc.sub;
-
-
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.util.ObjectUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.billion.main.da.domain.DaParamCollection;
-import com.billion.main.da.service.IDaParamCollectionService;
-import com.billion.main.da.service.IDaStationCollectionService;
-import com.billion.main.plc.constant.Constants;
-import com.billion.main.sc.domain.ScCollectionParamConf;
-import com.billion.main.sc.service.IScCollectionParamConfService;
-import com.kangaroohy.milo.model.ReadWriteEntity;
-import com.kangaroohy.milo.runner.subscription.SubscriptionCallback;
-import com.kangaroohy.milo.service.MiloService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Component;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.concurrent.CompletableFuture;
-import java.util.stream.Collectors;
-
-
-@Slf4j
-public class OPCUaSubscriptionTemp implements SubscriptionCallback {
-
-    public static MiloService miloService;
-    public static IScCollectionParamConfService collectionParamConfService;
-    public static IDaParamCollectionService paramCollectionService;
-    public static IDaStationCollectionService stationCollectionService;
-
-    public OPCUaSubscriptionTemp(MiloService miloService, IScCollectionParamConfService collectionParamConfService
-            , IDaParamCollectionService paramCollectionService, IDaStationCollectionService stationCollectionService) {
-        OPCUaSubscriptionTemp.miloService = miloService;
-        OPCUaSubscriptionTemp.collectionParamConfService = collectionParamConfService;
-        OPCUaSubscriptionTemp.paramCollectionService = paramCollectionService;
-        OPCUaSubscriptionTemp.stationCollectionService = stationCollectionService;
-    }
-
-    @Override
-    public void onSubscribe(String identifier, Object value) {
-        log.info("鍦板潃锛�"+identifier+"鍊硷細"+value);
-        try {
-            if(null != value && !Constants.ZERO.equals(value.toString())) {
-                String[] nodes = identifier.split("[.]");
-                String thoroughfare = nodes[0];//閫氶亾
-                String device = nodes[1];//璁惧
-                String tab = nodes[2];//鏍囪
-                String valueString = value.toString();//鍦板潃鍊�
-
-                CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
-                    subHandle(thoroughfare,device,tab,valueString);
-                });
-
-            }
-        } catch (Exception e) {
-            log.error(e.getMessage());
-        }
-    }
-
-    public void subHandle(String thoroughfare,String device,String tab,String valueString){
-        try{
-            //鐩戝惉recordData
-            if(tab.equals(Constants.RECORD_DATA)){
-                //濡傛灉鏄�1鍋氳繘绔欏鐞�
-                if(valueString.equals(Constants.ONE)){
-                    Object sfcCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".sfcCode").getValue();
-                    if(ObjectUtil.isNotNull(sfcCodeObject)){
-                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_ONE_ONE).build());
-                    }else {
-                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_ONE_TWO).build());
-                    }
-                //濡傛灉鏄�2鍋氬嚭绔欏鐞嗗鐞�
-                }else if(valueString.equals(Constants.TWO)){
-                    String result = Constants.STRING_TWO_ONE;
-                    //璇诲彉閫熺鎬绘垚鐮�
-                    Object sfcCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".sfcCode").getValue();
-                    //涓虹┖鏃讹紝杩斿洖5
-                    if (ObjectUtil.isNull(sfcCodeObject)){
-                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_TWO_FIVE).build());
-                    }else {
-                        String snCode = sfcCodeObject.toString().trim();//浜у搧SN
-                        Object stationStatusObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".StationStatus").getValue();//绔欑姸鎬佸湴鍧�
-                        String stationStatus = stationStatusObjcet.toString();
-                        if (ObjectUtil.isNotNull(stationStatusObjcet)) {
-                            //淇濆瓨鍙傛暟锛屽彂閫佸伐鍘侻ES
-                            result = saveParamCollection(device, snCode, stationStatus);
-                            //淇濆瓨杩囩珯璁板綍
-                            savePassingStation(device,snCode,stationStatus);
-                        }else {
-                            result = Constants.STRING_TWO_THREE;
-                            log.info("璇诲彇鍒板伐浣峽}StationStatus鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}", device, "IS NULL锛�", result);
-                        }
-                    }
-                    miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build());
-                }
-            }
-        }catch (Exception e) {
-            log.error(e.getMessage());
-        }
-    }
-
-    /**
-     * 淇濆瓨杩囩珯鏁版嵁
-     *
-     * @param device       宸ヤ綅
-     * @param snCode       浜у搧搴忓垪鍙�
-     * @return Integer
-     * @throws Exception e
-     */
-    private static Integer savePassingStation(String device, String snCode,String stationStatus){
-        Integer result = 21;
-        try {
-
-
-        } catch (Exception e) {
-            throw new RuntimeException(e);
-        }
-
-        return result;
-    }
-
-    /**
-     * 淇濆瓨鍙傛暟鏁版嵁鍜屽彂閫佸伐鍘侻ES
-     * @param device 宸ヤ綅
-     * @param snCode 浜у搧SN
-     * @param stationStatus 绔欑姸鎬�
-     * @return result
-     * @throws Exception e
-     */
-    private static String saveParamCollection(String device,String snCode,String stationStatus){
-        String result = Constants.STRING_TWO_ONE;//杩斿洖缁撴灉
-        try {
-            //鏌ヨ鍙傛暟閰嶇疆琛�
-            List<ScCollectionParamConf> list = collectionParamConfService.list(new LambdaQueryWrapper<ScCollectionParamConf>()
-                    .eq(ScCollectionParamConf::getLocationCode, device)//宸ヤ綅
-                    .eq(ScCollectionParamConf::getSubscribe, Constants.ONE)//鏄惁閲囬泦
-            );
-            if (CollUtil.isNotEmpty(list)){
-                List<String> collect = list.stream()
-                        .map(ScCollectionParamConf::getNode).collect(Collectors.toList());
-                List<ReadWriteEntity> readWriteEntityList = miloService.readFromOpcUa(collect);
-                ArrayList<DaParamCollection> collectionList = new ArrayList<>();
-                for (int i = 0; i < readWriteEntityList.size(); i++) {
-                    DaParamCollection daParamCollection = new DaParamCollection();
-                    daParamCollection.setSfcCode(snCode);
-                    daParamCollection.setLocationCode(device);
-                    daParamCollection.setParamCode(list.get(i).getParamCode());//鍙傛暟缂栫爜
-                    daParamCollection.setParamName(list.get(i).getParamName());//鍙傛暟鍚嶇О
-                    daParamCollection.setParamValue(readWriteEntityList.get(i).getValue().toString());
-                    daParamCollection.setCollectTime(new Date());
-                    collectionList.add(daParamCollection);
-                }
-                paramCollectionService.saveBatch(collectionList);
-            }
-
-        }catch (Exception e) {
-            throw new RuntimeException("淇濆瓨鏁版嵁鍙戦�佸伐鍘侻ES寮傚父");
-        }
-        return result;
-    }
-
-
-}
+//package com.billion.main.plc.sub;
+//
+//
+//import cn.hutool.core.collection.CollUtil;
+//import cn.hutool.core.util.ObjectUtil;
+//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+//import com.billion.main.da.domain.DaParamCollection;
+//import com.billion.main.da.service.IDaParamCollectionService;
+//import com.billion.main.da.service.IDaStationCollectionService;
+//import com.billion.main.plc.constant.Constants;
+//import com.billion.main.sc.domain.ScCollectionParamConf;
+//import com.billion.main.sc.service.IScCollectionParamConfService;
+//import com.kangaroohy.milo.model.ReadWriteEntity;
+//import com.kangaroohy.milo.runner.subscription.SubscriptionCallback;
+//import com.kangaroohy.milo.service.MiloService;
+//import lombok.extern.slf4j.Slf4j;
+//import org.springframework.stereotype.Component;
+//
+//import java.util.ArrayList;
+//import java.util.Date;
+//import java.util.List;
+//import java.util.concurrent.CompletableFuture;
+//import java.util.stream.Collectors;
+//
+//
+//@Slf4j
+//public class OPCUaSubscriptionTemp implements SubscriptionCallback {
+//
+//    public static MiloService miloService;
+//    public static IScCollectionParamConfService collectionParamConfService;
+//    public static IDaParamCollectionService paramCollectionService;
+//    public static IDaStationCollectionService stationCollectionService;
+//
+//    public OPCUaSubscriptionTemp(MiloService miloService, IScCollectionParamConfService collectionParamConfService
+//            , IDaParamCollectionService paramCollectionService, IDaStationCollectionService stationCollectionService) {
+//        OPCUaSubscriptionTemp.miloService = miloService;
+//        OPCUaSubscriptionTemp.collectionParamConfService = collectionParamConfService;
+//        OPCUaSubscriptionTemp.paramCollectionService = paramCollectionService;
+//        OPCUaSubscriptionTemp.stationCollectionService = stationCollectionService;
+//    }
+//
+//    @Override
+//    public void onSubscribe(String identifier, Object value) {
+//        log.info("鍦板潃锛�"+identifier+"鍊硷細"+value);
+//        try {
+//            if(null != value && !Constants.ZERO.equals(value.toString())) {
+//                String[] nodes = identifier.split("[.]");
+//                String thoroughfare = nodes[0];//閫氶亾
+//                String device = nodes[1];//璁惧
+//                String tab = nodes[2];//鏍囪
+//                String valueString = value.toString();//鍦板潃鍊�
+//
+//                CompletableFuture<Void> cp1 = CompletableFuture.runAsync(() -> {
+//                    subHandle(thoroughfare,device,tab,valueString);
+//                });
+//
+//            }
+//        } catch (Exception e) {
+//            log.error(e.getMessage());
+//        }
+//    }
+//
+//    public void subHandle(String thoroughfare,String device,String tab,String valueString){
+//        try{
+//            //鐩戝惉recordData
+//            if(tab.equals(Constants.RECORD_DATA)){
+//                //濡傛灉鏄�1鍋氳繘绔欏鐞�
+//                if(valueString.equals(Constants.ONE)){
+//                    Object sfcCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".sfcCode").getValue();
+//                    if(ObjectUtil.isNotNull(sfcCodeObject)){
+//                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_ONE_ONE).build());
+//                    }else {
+//                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_ONE_TWO).build());
+//                    }
+//                //濡傛灉鏄�2鍋氬嚭绔欏鐞嗗鐞�
+//                }else if(valueString.equals(Constants.TWO)){
+//                    String result = Constants.STRING_TWO_ONE;
+//                    //璇诲彉閫熺鎬绘垚鐮�
+//                    Object sfcCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".sfcCode").getValue();
+//                    //涓虹┖鏃讹紝杩斿洖5
+//                    if (ObjectUtil.isNull(sfcCodeObject)){
+//                        miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(Constants.STRING_TWO_FIVE).build());
+//                    }else {
+//                        String snCode = sfcCodeObject.toString().trim();//浜у搧SN
+//                        Object stationStatusObjcet = miloService.readFromOpcUa(thoroughfare + "." + device + ".StationStatus").getValue();//绔欑姸鎬佸湴鍧�
+//                        String stationStatus = stationStatusObjcet.toString();
+//                        if (ObjectUtil.isNotNull(stationStatusObjcet)) {
+//                            //淇濆瓨鍙傛暟锛屽彂閫佸伐鍘侻ES
+//                            result = saveParamCollection(device, snCode, stationStatus);
+//                            //淇濆瓨杩囩珯璁板綍
+//                            savePassingStation(device,snCode,stationStatus);
+//                        }else {
+//                            result = Constants.STRING_TWO_THREE;
+//                            log.info("璇诲彇鍒板伐浣峽}StationStatus鏁版嵁锛歿},杩斿洖RecordDataDone鐨勫�间负{}", device, "IS NULL锛�", result);
+//                        }
+//                    }
+//                    miloService.writeToOpcUa(ReadWriteEntity.builder().identifier(thoroughfare + "." + device + ".RecordDataDone").value(result).build());
+//                }
+//            }
+//        }catch (Exception e) {
+//            log.error(e.getMessage());
+//        }
+//    }
+//
+//    /**
+//     * 淇濆瓨杩囩珯鏁版嵁
+//     *
+//     * @param device       宸ヤ綅
+//     * @param snCode       浜у搧搴忓垪鍙�
+//     * @return Integer
+//     * @throws Exception e
+//     */
+//    private static Integer savePassingStation(String device, String snCode,String stationStatus){
+//        Integer result = 21;
+//        try {
+//
+//
+//        } catch (Exception e) {
+//            throw new RuntimeException(e);
+//        }
+//
+//        return result;
+//    }
+//
+//    /**
+//     * 淇濆瓨鍙傛暟鏁版嵁鍜屽彂閫佸伐鍘侻ES
+//     * @param device 宸ヤ綅
+//     * @param snCode 浜у搧SN
+//     * @param stationStatus 绔欑姸鎬�
+//     * @return result
+//     * @throws Exception e
+//     */
+//    private static String saveParamCollection(String device,String snCode,String stationStatus){
+//        String result = Constants.STRING_TWO_ONE;//杩斿洖缁撴灉
+//        try {
+//            //鏌ヨ鍙傛暟閰嶇疆琛�
+//            List<ScCollectionParamConf> list = collectionParamConfService.list(new LambdaQueryWrapper<ScCollectionParamConf>()
+//                    .eq(ScCollectionParamConf::getLocationCode, device)//宸ヤ綅
+//                    .eq(ScCollectionParamConf::getSubscribe, Constants.ONE)//鏄惁閲囬泦
+//            );
+//            if (CollUtil.isNotEmpty(list)){
+//                List<String> collect = list.stream()
+//                        .map(ScCollectionParamConf::getNode).collect(Collectors.toList());
+//                List<ReadWriteEntity> readWriteEntityList = miloService.readFromOpcUa(collect);
+//                ArrayList<DaParamCollection> collectionList = new ArrayList<>();
+//                for (int i = 0; i < readWriteEntityList.size(); i++) {
+//                    DaParamCollection daParamCollection = new DaParamCollection();
+//                    daParamCollection.setSfcCode(snCode);
+//                    daParamCollection.setLocationCode(device);
+//                    daParamCollection.setParamCode(list.get(i).getParamCode());//鍙傛暟缂栫爜
+//                    daParamCollection.setParamName(list.get(i).getParamName());//鍙傛暟鍚嶇О
+//                    daParamCollection.setParamValue(readWriteEntityList.get(i).getValue().toString());
+//                    daParamCollection.setCollectTime(new Date());
+//                    collectionList.add(daParamCollection);
+//                }
+//                paramCollectionService.saveBatch(collectionList);
+//            }
+//
+//        }catch (Exception e) {
+//            throw new RuntimeException("淇濆瓨鏁版嵁鍙戦�佸伐鍘侻ES寮傚父");
+//        }
+//        return result;
+//    }
+//
+//
+//}

--
Gitblit v1.9.3