From 242fd02ef7b86cfe6ae352b1721c50205cc7bafe Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期日, 28 四月 2024 08:55:38 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  155 +++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 123 insertions(+), 32 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index e33f2c0..738fa7b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1,5 +1,7 @@
 package com.zy.asrs.service.impl;
 
+import HslCommunication.Core.Types.OperateResultExOne;
+import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -89,7 +91,6 @@
     private BasCrnErrorMapper basCrnErrorMapper;
     @Autowired
     private WrkMastService wrkMastService;
-
     @Value("${wms.url}")
     private String wmsUrl;
 
@@ -146,6 +147,41 @@
 //                        continue;
 //                    }
 //                }
+                //瓒呭瓒呴珮娌℃壂鍒版潯鐮佹姤璀�
+//                boolean fig=false;
+//                for(int i=0;i<8;i++){
+//                    switch (i){
+//                        case 0: if(devpThread.startSignal[i]){
+//                            log.error("鍓嶈秴鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 1: if(devpThread.startSignal[i]){
+//                            log.error("鍚庤秴鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 2: if(devpThread.startSignal[i]){
+//                            log.error("楂樿秴鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 3: if(devpThread.startSignal[i]){
+//                            log.error("宸﹁秴鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 4: if(devpThread.startSignal[i]){
+//                            log.error("鍙宠秴鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 5: if(devpThread.startSignal[i]){
+//                            log.error("瓒呴噸鎶ヨ");
+//                            fig=true;
+//                        };
+//                        case 6: if(devpThread.startSignal[i]){
+//                            log.error("鏈壂鍒扮爜鎶ヨ");
+//                            fig=true;
+//                        };
+//
+//                    }
+//                }
                 if (staProtocol.isAutoing() && staProtocol.isInEnable()
                         && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990)
                         && staProtocol.isPakMk()) { //&& staProtocol.getStamp()>=2) {// && !Cools.isEmpty(barcode)) {
@@ -157,9 +193,7 @@
                     String barcode = barcodeThread.getBarcode();
                     if(!Cools.isEmpty(barcode)) {
                         News.info(""+mark+" - 1"+" - {}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
-                        if(staProtocol.getStamp()<2){
-                            continue;
-                        }
+
                         if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "empty".equals(barcode)) {
                             staProtocol.setWorkNo((short) 9999);
                             staProtocol.setStaNo(inSta.getBackSta().shortValue());
@@ -175,9 +209,6 @@
                             continue;
                         }
                     } else {
-                        if(staProtocol.getStamp()<2){
-                            continue;
-                        }
                         staProtocol.setWorkNo((short) 9999);
                         staProtocol.setStaNo(inSta.getBackSta().shortValue());
                         devpThread.setPakMk(staProtocol.getSiteId(), false);
@@ -456,7 +487,7 @@
                         wrkMast.setIoTime(now);
                         wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
                         wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
-                        wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
+                        wrkMast.setSourceStaNo(100); // 婧愮珯
                         wrkMast.setStaNo(staNo); // 鐩爣绔�
                         wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
                         wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
@@ -1638,33 +1669,33 @@
                 continue;
             }
 //             鍛戒护涓嬪彂 -------------------------------------------------------------------------------
-//            if (!commands.isEmpty()) {
-//                if (led.getId() < 7) {
-//                    if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) {
-//                        News.error(""+mark+" - 2"+" - {}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
-//                        continue;
-//                    } else {
-//                        ledThread.setLedMk(false);
-//                    }
-//                } else {
-//                    if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) {
-//                        News.error(""+mark+" - 3"+" - {}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
-//                        continue;
-//                    } else {
-//                        ledThread.setLedMk(false);
-//                    }
-//                }
-//
-//            }
-            // 鍛戒护涓嬪彂 -------------------------------------------------------------------------------
             if (!commands.isEmpty()) {
-                if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) {
-                    News.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
-                    continue;
-                }else {
-                    ledThread.setLedMk(false);
+                if (led.getId() == 2) {
+                    if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) {
+                        News.error(""+mark+" - 2"+" - {}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+                        continue;
+                    } else {
+                        ledThread.setLedMk(false);
+                    }
+                } else {
+                    if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) {
+                        News.error(""+mark+" - 3"+" - {}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+                        continue;
+                    } else {
+                        ledThread.setLedMk(false);
+                    }
                 }
+
             }
+//            // 鍛戒护涓嬪彂 -------------------------------------------------------------------------------
+//            if (!commands.isEmpty()) {
+//                if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(3, commands))) {
+//                    News.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+//                    continue;
+//                }else {
+//                    ledThread.setLedMk(false);
+//                }
+//            }
 
             try {
                 // 淇敼涓绘。led鏍囪
@@ -2237,4 +2268,64 @@
             }
         }
     }
+
+    /**
+     *  鎺ユ敹瓒呭瓒呴珮娌℃壂鍒版潯鐮佹姤璀�
+     * @param mark
+     */
+    public synchronized void DevpCallThePolice(Integer mark){
+        // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+        for (DevpSlave devp : slaveProperties.getDevp()) { //閬嶅巻杈撻�佺嚎
+            // 閬嶅巻鍏ュ簱鍙�
+            for (DevpSlave.Sta inSta : devp.getInSta()) {  // 閬嶅巻鍏ュ簱鍙�
+                // 鑾峰彇鍏ュ簱绔欎俊鎭�
+                SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
+                if(null != devpThread){
+                    boolean fig=false;
+                    for (int i=0;i<8;i++){
+                        switch (i){
+                            case 0: if(devpThread.startSignal[i]){
+                                        log.error("鍓嶈秴鎶ヨ");
+                                        fig=true;
+                                    };
+                            case 1: if(devpThread.startSignal[i]){
+                                log.error("鍚庤秴鎶ヨ");
+                                fig=true;
+                            };
+                            case 2: if(devpThread.startSignal[i]){
+                                log.error("楂樿秴鎶ヨ");
+                                fig=true;
+                            };
+                            case 3: if(devpThread.startSignal[i]){
+                                log.error("宸﹁秴鎶ヨ");
+                                fig=true;
+                            };
+                            case 4: if(devpThread.startSignal[i]){
+                                log.error("鍙宠秴鎶ヨ");
+                                fig=true;
+                            };
+                            case 5: if(devpThread.startSignal[i]){
+                                log.error("瓒呴噸鎶ヨ");
+                                fig=true;
+                            };
+                            case 6: if(devpThread.startSignal[i]){
+                                log.error("鏈壂鍒扮爜鎶ヨ");
+                                fig=true;
+                            };
+
+                        }
+                    }
+                    //鍙戠敓鎶ヨ锛岄��鍥炲叆搴撳彛
+                    if(fig){
+                        staProtocol.setWorkNo((short)9991);
+                        staProtocol.setStaNo((short)100);
+                        devpThread.setPakMk(staProtocol.getSiteId(), false);
+                        boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                    }
+                }
+            }
+        }
+    }
+
 }

--
Gitblit v1.9.1