From 1ccd6932893e47722574e6d1147e63b2ec4972c1 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期五, 17 五月 2024 08:45:52 +0800
Subject: [PATCH] -

---
 jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java |   37 +++++++++++++++++++++++++++++++++++--
 1 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java
index 104b1b7..b4679e5 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java
@@ -3,6 +3,7 @@
 
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -16,6 +17,8 @@
 import com.jcdm.main.da.paramCollection.service.IDaParamCollectionService;
 import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
 import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
+import com.jcdm.main.da.testDeviceInterface.domain.DaTestDeviceInterface;
+import com.jcdm.main.da.testDeviceInterface.service.IDaTestDeviceInterfaceService;
 import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo;
 import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService;
 import com.jcdm.main.plcserver.conf.OPCElement;
@@ -74,16 +77,21 @@
 
     public static IOmProductionOrdeInfoService omProductionOrdeInfoService;
 
+    private static IDaTestDeviceInterfaceService daTestDeviceInterfaceService;
+
+
     public OPCUaSubscription(MiloService miloService,
                              IDaPassingStationCollectionService daPassingStationCollectionService,
                              IDaCollectionParamConfService collectionParamConfService,
                              IDaParamCollectionService daParamCollectionService,
-                             IOmProductionOrdeInfoService omProductionOrdeInfoService) {
+                             IOmProductionOrdeInfoService omProductionOrdeInfoService,
+                             IDaTestDeviceInterfaceService daTestDeviceInterfaceService) {
         OPCUaSubscription.miloService = miloService;
         this.daPassingStationCollectionService = daPassingStationCollectionService;
         OPCUaSubscription.collectionParamConfService = collectionParamConfService;
         OPCUaSubscription.daParamCollectionService = daParamCollectionService;
         OPCUaSubscription.omProductionOrdeInfoService = omProductionOrdeInfoService;
+        OPCUaSubscription.daTestDeviceInterfaceService = daTestDeviceInterfaceService;
     }
 
 
@@ -189,8 +197,25 @@
                             }
                             if(testList.stream().anyMatch(s -> s.equals(device))){
                                 String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
-                                miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(21).build());
+//                                Object packCodeObject = miloService.readFromOpcUa(thoroughfare + "." + device + ".ModuleCode").getValue();
+//                                DaTestDeviceInterface deviceInterfaceOne = null;
+//
+//                                if (ObjectUtil.isNotNull(packCodeObject)) {
+//                                    String modelCode = packCodeObject.toString();
+//                                    deviceInterfaceOne = daTestDeviceInterfaceService.getOne(new LambdaQueryWrapper<DaTestDeviceInterface>()
+//                                            .eq(DaTestDeviceInterface::getProductNum, modelCode)
+//                                            .eq(DaTestDeviceInterface::getStationCode, device));
+//                                }
+//
+//                                if (deviceInterfaceOne != null && "1".equals(deviceInterfaceOne.getTotalResult())) {
+//                                    writeToOpc(RecordDataDoneAddress, (short) 21);
+//                                } else {
+//                                    writeToOpc(RecordDataDoneAddress, (short) 22);
+//                                }
+                                writeToOpc(RecordDataDoneAddress, (short) 21);
                             }
+
+
                         }
                     }else {
                         System.out.println("^");
@@ -543,4 +568,12 @@
         return;
     }
 
+    private static void writeToOpc(String identifier, short value) {
+        try {
+            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(identifier).value(value).build());
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+    }
+
 }

--
Gitblit v1.9.3