From ae07cd92f46b88bf034c7d9d0b96b3a5e83fdc98 Mon Sep 17 00:00:00 2001 From: ZengTao <2773468879@qq.com> Date: 星期二, 20 五月 2025 16:29:00 +0800 Subject: [PATCH] 仓储,上片,卧理修改OPC为S7通讯 --- hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/OpcLoadGlassTask.java | 43 +++++++++++++++++++++++++++++++++++++------ 1 files changed, 37 insertions(+), 6 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 a18183a..be0007a 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 @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.github.xingshuangs.iot.protocol.s7.serializer.S7Serializer; import com.mes.common.config.Const; import com.mes.engineering.entity.Engineering; import com.mes.engineering.mapper.EngineeringMapper; @@ -14,11 +15,14 @@ import com.mes.pp.service.OptimizeProjectService; import com.mes.rawglassdetails.entity.RawGlassStorageDetails; import com.mes.rawglassdetails.service.RawGlassStorageDetailsService; +import com.mes.s7.entity.S7DataSP; import com.mes.uppattenusage.entity.UpPattenUsage; import com.mes.uppattenusage.entity.vo.UpPattenUsageVO; import com.mes.uppattenusage.mapper.UpPattenUsageMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; @@ -52,6 +56,14 @@ private UpPattenUsageMapper upPattenUsageMapper; @Resource private OptimizeProjectService optimizeProjectService; + + @Autowired + @Qualifier("s7SerializerSPOne") + private S7Serializer s7SerializerSPOne; + + @Autowired + @Qualifier("s7SerializerSPTwo") + private S7Serializer s7SerializerSPTwo; private static final List<Integer> LOAD_STATION_01 = Arrays.asList(101, 102); private static final List<Integer> LOAD_STATION_02 = Arrays.asList(103, 104); @@ -109,6 +121,12 @@ } private void opcLoadGlassChild(String tableName, Integer deviceId) { + S7DataSP s7DataSP = new S7DataSP(); + if(tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)){ + s7DataSP = s7SerializerSPOne.read(S7DataSP.class); + }else{ + s7DataSP = s7SerializerSPTwo.read(S7DataSP.class); + } Engineering engineering = engineeringMapper.selectOne(new LambdaQueryWrapper<Engineering>() .eq(Engineering::getState, Const.ENGINEERING_RUNNING).eq(Engineering::getStationCell, deviceId)); if (null == engineering) { @@ -117,11 +135,14 @@ } //浠诲姟鏆傚仠 LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); - if (0 == task.getInkageState()) { + ; + if ("0".equals(s7DataSP.getInkageState().toString())) { +// if (0 == task.getInkageState()) { log.info("{}涓婄墖绾匡紝澶勪簬绂荤嚎鐘舵�侊細{}锛岀粨鏉熸湰鍦颁笂鐗囪姹�", deviceId, task.getInkageState()); return; } - if (task.getTaskRunning().equals(Const.ENGINEERING_RUNNING)) { + if (s7DataSP.getTaskRunning().toString().equals(Const.ENGINEERING_RUNNING)) { +// if (task.getTaskRunning().equals(Const.ENGINEERING_RUNNING)) { log.info("{}涓婄墖绾匡紝鏈夋鍦ㄦ墽琛岀殑浠诲姟锛岀粨鏉熸湰鍦颁笂鐗囪姹�", deviceId); return; } @@ -181,19 +202,29 @@ } private void opcLoadGlassFinishChid(String tableName, Integer deviceId) { + S7DataSP s7DataSP = new S7DataSP(); + if(tableName.equals(LOAD_GLASS_DEVICE_ONE_TASK)){ + s7DataSP = s7SerializerSPOne.read(S7DataSP.class); + }else{ + s7DataSP = s7SerializerSPTwo.read(S7DataSP.class); + } LoadGlassDeviceTask task = loadGlassDeviceTaskService.queryTaskMessage(tableName); - if (task.getTaskRunning().equals(Const.ENGINEERING_NEW)) { + if (s7DataSP.getTaskRunning().toString().equals(Const.ENGINEERING_NEW)) { +// if (task.getTaskRunning().equals(Const.ENGINEERING_NEW)) { log.info("鏃犱换鍔�,缁撴潫"); return; } - if (task.getTaskState() <= 1) { + if (Integer.parseInt(s7DataSP.getTaskState().toString()) <= 1) { +// if (task.getTaskState() <= 1) { log.info("浠诲姟姝e湪鎵ц,缁撴潫"); return; } //鑾峰彇浠诲姟瀹屾垚鎯呭喌 // 宸插畬鎴愭暟閲� 鐮存崯鏁伴噺 - Integer finishCount = task.getFinishCount(); - Integer damageCount = task.getDamageCount(); + Integer finishCount = Integer.parseInt(s7DataSP.getFinishCount().toString()); + Integer damageCount = Integer.parseInt(s7DataSP.getDamageCount().toString()); +// Integer finishCount = task.getFinishCount(); +// Integer damageCount = task.getDamageCount(); //鏇存柊褰撳墠鏋跺瓙涓婄殑鍘熺墖鍓╀綑鎯呭喌 rawGlassStorageDetailsService.update(new UpdateWrapper<RawGlassStorageDetails>() -- Gitblit v1.8.0