From 16c79495b4a88229042b4087e791ff86471bb702 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期三, 05 六月 2024 08:20:09 +0800
Subject: [PATCH] 修改进出片逻辑,修改前端调用的接口

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java |   98 ++++++++++++++++++++++++++++--------------------
 1 files changed, 57 insertions(+), 41 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
index a845e61..e5610a7 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -1,6 +1,4 @@
 package com.mes.job;
-
-import cn.hutool.json.JSONObject;
 import com.mes.bigstorage.entity.BigStorageCageDetails;
 import com.mes.bigstorage.service.BigStorageCageDetailsService;
 import com.mes.bigstorage.service.BigStorageCageService;
@@ -9,21 +7,22 @@
 import com.mes.bigstoragetask.service.BigStorageCageFeedTaskService;
 import com.mes.bigstoragetask.service.BigStorageCageOutTaskService;
 import com.mes.common.S7object;
-import com.mes.common.WebSocketServer;
 import com.mes.device.PlcParameterObject;
+import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
 import com.mes.edgstoragetask.service.TaskCacheService;
 import com.mes.glassinfo.entity.GlassInfo;
 import com.mes.glassinfo.service.GlassInfoService;
-import com.mes.menu.service.SysMenuService;
+import com.mes.temperingglass.service.TemperingGlassInfoService;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
 import java.util.List;
 
