From b4ff04d7dd22f0e48bf386cd422e885aef08fed7 Mon Sep 17 00:00:00 2001 From: ZengTao <2773468879@qq.com> Date: 星期四, 22 五月 2025 15:03:10 +0800 Subject: [PATCH] OPC通讯修改为S7通讯 --- hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java | 96 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 69 insertions(+), 27 deletions(-) diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java index be0007a..2a79d53 100644 --- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java +++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java @@ -122,9 +122,9 @@ private void opcLoadGlassChild(String tableName, Integer deviceId) { S7DataSP s7DataSP = new S7DataSP(); - if(tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)){ + if (tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)) { s7DataSP = s7SerializerSPOne.read(S7DataSP.class); - }else{ + } else { s7DataSP = s7SerializerSPTwo.read(S7DataSP.class); } Engineering engineering = engineeringMapper.selectOne(new LambdaQueryWrapper<Engineering>() @@ -134,11 +134,18 @@ return; } //浠诲姟鏆傚仠 - LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); + S7DataSP task=new S7DataSP(); + if(LOAD_GLASS_ONE_DEVICE.equals(deviceId)){ + s7SerializerSPOne.read(S7DataSP.class); + }else{ + s7SerializerSPTwo.read(S7DataSP.class); + } +// LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); ; if ("0".equals(s7DataSP.getInkageState().toString())) { + log.info("{}涓婄墖绾匡紝澶勪簬绂荤嚎鐘舵�侊細{}锛岀粨鏉熸湰鍦颁笂鐗囪姹�", deviceId, s7DataSP.getInkageState().toString()); // if (0 == task.getInkageState()) { - log.info("{}涓婄墖绾匡紝澶勪簬绂荤嚎鐘舵�侊細{}锛岀粨鏉熸湰鍦颁笂鐗囪姹�", deviceId, task.getInkageState()); +// log.info("{}涓婄墖绾匡紝澶勪簬绂荤嚎鐘舵�侊細{}锛岀粨鏉熸湰鍦颁笂鐗囪姹�", deviceId, task.getInkageState()); return; } if (s7DataSP.getTaskRunning().toString().equals(Const.ENGINEERING_RUNNING)) { @@ -176,12 +183,23 @@ } int number = Math.min(twoLoadStation.getRemainQuantity(), usageVOS.size()); //鐢熸垚涓婄墖浠诲姟 - task.setTotalCount(number); - task.setTaskRunning(Const.ENGINEERING_RUNNING); - task.setRawGlassWidth((int) usageVOS.get(0).getWidth()); - task.setRawGlassHeight((int) usageVOS.get(0).getHeight()); - task.setSlot(loadStation.get(1)); - loadGlassDeviceTaskService.updateTaskMessage(tableName, task); + task.setTotalCount((short)number); + task.setTaskRunning(Boolean.TRUE); + task.setRawGlassWidth((short) usageVOS.get(0).getWidth()); + task.setRawGlassHeight((short) usageVOS.get(0).getHeight()); + task.setSlot(loadStation.get(1).shortValue()); +// loadGlassDeviceTaskService.updateTaskMessage(tableName, task); + S7DataSP s7DataSPWrite = new S7DataSP(); + s7DataSPWrite.setTotalCount((short) number); + s7DataSPWrite.setTaskRunning(Boolean.TRUE); + s7DataSPWrite.setRawGlassWidth((short) usageVOS.get(0).getWidth()); + s7DataSPWrite.setRawGlassHeight((short) usageVOS.get(0).getHeight()); + s7DataSPWrite.setSlot(loadStation.get(1).shortValue()); + if (LOAD_GLASS_ONE_DEVICE.equals(deviceId)) { + s7SerializerSPOne.write(s7DataSPWrite); + } else { + s7SerializerSPTwo.write(s7DataSPWrite); + } saveHistoryTask(task, deviceId); return; } @@ -192,23 +210,34 @@ } //鐢熸垚涓婄墖浠诲姟 int number = Math.min(oneLoadStation.getRemainQuantity(), usageVOS.size()); - task.setTotalCount(number); - task.setTaskRunning(Const.ENGINEERING_RUNNING); - task.setRawGlassWidth((int) usageVOS.get(0).getWidth()); - task.setRawGlassHeight((int) usageVOS.get(0).getHeight()); - task.setSlot(loadStation.get(0)); - loadGlassDeviceTaskService.updateTaskMessage(tableName, task); + task.setTotalCount((short)number); + task.setTaskRunning(Boolean.TRUE); + task.setRawGlassWidth((short) usageVOS.get(0).getWidth()); + task.setRawGlassHeight((short) usageVOS.get(0).getHeight()); + task.setSlot(loadStation.get(0).shortValue()); +// loadGlassDeviceTaskService.updateTaskMessage(tableName, task); + S7DataSP s7DataSPWrite = new S7DataSP(); + s7DataSPWrite.setTotalCount((short) number); + s7DataSPWrite.setTaskRunning(Boolean.TRUE); + s7DataSPWrite.setRawGlassWidth((short) usageVOS.get(0).getWidth()); + s7DataSPWrite.setRawGlassHeight((short) usageVOS.get(0).getHeight()); + s7DataSPWrite.setSlot(loadStation.get(0).shortValue()); + if (LOAD_GLASS_ONE_DEVICE.equals(deviceId)) { + s7SerializerSPOne.write(s7DataSPWrite); + } else { + s7SerializerSPTwo.write(s7DataSPWrite); + } saveHistoryTask(task, deviceId); } private void opcLoadGlassFinishChid(String tableName, Integer deviceId) { S7DataSP s7DataSP = new S7DataSP(); - if(tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)){ + if (tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)) { s7DataSP = s7SerializerSPOne.read(S7DataSP.class); - }else{ + } else { s7DataSP = s7SerializerSPTwo.read(S7DataSP.class); } - LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); +// LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); if (s7DataSP.getTaskRunning().toString().equals(Const.ENGINEERING_NEW)) { // if (task.getTaskRunning().equals(Const.ENGINEERING_NEW)) { log.info("鏃犱换鍔�,缁撴潫"); @@ -223,13 +252,15 @@ // 宸插畬鎴愭暟閲� 鐮存崯鏁伴噺 Integer finishCount = Integer.parseInt(s7DataSP.getFinishCount().toString()); Integer damageCount = Integer.parseInt(s7DataSP.getDamageCount().toString()); + Integer slot = Integer.parseInt(s7DataSP.getSlot().toString()); // Integer finishCount = task.getFinishCount(); // Integer damageCount = task.getDamageCount(); //鏇存柊褰撳墠鏋跺瓙涓婄殑鍘熺墖鍓╀綑鎯呭喌 rawGlassStorageDetailsService.update(new UpdateWrapper<RawGlassStorageDetails>() .inSql("slot", "select slot from raw_glass_storage_station where enable_state = 1") - .eq("slot", task.getSlot()) +// .eq("slot", task.getSlot()) + .eq("slot", slot) .eq("state", Const.RAW_GLASS_STATE_IN) .setSql("remain_quantity = remain_quantity - " + (finishCount + damageCount))); //鏇存柊宸ョ▼涓嬬殑鍘熺墖鏁伴噺 todo:sql寰呬紭鍖� @@ -241,12 +272,23 @@ .set(UpPattenUsage::getState, Const.LOAD_RAW_GLASS_SUCCESS)); } //浠诲姟琛ㄦ暟鎹儏鍐� - task.setTaskRunning(0); - task.setTotalCount(0); - task.setRawGlassWidth(0); - task.setRawGlassHeight(0); - task.setSlot(0); - loadGlassDeviceTaskService.updateTaskMessage(tableName, task); +// task.setTaskRunning(0); +// task.setTotalCount(0); +// task.setRawGlassWidth(0); +// task.setRawGlassHeight(0); +// task.setSlot(0); +// loadGlassDeviceTaskService.updateTaskMessage(tableName, task); + S7DataSP s7DataSPWrite = new S7DataSP(); + s7DataSPWrite.setTaskRunning(Boolean.FALSE); + s7DataSPWrite.setTotalCount((short) 0); + s7DataSPWrite.setRawGlassWidth((short) 0); + s7DataSPWrite.setRawGlassHeight((short) 0); + s7DataSPWrite.setSlot((short) 0); + if (LOAD_GLASS_ONE_DEVICE.equals(deviceId)) { + s7SerializerSPOne.write(s7DataSPWrite); + } else { + s7SerializerSPTwo.write(s7DataSPWrite); + } loadGlassDeviceTaskHistoryService.update(new LambdaUpdateWrapper<LoadGlassDeviceTaskHistory>() .set(LoadGlassDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_SUCCESS) .eq(LoadGlassDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW) @@ -254,7 +296,7 @@ ); } - private boolean saveHistoryTask(LoadGlassDeviceTask task, Integer deviceId) { + private boolean saveHistoryTask(S7DataSP task, Integer deviceId) { LoadGlassDeviceTaskHistory taskHistory = new LoadGlassDeviceTaskHistory(); BeanUtils.copyProperties(task, taskHistory); taskHistory.setStation(deviceId); -- Gitblit v1.8.0