From d7765b799489db445388e528044ab3b2bd2e649e Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期四, 12 六月 2025 08:22:57 +0800
Subject: [PATCH] 钢化模块modbus和S7改造
---
hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java | 43 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 40 insertions(+), 3 deletions(-)
diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
index 52b49a6..d3c42d0 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcTemperingGlassTask.java
@@ -4,14 +4,18 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.github.xingshuangs.iot.protocol.s7.serializer.S7Serializer;
+import com.kangaroohy.milo.model.ReadWriteEntity;
import com.mes.common.config.Const;
import com.mes.damage.service.DamageService;
import com.mes.largenscreen.entity.PieChartVO;
+import com.mes.s7.entity.S7DataGHTwo;
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.service.TemperingGlassInfoService;
import com.mes.tools.WebSocketServer;
import lombok.extern.slf4j.Slf4j;
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;
@@ -33,16 +37,49 @@
@Autowired
private DamageService damageService;
+ @Autowired
+ @Qualifier("s7SerializerGHTwo")
+ private S7Serializer s7SerializerGHTwo;
+
/**
* fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
* fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
*/
+ private List<TemperingGlassInfo> selectWaitingGlassByOpc() {
+ //鑾峰彇绛夊緟杩涚倝涓殑鐜荤拑淇℃伅
+ try {
+ S7DataGHTwo s7DataGHTwo = s7SerializerGHTwo.read(S7DataGHTwo.class);
+ String engineerEntity = s7DataGHTwo.getF09EngineerId();
+ Integer temperingLayoutIdEntity = s7DataGHTwo.getF09TemperingLayoutId();
+// ReadWriteEntity engineerEntity = miloService.readFromOpcUa("GH2S7.GH2S7.F09_ENGINEER_ID");
+// ReadWriteEntity temperingLayoutIdEntity = miloService.readFromOpcUa("GH2S7.GH2S7.F09_TEMPERING_LAYOUT_ID");
+
+ if (null == engineerEntity || null == temperingLayoutIdEntity) {
+ engineerEntity = s7DataGHTwo.getF08EngineerId();
+ temperingLayoutIdEntity = s7DataGHTwo.getF08TemperingLayoutId();
+// engineerEntity = miloService.readFromOpcUa("GH2S7.GH2S7.F08_ENGINEER_ID");
+// temperingLayoutIdEntity = miloService.readFromOpcUa("GH2S7.GH2S7.F08_TEMPERING_LAYOUT_ID");
+ if (null == engineerEntity || null == temperingLayoutIdEntity) {
+ log.info("鑾峰彇鍙傛暟寮傚父锛岀粨鏉熸湰娆′换鍔�");
+ return new ArrayList<>();
+ }
+ }
+ return temperingAgoService.list(new LambdaQueryWrapper<TemperingGlassInfo>()
+ .eq(TemperingGlassInfo::getEngineerId, engineerEntity)
+ .eq(TemperingGlassInfo::getTemperingLayoutId, temperingLayoutIdEntity));
+ } catch (Exception e) {
+ log.info("鑾峰彇閽㈠寲鍙傛暟寮傚父锛歿}", e);
+ return new ArrayList<>();
+ }
+ }
+
@Scheduled(fixedDelay = 1000)
public void temperingGlassHome() {
JSONObject jsonObject = new JSONObject();
//姝e湪绛夊緟杩涚墖鐨勭幓鐠�
- List<TemperingGlassInfo> waitingGlass = temperingAgoService.selectWaitingGlassByOpc();
+ List<TemperingGlassInfo> waitingGlass = selectWaitingGlassByOpc();
+// List<TemperingGlassInfo> waitingGlass = temperingAgoService.selectWaitingGlassByOpc();
if (waitingGlass != null) {
jsonObject.append("waitingGlass", waitingGlass);
}
@@ -120,10 +157,10 @@
//澶у睆閽㈠寲淇℃伅
List<TemperingGlassInfo> temperingGlassInfoList = temperingAgoService.list(
new QueryWrapper<TemperingGlassInfo>()
- .select("engineer_id" ,"tempering_layout_id")
+ .select("engineer_id", "tempering_layout_id")
.eq("state", Const.TEMPERING_START)
.gt("create_time", startOfToday)
- .groupBy("engineer_id" ,"tempering_layout_id")
+ .groupBy("engineer_id", "tempering_layout_id")
);
jsonObject.append("temperingGlassInfoList", temperingGlassInfoList.size());
//澶у睆閽㈠寲淇℃伅
--
Gitblit v1.8.0