From f42bb93047f0aba68f358968499e1174e67a715a Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期一, 01 四月 2024 08:40:31 +0800
Subject: [PATCH] 更新下片逻辑
---
UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java | 129 ++++++++++++++++++++++++++++++++++++-------
1 files changed, 108 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..398948d 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,111 @@
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 {
+ //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏋跺瓙鏄惁缁戝畾浜嗘祦绋嬪崱鍙� 宸ヤ綅琛ㄥ拰浠诲姟琛ㄤ腑鐘舵�佷负1鐨勬祦绋嬪崱鍙峰拰宸茶惤鏋舵暟閲�
+ List<DownWorkstation> taskdownWorkstation = downWorkstationMapper.selectdownWorkstationstate();
+ if (taskdownWorkstation != null && !taskdownWorkstation.isEmpty()) {
+ //锛屽鏋滃凡缁忕粦瀹氬垯鏇存柊宸茶惤鏋舵暟閲�,骞朵笖鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+ for (DownWorkstation downWorkstation : taskdownWorkstation) {
+
+ //鏇存柊涓嬬墖宸ヤ綅琛ㄤ腑宸茶惤鏋舵暟閲�
+ downWorkstationMapper.update_racks_number(downWorkstation.getFlowCardId(),downWorkstation.getRacksnumber()+1 );
+
+ //鏇存柊鏈烘浠诲姟琛ㄤ腑鐘舵�佷负0
+ downWorkstationMapper.update_task_state_to_zero(downWorkstation.getFlowCardId());
+ //鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+ downGlassInfoMapper.deletetask(downWorkstation.getFlowCardId());
+
+ }
+ }
+ } catch (Exception e) {
+ // 鎵撳嵃寮傚父淇℃伅
+ e.printStackTrace();
+ // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
+ }
+
+
+ }
+
+
+
+
+ // 缁戝畾娴佺▼鍗″彿鏋跺瓙
+ public void bindingshelf(DownWorkstation downWorkstation){
+ downWorkstationMapper.updateFlowCardId(downWorkstation);
+ }
+
+
+
+ // 婊℃灦鎷夎蛋 娓呴櫎娴佺▼鍗′俊鎭�
+ public void clearFlowCardId(DownWorkstation downWorkstation){
+
+ downWorkstationMapper.clearFlowCardId(downWorkstation);
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
}
--
Gitblit v1.8.0