From 5030f3d30ccc1bd16db371c6970a48103aff9191 Mon Sep 17 00:00:00 2001
From: yyt <306727702@qq.com>
Date: 星期一, 03 六月 2024 13:56:57 +0800
Subject: [PATCH] 380新产品,优化

---
 jcdm-main/src/main/java/com/jcdm/main/plcserver/sub/OPCUaSubscription.java |   47 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 42 insertions(+), 5 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 c91312f..49742b7 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
@@ -99,6 +99,31 @@
                         logger.info("-------鐩戝惉鍒�,{}鐨勬壂鐮佹灙鎵爜鐨凜ODE_CHECK鐨勪俊鍙�",identifier);
                         scannerGunMessage();
                     }
+                    if (identifier.equals(OPCElement.OP060_HX_CODE_CHECK) && "1".equals(value.toString())){
+                        Object SNCodeObject = miloService.readFromOpcUa("CFL4HX.OP060.Code1").getValue();
+                        if (null == SNCodeObject){
+                            SNCodeObject = miloService.readFromOpcUa("CFL4HX.OP060.Code").getValue();
+                        }
+                        if (null != SNCodeObject){
+                            String XT="";
+                            String CZ="";
+                            String SNCode = SNCodeObject.toString();
+                            DaParamCollection ParamCollection = new DaParamCollection();
+                            ParamCollection.setSfcCode(SNCode);
+                            List<DaParamCollection> DaParamCollectionlist=daParamCollectionService.selectDaParamCollectionList(ParamCollection);
+                            List<DaParamCollection> XTParamCollection = DaParamCollectionlist.stream().filter(x -> "绠变綋".equals(x.getParamName())).collect(Collectors.toList());
+                            if (CollUtil.isNotEmpty(XTParamCollection)){
+                                DaParamCollection lastOne = XTParamCollection.get(0);
+                                XT = lastOne.getParamValue();
+                            }
+                            List<DaParamCollection> CZParamCollection = DaParamCollectionlist.stream().filter(x -> "鏇茶酱".equals(x.getParamName())).collect(Collectors.toList());
+                            if (CollUtil.isNotEmpty(CZParamCollection)){
+                                DaParamCollection lastOne = CZParamCollection.get(0);
+                                CZ = lastOne.getParamValue();
+                            }
+                            passingStationCollectionServiceImpl.sendMessage(XT+"*"+CZ,"OP060");
+                        }
+                    }
                 }
                 if (collect2.contains(identifier)){
                     if ("1".equals(value.toString())){
@@ -125,7 +150,7 @@
         }
         if (null != SNCodeObject){
             String SNCode = SNCodeObject.toString();
-            passingStationCollectionServiceImpl.sendMessage(SNCode);
+            passingStationCollectionServiceImpl.sendMessage(SNCode,"OP120");
         }
     }
 
@@ -136,7 +161,7 @@
             Object SNCodeObject = miloService.readFromOpcUa(parts[0] + "." + parts[1] + ".Code").getValue();
             if(null != SNCodeObject) {
                 String SNCode=SNCodeObject.toString();
-//                String a=passingStationCollectionServiceImpl.SelectSN(SNCode,parts[1]);
+//              String a=passingStationCollectionServiceImpl.SelectSN(SNCode,parts[1]);
                 String a;
                 BsOrderScheduling bsOrderSchedulingQuery = new BsOrderScheduling();
                 bsOrderSchedulingQuery.setEngineNo(SNCode);
@@ -177,7 +202,7 @@
                 if (StrUtil.isNotBlank(a)){
                     int input = Integer.parseInt(a);
                     ReadWriteEntity entity = new ReadWriteEntity(parts[0]+"."+parts[1]+".CodeCheckFeed", input);
-                    logger.info("-------鐩戝惉鍒�,{}鐨凜odeCheck鐨勪俊鍙�",Node);
+                    logger.info("鍙戝姩鏈哄彿锛歿},鐩戝惉鍒皗}鐨凜odeCheck鐨勪俊鍙�",SNCode,Node);
                     miloService.writeToOpcByte(entity);
                     logger.info("鐩戝惉鍒拌繑鍥瀋odecheckfeed淇″彿锛寋}",entity);
                     //棣栫珯浼犺緭璁㈠崟鍙�
@@ -198,6 +223,17 @@
                     if (OPCElement.OP465_ZZ_CODE_CHECK.equals(Node) || OPCElement.OP355_ZZ_CODE_CHECK.equals(Node)
                     || OPCElement.OP695_ZZ_CODE_CHECK.equals(Node) || OPCElement.OP755_ZZ_CODE_CHECK.equals(Node)){
                         rework(SNCode,Node,daPassingStationCollections,rmRepairRecords);
+                    }
+                    if (OPCElement.OP020_HX_CODE_CHECK.equals(Node)) {
+                        //婵�鍏夋墦鐮�
+                        String[] printcode=SNCode.split("\\s+");
+                        ReadWriteEntity entity3 = new ReadWriteEntity("CFL4HX.HOP020.PrintCode1", printcode[0]);
+                        OPCUaSubscription.miloService.writeToOpcUa(entity3);//鍐橲N
+                        ReadWriteEntity entity5 = new ReadWriteEntity("CFL4HX.HOP020.PrintCode2", printcode[1]);
+                        OPCUaSubscription.miloService.writeToOpcUa(entity5);//鍐橲N
+                        ReadWriteEntity entity6 = new ReadWriteEntity("CFL4HX.HOP020.SNDoor", "1");
+                        logger.info("鍙戝姩鏈哄彿{}锛岃姹傛墦鐮佸唴瀹瑰啓鍏ユ垚鍔燂紝杩斿洖SNDoor淇″彿淇″彿1",SNCode);
+                        miloService.writeToOpcByte(entity6);
                     }
                     System.out.println(entity);
 
@@ -461,14 +497,15 @@
 
             //鏇存柊宸ュ崟鐘舵��
             if ("OP790".equals(parts[1])) {
-                bsOrderScheduling.setReport20("1");
+                //bsOrderScheduling.setReport20("0");
                 bsOrderScheduling.setProductionStatus("3");
                 bsOrderScheduling.setFinalAssemblyOfflineTime(new Date());
             }else if("OP050".equals(parts[1])){
-                bsOrderScheduling.setReport10("1");
+                bsOrderScheduling.setReport10("0");
                 bsOrderScheduling.setProductionStatus("2");
                 bsOrderScheduling.setBoxClosingOnlineTime(new Date());
             }else if("OP120".equals(parts[1])){
+                bsOrderScheduling.setReport20("0");
                 bsOrderScheduling.setFinalAssemblyLaunchTime(new Date());
                 bsOrderScheduling.setClosingBoxOfflineTime(new Date());
             }

--
Gitblit v1.9.3