From d724176dbcf033a096d7dcbd864c05485f021fbb Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期三, 17 十二月 2025 08:30:56 +0800
Subject: [PATCH] 1、 钢化前钢化出片逻辑调整,避免卧转立信号对调度任务的影响 2、修改出片方式,当玻璃未在关系表时,默认出一片 3、中空新增进片线路校验,避免钢化重复报工
---
hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
index 76fcb63..08483e8 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/temperingglass/service/impl/TemperingGlassInfoServiceImpl.java
@@ -1,10 +1,13 @@
package com.mes.temperingglass.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
+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.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.query.MPJQueryWrapper;
+import com.kangaroohy.milo.model.ReadWriteEntity;
+import com.kangaroohy.milo.service.MiloService;
import com.mes.glassinfo.entity.GlassInfo;
import com.mes.glassinfo.entity.LoadGlassInfo;
import com.mes.glassinfo.mapper.GlassInfoMapper;
@@ -12,10 +15,12 @@
import com.mes.temperingglass.entity.TemperingGlassInfo;
import com.mes.temperingglass.mapper.TemperingGlassInfoMapper;
import com.mes.temperingglass.service.TemperingGlassInfoService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -28,11 +33,40 @@
*/
@Service
@DS("north_glass_mes")
+@Slf4j
public class TemperingGlassInfoServiceImpl extends MPJBaseServiceImpl<TemperingGlassInfoMapper, TemperingGlassInfo> implements TemperingGlassInfoService {
@Resource
TemperingGlassInfoMapper temperingMapper;
- @Autowired
+
+ @Resource
private GlassInfoMapper glassInfoMapper;
+
+ @Autowired(required = false)
+ MiloService miloService;
+
+ @Override
+ public List<TemperingGlassInfo> selectWaitingGlassByOpc() {
+ //鑾峰彇绛夊緟杩涚倝涓殑鐜荤拑淇℃伅
+ try {
+ 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 = 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 this.list(new LambdaQueryWrapper<TemperingGlassInfo>()
+ .eq(TemperingGlassInfo::getEngineerId, engineerEntity.getValue() + "")
+ .eq(TemperingGlassInfo::getTemperingLayoutId, temperingLayoutIdEntity.getValue() + ""));
+ } catch (Exception e) {
+ log.info("鑾峰彇閽㈠寲鍙傛暟寮傚父锛歿}", e);
+ return new ArrayList<>();
+ }
+ }
@Override
public List<TemperingGlassInfo> selectWaitingGlass() {
@@ -157,8 +191,8 @@
List<LoadGlassInfo> glassInfos = null;
glassInfos = glassInfoMapper.selectJoinList(LoadGlassInfo.class, new MPJQueryWrapper<GlassInfo>()
.select("IFNULL(b.state, 0) AS state,engineer_id,tempering_layout_id,width,height,tempering_feed_sequence,x_coordinate,y_coordinate,angle,t.glass_id,t.flow_card_id")
- .leftJoin("(SELECT glass_id, MAX(type) AS state FROM damage GROUP BY glass_id) b\n" +
- "ON t.glass_id = b.glass_id")
+ .leftJoin("(SELECT glass_id, type as state FROM damage where type in (8, 9) and status = 1) b\n" +
+ "ON t.glass_id = b.glass_id ")
.eq("engineer_id", glassInfo.getEngineerId())
.eq("tempering_layout_id", glassInfo.getTemperingLayoutId()));
return glassInfos;
@@ -173,4 +207,15 @@
public List<PieChartVO> queryPieChart() {
return baseMapper.queryPieChart();
}
+
+ @Override
+ public List<TemperingGlassInfo> queryEngineerAndLayoutId() {
+ return baseMapper.queryEngineerAndLayoutId();
+ }
+
+ @Override
+ public boolean saveBatch(List<TemperingGlassInfo> list) {
+ log.info("闇�瑕侀挗鍖栫殑鐜荤拑涓猴細{}", list);
+ return baseMapper.saveBatch(list);
+ }
}
--
Gitblit v1.8.0