From 38e2fda87c28fa7128d971e7afac1b05a06872d6 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期日, 31 三月 2024 13:54:42 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes

---
 UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java |  118 ++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 97 insertions(+), 21 deletions(-)

diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java b/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java
index 45e06f0..581cfe8 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java
@@ -1,24 +1,30 @@
 package com.mes.service;
 
-import com.mes.common.PlcTools.MockS7PLCtwo;
 import com.mes.entity.DownGlassInfo;
 import com.mes.entity.DownStorageCageDetails;
+import com.mes.entity.DownWorkstation;
 import com.mes.entity.device.PlcParameterObject;
+import com.mes.mapper.DownGlassInfoMapper;
 import com.mes.mapper.DownWorkstationMapper;
 import com.mes.tools.WebSocketServer;
+import lombok.Data;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
-
+@Data
 @Service
 public class PlcService {
 
     @Autowired
     private DownWorkstationMapper downWorkstationMapper;
+    private DownGlassInfo downGlassInfo;
+    private DownWorkstation downWorkstation;
+    private DownGlassInfoMapper downGlassInfoMapper;
+
     private DownGlassInfoService downGlassInfoService;
+
+
 
 
 
@@ -34,30 +40,100 @@
     String PLCwancheng = plcread.getPlcParameter("A01Position").getValue();// plc瀹屾垚瀛�
 
 
-    public void performPlcActions() {
+    //褰撲笅鐗囦换鍔¤〃鐘舵�佷负1鏃跺�欏皢鏁版嵁鎻掑叆鍒颁笅鐗囩幓鐠冧俊鎭〃
+    public void insertdownglassinfo() {
+
+
         downWorkstationMapper = WebSocketServer.applicationContext.getBean(DownWorkstationMapper.class);
         downGlassInfoService = WebSocketServer.applicationContext.getBean(DownGlassInfoService.class);
-        PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
-        int workstationId = 1;
-        int deviceId = 2;
-        int newWorkState = 9;
-        downWorkstationMapper.updateWorkStateByWorkstationIdAndDeviceId(workstationId, deviceId, newWorkState);
+        downGlassInfoMapper = WebSocketServer.applicationContext.getBean(DownGlassInfoMapper.class);
+        List<DownGlassInfo> taskdownGlassInf = downGlassInfoMapper.selectunloadingtaskstate();
+//
+        if (taskdownGlassInf != null && !taskdownGlassInf.isEmpty()) {
 
-        DownGlassInfo downGlassInfo = downGlassInfoService.getDownGlassInfoById(1);
 
-        Boolean[] value4 = { false, true, true, true, true, true, false, false, false, false};
-        List<Boolean> booldata2 = new ArrayList<>(Arrays.asList(value4));
-        MockS7PLCtwo.getInstance().writebits("DB4.0.0", booldata2);
-        List<Boolean> data4= MockS7PLCtwo.getInstance().readbits("DB4.0.0",10);
 
-        System.out.println("璇诲彇鐨剋ord鍊�: " + data4);
-        String OutActivate=plcmes.getPlcParameter("OutActivate").getValue();
-        byte[] getplcvalues = MockS7PLCtwo.getInstance().readByte("DB101.0", 2);
-        System.out.println(Arrays.toString(getplcvalues));
-        //System.out.println("璇诲彇鐨勯�氳word鍊�: " + OutActivate);
-        // 鍏朵粬涓� PLC 鐩稿叧鐨勬搷浣�...
+
+            for (DownGlassInfo downGlassInfo : taskdownGlassInf) {
+                // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
+                DownGlassInfo newdownGlassInfo = new DownGlassInfo();
+
+                newdownGlassInfo.setFlowCardId(downGlassInfo.getFlowCardId());
+                Integer maxSequence = downGlassInfoMapper.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId());
+                int sequence = maxSequence != null ? maxSequence + 1 : 1; // 鍒濆鍖栭『搴忓瓧娈靛��
+
+                newdownGlassInfo.setWidth(downGlassInfo.getWidth());
+                newdownGlassInfo.setHeight(downGlassInfo.getHeight());
+                newdownGlassInfo.setThickness(downGlassInfo.getThickness());
+                newdownGlassInfo.setFilmsid(downGlassInfo.getFilmsid());
+                newdownGlassInfo.setSequence(sequence); // 璁剧疆椤哄簭瀛楁鍊�
+
+                // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
+                downGlassInfoMapper.insert(newdownGlassInfo);
+                //鎻掑叆鏁版嵁鍒版満姊版墜浠诲姟琛�
+                downWorkstationMapper.insertdownWorkstationtask(newdownGlassInfo);
+                //鏇存柊浠诲姟琛ㄧ姸鎬佷负0
+                downGlassInfoMapper.updateTaskStateToZero(downGlassInfo.getFlowCardId());
+
+                sequence++; // 閫掑椤哄簭瀛楁鍊�
+
+
+
+
+            }
+        }
     }
 
 
+    //褰撴満姊版墜浠诲姟琛ㄤ腑鐘舵�佷负1锛屽伐浣嶈〃娴佺▼鍗$粦瀹氫簡鏋跺瓙 鏇存柊宸茬粡钀芥灦鏁伴噺锛屽苟涓旀妸涓嬬墖浠诲姟琛ㄧ殑瀵瑰簲璁板綍鍒犳帀
+    public void down_workstation(){
+
+        //downWorkstationMapper = WebSocketServer.applicationContext.getBean(DownWorkstationMapper.class);
+        //downGlassInfoMapper = WebSocketServer.applicationContext.getBean(DownGlassInfoMapper.class);
+        try {
+            List<DownWorkstation> taskdownWorkstation = downWorkstationMapper.selectdownWorkstationstate();
+            if (taskdownWorkstation != null && !taskdownWorkstation.isEmpty()) {
+                //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏄惁缁戝畾浜嗘灦瀛愭槸鍚︾粦瀹氫簡娴佺▼鍗″彿锛屽鏋滃凡缁忕粦瀹氬垯鏇存柊宸茶惤鏋舵暟閲�,骞朵笖鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+                for (DownWorkstation downWorkstation : taskdownWorkstation) {
+                    downWorkstationMapper.update_racks_number(downWorkstation.getFlowCardId(),6 );
+                    downGlassInfoMapper.deletetask(downWorkstation.getFlowCardId());
+
+                }
+            }
+        } catch (Exception e) {
+            // 鎵撳嵃寮傚父淇℃伅
+            e.printStackTrace();
+            // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
+        }
+
+
+    }
+
+
+
+    //缁戝畾娴佺▼鍗″彿鏋跺瓙
+    public void bindingshelf(DownWorkstation downWorkstation){
+
+        String FlowCardId=downWorkstation.getFlowCardId();
+        int WorkstationId=downWorkstation.getWorkstationId();
+
+
+
+    }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 }

--
Gitblit v1.8.0