From 82e0ee9e39953af0b39e5471eb6a9be2d442fb7d Mon Sep 17 00:00:00 2001 From: wuyouming666 <2265557248@qq.com> Date: 星期三, 27 三月 2024 17:01:54 +0800 Subject: [PATCH] 更新下片逻辑 --- 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