From bdb4046a1ed5358a94cc9ce846f2a1ec88e5d5ec Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期二, 18 六月 2024 10:51:57 +0800
Subject: [PATCH] -

---
 jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java |  103 +++++++++++++++++++++++----------------------------
 1 files changed, 46 insertions(+), 57 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 99ba9d3..52c039b 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
@@ -193,10 +193,10 @@
                         if(automaticList.stream().anyMatch(s -> s.equals(device))){
                             //鑷姩宸ヤ綅
                             //鍑虹珯淇濆瓨鏁版嵁
-                            recordDataDoneValue = outSaveDate(thoroughfare,device);
+                            outSaveDate(thoroughfare,device);
                             //璁板綍鏁版嵁瀹屾垚
-                            String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
-                            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(Integer.valueOf(recordDataDoneValue)).build());
+                            /*String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
+                            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(Integer.valueOf(recordDataDoneValue)).build());*/
                         }else {
                             //鎵嬪姩宸ヤ綅
 //                            if(device.contains("OP330")){
@@ -271,26 +271,22 @@
     /**
      * 鍑虹珯淇濆瓨鏁版嵁
      */
-    public String outSaveDate(String thoroughfare,String device) {
+    public void outSaveDate(String thoroughfare,String device) {
         String snCode = "";
         String result = "";
         String read = thoroughfare + "." + device + ".";
 
         try {
-            if(nullList.stream().noneMatch(s -> s.equals(device))){
+            if(nullList.stream().noneMatch(s -> s.equals(device))){//鍒犻櫎鈥︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹�︹��
                 if(moduleCodeList.stream().anyMatch(s -> s.equals(device))){
                     read = read + "ModuleCode";
-
                 }else {
                     read = read + "PACKCode";
                 }
             }
             if(device.equals("OP365")){
                 try {
-                    result = saveStationInfo365(thoroughfare,device);
-                    return result;
-//                    return saveStationInfo365(thoroughfare,device);
-//                    return result;
+                   saveStationInfo365(thoroughfare,device);
                 }catch (Exception e){
                     e.printStackTrace();
                 }
@@ -298,7 +294,8 @@
                 snCode = miloService.readFromOpcUa(read).getValue().toString();
 
                 if(null == snCode || "".equals(snCode)){
-                    result = "22";
+                    String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
+                    miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(Integer.valueOf("22")).build());
                 }else{
 
                     String workOrderNo = "";
@@ -324,19 +321,17 @@
                         //1銆佹洿鏂板伐鍗曚俊鎭�
                         updateOrderInfo(snCode);
                     }
+
                     try{
                         daParamCollectionService.automaticWorkstationPushGeelycvMesFeedback(snCode,device,daParamCollectionList);
                     }catch (Exception e){
                     }
-                    result = "21";
-
                 }
 
             }
         }catch (Exception e) {
             logger.error("鍑虹珯淇濆瓨鏁版嵁寮傚父锛�"+e);
         }
-        return result;
     }
 
 
@@ -374,6 +369,7 @@
      * 淇濆瓨杩囩珯閲囬泦
      */
     public void saveStationInfo(String packCode,String thoroughfare,String device,String workOrderNo,String productCode) throws Exception {
+        logger.info("杩涘叆宸ヤ綅{}-鏂规硶saveStationInfo",device);
         SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
         sdf.setTimeZone(TimeZone.getTimeZone("GMT+8")); // CST閫氬父琛ㄧず涓浗鏍囧噯鏃堕棿锛屽嵆涓滃叓鍖�
         String prefix = thoroughfare+"."+device+".";
@@ -392,9 +388,11 @@
         daPassingStationCollection.setOutboundTime(format.parse(TimeUtil.test(end)));//鍑虹珯鏃堕棿
         daPassingStationCollection.setOutRsSign(stationStatus);//鍑虹珯鏄惁鍚堟牸
         daPassingStationCollectionService.insertDaPassingStationCollection(daPassingStationCollection);
+        logger.info("缁撴潫宸ヤ綅{}-鏂规硶saveStationInfo",device);
     }
 
     public static List<DaParamCollection> SaveParamData(String packCode,String thoroughfare,String device,String workOrderNo,String productType) throws Exception {
+        logger.info("杩涘叆宸ヤ綅{}-鏂规硶SaveParamData",device);
         List<DaCollectionParamConf> list;
         DaCollectionParamConf daCollectionParamConf = new DaCollectionParamConf();
         daCollectionParamConf.setGatherAddress(thoroughfare+ "." + device);
@@ -408,54 +406,47 @@
 
         if(!nodeIdList.isEmpty()){
             List<ReadWriteEntity> readWriteEntityList = miloService.readFromOpcUa(nodeIdList);
-            for (int i = 0; i < readWriteEntityList.size(); i++) {
+            for(int i=0;i<nodeIdList.size();i++){
                 if(readWriteEntityList.get(i).getValue() == null){
                     readWriteEntityList.get(i).setValue(" ");
                 }
-            }
-
-            for(int i=0;i<nodeIdList.size();i++){
-                if(!readWriteEntityList.get(i).getValue().toString().equals("0.0")){
-                    String tt = readWriteEntityList.get(i).getValue().toString();
-                    DaParamCollection ParamCollection = new DaParamCollection();
-                    ChildVO childVO = new ChildVO();
-                    ParamCollection.setParamCode(list.get(i).getCollectParameterId());
-                    ParamCollection.setLocationCode(device);
-                    if(tt.contains("Time")){
-//                        String str = TimeUtil.getTimestamp(TimeUtil.stringProcessing(tt));
-//                        ParamCollection.setParamValue(str);
-                        ParamCollection.setParamValue(TimeUtil.test(TimeUtil.stringProcessing(tt)));
-                    }else {
-                        ParamCollection.setParamValue(readWriteEntityList.get(i).getValue().toString());
-                    }
-                    ParamCollection.setSfcCode(packCode);
-                    if(device.contains("OP360")){
-                        String node = nodeIdList.get(i);
-                        Object value = miloService.readFromOpcUa("PACK.OP360.ModuleSNCode"+node.charAt(node.length()-1)).getValue();
-                        if(value!=null){
-                            ParamCollection.setModuleCode(value.toString());
-                        }
-                    }
-                    ParamCollection.setParamName(list.get(i).getCollectParameterName());
-                    ParamCollection.setParamUpper(list.get(i).getParamUpper());
-                    ParamCollection.setParamLower(list.get(i).getParamLower());
-                    ParamCollection.setUnit(list.get(i).getCollectParameterUnit());
-                    //ParamCollection.setState("鍚堟牸");
-                    ParamCollection.setType(list.get(i).getCollectParameterType());
-                    ParamCollection.setCollectionTime(new Date());
-                    ParamCollection.setWorkOrderNo(workOrderNo);
-                    ParamCollection.setProductCode(productType);
-                    daParamCollectionlist.add(ParamCollection);
-//                    daParamCollectionService.insertDaParamCollection(ParamCollection);
+                String paramValue = readWriteEntityList.get(i).getValue().toString();
+                DaParamCollection ParamCollection = new DaParamCollection();
+                ParamCollection.setParamCode(list.get(i).getCollectParameterId());
+                ParamCollection.setLocationCode(device);
+                if(paramValue.contains("Time")){
+                    ParamCollection.setParamValue(TimeUtil.test(TimeUtil.stringProcessing(paramValue)));
+                }else {
+                    ParamCollection.setParamValue(readWriteEntityList.get(i).getValue().toString());
                 }
+                ParamCollection.setSfcCode(packCode);
+                if(device.contains("OP360")){
+                    String node = nodeIdList.get(i);
+                    Object value = miloService.readFromOpcUa("PACK.OP360.ModuleSNCode"+node.charAt(node.length()-1)).getValue();
+                    if(value!=null){
+                        ParamCollection.setModuleCode(value.toString());
+                    }
+                }
+                ParamCollection.setParamName(list.get(i).getCollectParameterName());
+                ParamCollection.setParamUpper(list.get(i).getParamUpper());
+                ParamCollection.setParamLower(list.get(i).getParamLower());
+                ParamCollection.setUnit(list.get(i).getCollectParameterUnit());
+                ParamCollection.setType(list.get(i).getCollectParameterType());
+                ParamCollection.setCollectionTime(new Date());
+                ParamCollection.setWorkOrderNo(workOrderNo);
+                ParamCollection.setProductCode(productType);
+                daParamCollectionlist.add(ParamCollection);
             }
-            daParamCollectionService.saveBeachDaParamCollection(daParamCollectionlist);
-
         }
+        String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
+        miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(Integer.valueOf("21")).build());
+        logger.info("缁欏伐浣峽}鍐欎簡21",device);
+        daParamCollectionService.saveBeachDaParamCollection(daParamCollectionlist);
         List<DaParamCollection> baseDataList = addBaseData(workOrderNo,productType,device,packCode);
         for (int i = 0; i < baseDataList.size(); i++){
             daParamCollectionlist.add(baseDataList.get(i));
         }
+        logger.info("缁撴潫宸ヤ綅{}-鏂规硶SaveParamData",device);
         return daParamCollectionlist;
     }
 
@@ -575,7 +566,7 @@
     /**
      * 淇濆瓨杩囩珯閲囬泦
      */
-    public String saveStationInfo365(String thoroughfare,String device) throws Exception {
+    public void saveStationInfo365(String thoroughfare,String device) throws Exception {
         String RecordDataDoneAddress = thoroughfare + "." + device + ".RecordDataDone";
         String prefix = thoroughfare+"."+device+".";
         List<DaPassingStationCollection> passingStationCollections = new ArrayList<>();
@@ -612,13 +603,11 @@
                 passingStationCollections.add(daPassingStationCollection);
             }
             daPassingStationCollectionService.saveBeachDaPassingStationCollection(passingStationCollections);
-//            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(21).build());
+            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(21).build());
             logger.info("宸ヤ綅{}鍥炲21",device);
 
-            return "21";
         }else {
-//            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(22).build());
-            return "22";
+            miloService.writeToOpcShort(ReadWriteEntity.builder().identifier(RecordDataDoneAddress).value(22).build());
         }
     }
 

--
Gitblit v1.9.3