+/**
+ * @author SNG-015
+ */
 @Component
 @Slf4j
 public class PlcStorageCageTask {
@@ -39,22 +38,24 @@
     @Resource
     private BigStorageCageOutTaskService bigStorageCageOutTaskService;
     @Resource
-    private TaskCacheService taskCacheService;
-
+    private EdgGlassTaskInfoService edgGlassTaskInfoService;
     @Resource
-    private SysMenuService sysMenuService;
+    private TemperingGlassInfoService temperingGlassInfoService;
 
     PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
+
+    public static boolean bigStorageCageFullAlarm = false;
+
+    private int line1Time=0;
+    private int line2Time=0;
+
     /**
      * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
      * fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
      */
-    @Scheduled(fixedDelay = 30000)
+    @Scheduled(fixedDelay = 5000)
     public void plcStorageCageTask() throws InterruptedException {
-        JSONObject jsonObject = new JSONObject();
         try {
-            // 鐖嗙鎶ヨ
-            boolean bigStorageCageFullAlarm = false;
 
             String plcFeedGlassid = "";
             String plcFeedReqLine = "0";
@@ -66,21 +67,32 @@
                 plcFeedReqLine = "2";
                 plcFeedGlassid=plcParameterObject.getPlcParameter("D04ID1").getValue();
             }
+            line1Time+=1;
+            line2Time+=1;
 
             if (!("0".equals(plcFeedReqLine))) {
                 log.info("1銆丳lc杩涚墖璇锋眰鏃�");
                 BigStorageCageDetails bigStorageCageDetails = new BigStorageCageDetails();
                 GlassInfo glassInfo = glassInfoService.getById(plcFeedGlassid);
                 log.info("2銆佹牴鎹幓鐠僫d鑾峰彇鐜荤拑淇℃伅" + glassInfo);
-                BigStorageCageDetails slotInfo = bigStorageCageService.feedGlass(glassInfo, bigStorageCageDetails);
-                if (slotInfo != null) {
-                    int taskType = taskCacheService.judgeTasktype();
-                    log.info("3銆佹煡璇换鍔¤〃鍒ゆ柇褰撳墠浠诲姟绫诲瀷涓轰笂杞︾瓑鍒拌繕鏄笂杞﹀惎鍔�" + taskType);
-                    bigStorageCageFeedTaskService.addFeedTask(slotInfo, Integer.parseInt(plcFeedReqLine), taskType);
-                    log.info("4銆佹坊鍔犱换鍔″埌浠诲姟琛�");
-                    bigStorageCageFullAlarm = false;
-                } else {
-                    bigStorageCageFullAlarm = true;
+                if(bigStorageCageDetailsService.selectGetBoard(plcFeedReqLine)>=0){
+                    BigStorageCageDetails slotInfo = bigStorageCageService.feedGlass(glassInfo, bigStorageCageDetails);
+                    if (slotInfo != null) {
+                        int taskType = edgGlassTaskInfoService.judgeTasktype(plcFeedReqLine);
+                        log.info("3銆佹煡璇换鍔¤〃鍒ゆ柇褰撳墠浠诲姟绫诲瀷涓轰笂杞︾瓑鍒拌繕鏄笂杞﹀惎鍔�" + taskType);
+                        bigStorageCageFeedTaskService.addFeedTask(slotInfo, Integer.parseInt(plcFeedReqLine), taskType);
+                        log.info("4銆佹坊鍔犱换鍔″埌浠诲姟琛�");
+                        bigStorageCageFullAlarm = false;
+                    } else {
+                        bigStorageCageFullAlarm = true;
+                    }
+                }else{
+                    log.info("褰撳墠鐜荤拑瀹藉害涓嶅涓婅溅" + glassInfo);
+                    if(!("1".equals(plcFeedReqLine))){
+                        S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D02Go").getAddress(), 1);
+                    }else{
+                        S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D05Go").getAddress(), 1);
+                    }
                 }
             } else {
                 List<BigStorageCageFeedTask> bigStorageCageFeedTaskList = bigStorageCageFeedTaskService.querybigStorageCageFeedTask(1);
@@ -95,37 +107,41 @@
                     bigStorageCageFeedTaskService.removeById(bigStorageCageFeedTask);
                     log.info("7銆佸垹闄ゅ凡缁忓畬鎴愮殑杩涚墖浠诲姟");
                 }
+                //鍚姩闃堝��
+                if(line1Time>=300){
+                    if("0".equals(plcParameterObject.getPlcParameter("D05Go").getValue())){
+                        S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D02Go").getAddress(), 1);
+                    }
+                }
+                if(line2Time>=300){
+                    if("0".equals(plcParameterObject.getPlcParameter("D02Go").getValue())){
+                        S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D05Go").getAddress(), 1);
+                    }
+                }
             }
 
             //鏌ヨ鍑虹墖琛ㄦ槸鍚︽湁浠诲姟鏈畬鎴愮殑浠诲姟
             List<BigStorageCageOutTask> bigStorageCageOutTask=bigStorageCageOutTaskService.querybigStorageCageOutTask(0);
             if(bigStorageCageOutTask.size()==0){
-                bigStorageCageService.outGlass();
+                boolean result=bigStorageCageService.outGlass();
                 log.info("8銆佹病鏈夋湭瀹屾垚浠诲姟鏃惰皟鐢ㄥ嚭鐗囨帴鍙�");
+                if (result==false){
+                    temperingGlassInfoService.schedulingTask();
+                }
             }
             bigStorageCageOutTaskService.updateOutTask();
             log.info("9銆佹牴鎹换鍔¤〃鐘舵�佷慨鏀归挗鍖栧皬鐗囪〃浠诲姟鐘舵��");
 
-            //鎶ヨ淇℃伅
-            jsonObject.append("bigStorageCageFullAlarm", bigStorageCageFullAlarm);
+            //鏉ヤ笉鍙婇�佹椂鐩存帴璧�
+            String line=Integer.toString(edgGlassTaskInfoService.startTask());
 
-
-
-            ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("Home");
-            if (sendwServer != null) {
-                for (WebSocketServer webserver : sendwServer) {
-                    if (webserver != null) {
-                        webserver.sendMessage(jsonObject.toString());
-                        List<String> messages = webserver.getMessages();
-                        if (!messages.isEmpty()) {
-                            // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
-                            webserver.clearMessages();
-                        }
-                    } else {
-                        log.info("Home is closed");
-                    }
-                }
+            if(!(line.equals(plcFeedReqLine))){
+                S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D02Go").getAddress(), 1);
+            }else{
+                S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("D05Go").getAddress(), 1);
             }
+
+
         } catch (Exception e) {
             e.printStackTrace();
         }

--
Gitblit v1.8.0