From f778d39fbbb49efe4dd0aaa0b2f89ed7fa3d5ea6 Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期三, 02 八月 2023 15:37:05 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  115 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 100 insertions(+), 15 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 5bfa856..e49fdfb 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,16 +147,50 @@
 //                        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)) {
+                        && staProtocol.isPakMk() && !fig) { //&& staProtocol.getStamp()>=2) {// && !Cools.isEmpty(barcode)) {
                     News.warnNoLog(""+mark+" - 0"+" - 寮�濮嬫墽琛�");
 //                    try {
 //                        Thread.sleep(300);
 //                    }catch (Exception e){}
 
-                    //String barcode = barcodeThread.getBarcode();
-                    String barcode = "20000005";
+                    String barcode = barcodeThread.getBarcode();
                     if(!Cools.isEmpty(barcode)) {
                         News.info(""+mark+" - 1"+" - {}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
 
@@ -450,14 +485,7 @@
                         Integer staNo = staDesc.getCrnStn();
                         // 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
                         wrkMast.setIoTime(now);
-                        //鐩樼偣鍏ュ簱鏃讹紝鏈夌粍鎵樻暟鎹紝鐩樼偣杞苟鏉垮叆搴�
-                        List<WaitPakin> waitPakins=waitPakinMapper.selectList(new EntityWrapper<WaitPakin>()
-                                .eq("barcode",barcode));
-                        if(!Cools.isEmpty(waitPakins)){
-                            wrkMast.setIoType(54);
-                        }else{
-                            wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
-                        }
+                        wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
                         wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
                         wrkMast.setSourceStaNo(100); // 婧愮珯
                         wrkMast.setStaNo(staNo); // 鐩爣绔�
@@ -467,9 +495,6 @@
                         if (wrkMastMapper.updateById(wrkMast) == 0) {
                             throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
                         }
-
-
-
                         // 鏇存柊鏄庣粏妗o_time (鍘嗗彶妗e叧鑱斾娇鐢級
                         wrkDetlService.updateIoTime(wrkMast.getWrkNo(), now);
                         // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
@@ -2243,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