From 588dc1650bacc8842b78dc7637b69f528900e025 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 05 八月 2024 12:06:59 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/HangZhouMes
---
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml | 2
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java | 4 +
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java | 3
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java | 10 ++
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java | 8 +-
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java | 10 ++
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java | 65 ++++++++--------
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java | 8 +-
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/Downpush.java | 37 +++++++-
hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java | 3
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java | 2
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml | 29 +++++++
12 files changed, 131 insertions(+), 50 deletions(-)
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
index f5bda8f..2ea5807 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/common/config/Const.java
@@ -53,6 +53,7 @@
public static final Integer GLASS_STATE_TAKE = 200;
public static final Integer GLASS_STATE_DAMAGE = 201;
public static final List<Integer> GLASS_STATE_IN_ALL = Arrays.asList(100, 102, 103, 104);
+ public static final List<Integer> GLASS_STATE_IN_ALL_ZERO = Arrays.asList(0, 100, 102, 103, 104);
/**
* 鍗у紡鐞嗙墖绗艰鎯呰〃鐜荤拑鐘舵��
@@ -159,7 +160,7 @@
*/
public static final List<Integer> G06_WORK_STATION = Arrays.asList(1, 2, 3);
public static final List<Integer> G11_WORK_STATION = Arrays.asList(4, 5, 6);
- public static final List<Integer> G13_WORK_STATION = Arrays.asList(7);
+ public static final int G13_WORK_STATION = 7;
/**
* 鍚敤 1
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
index 0752d30..b6f1cbd 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/mapper/BigStorageCageMapper.java
@@ -1,11 +1,8 @@
package com.mes.bigstorage.mapper;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.mes.bigstorage.entity.BigStorageCage;
-import com.mes.bigstorage.entity.BigStorageCageDetails;
-import com.mes.glassinfo.entity.GlassInfo;
-import org.apache.ibatis.annotations.Update;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -19,4 +16,7 @@
*/
public interface BigStorageCageMapper extends MPJBaseMapper<BigStorageCage> {
+ List<Integer> queryFreeDeviceByUsed(@Param(value = "thickness") double thickness);
+
+ List<Integer> queryFreeDeviceByNotUsed(@Param(value = "thickness") double thickness);
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
index ab90c99..9ba368b 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/BigStorageCageService.java
@@ -31,4 +31,8 @@
List<Map<String, Object>> selectBigStorageCageUsage();
void updateStorageCageDisabled(int slot, int enableState);
+
+ List<Integer> queryFreeDeviceByUsed(double thickness);
+
+ List<Integer> queryFreeDeviceByNotUsed(double thickness);
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
index c77392e..7138c20 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -268,7 +268,7 @@
.selectAll(BigStorageCage.class)
.leftJoin(BigStorageCageDetails.class, BigStorageCageDetails::getSlot, BigStorageCage::getSlot)
.eq(BigStorageCage::getEnableState, Const.SLOT_ON)
- .in(BigStorageCageDetails::getState, Const.GLASS_STATE_NEW, Const.GLASS_STATE_IN_ALL)
+ .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL_ZERO)
.eq(BigStorageCageDetails::getEngineerId, glassInfo.getEngineerId())
.eq(BigStorageCageDetails::getTemperingLayoutId, glassInfo.getTemperingLayoutId())
.gt(BigStorageCage::getRemainWidth, Math.max(glassInfo.getWidth(), glassInfo.getHeight()))
@@ -303,41 +303,42 @@
return bigStorageDTO;
}
- //鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨
- bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
- .eq(BigStorageCage::getRemainWidth, slotWidth)
- .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
- .inSql(BigStorageCage::getDeviceId,
- "select t.device_id from big_storage_cage t left join big_storage_cage_details t1 on t.slot = t1.slot " +
- " where state in (0,100,102,103,104) and t.max_thickness >= " + glassInfo.getThickness() + " and t.enable_state = 1 " +
- " group by t.device_id " +
- " order by count(DISTINCT t1.tempering_layout_id), count(distinct t1.slot)")
- .last("limit 1"));
- if (null != bigStorageCage) {
- log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板崰鐢ㄦ渶灏戞柟寮忚幏鍙栦俊鎭牸瀛愪负锛歿},鐜荤拑id锛歿}", bigStorageCage.getSlot(), glassInfo.getGlassId());
- bigStorageDTO = new BigStorageDTO();
- bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
- bigStorageDTO.setSlot(bigStorageCage.getSlot());
- bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
- return bigStorageDTO;
+ //鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨 鍥犱负瀛愭煡璇㈡帓搴忓涓籹ql鏃犲奖鍝嶏紝鎵�浠ュ厛鎵ц瀛愭煡璇㈣幏鍙栭『搴忥紝鐒跺悗涓�娆″幓鏌ヨ
+ List<Integer> deviceUsedList = bigStorageCageService.queryFreeDeviceByUsed(glassInfo.getThickness());
+ for (Integer item : deviceUsedList) {
+ bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
+ .eq(BigStorageCage::getRemainWidth, slotWidth)
+ .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
+ .eq(BigStorageCage::getDeviceId, item)
+ .last("limit 1"));
+ if (null != bigStorageCage) {
+ log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板崰鐢ㄦ渶灏戞柟寮忚幏鍙栦俊鎭牸瀛愪负锛歿},鐜荤拑id锛歿}", bigStorageCage.getSlot(), glassInfo.getGlassId());
+ bigStorageDTO = new BigStorageDTO();
+ bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
+ bigStorageDTO.setSlot(bigStorageCage.getSlot());
+ bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
+ return bigStorageDTO;
+ }
}
//鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨
- bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
- .eq(BigStorageCage::getRemainWidth, slotWidth)
- .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
- .inSql(BigStorageCage::getDeviceId,
- "select t.device_id from big_storage_cage t left join big_storage_cage_details t1 on t.slot = t1.slot " +
- " where state in (0,100,102,103,104) and t.max_thickness >= " + glassInfo.getThickness() + " and t.enable_state = 1 " +
- " group by t.device_id " +
- " order by count(DISTINCT t1.tempering_layout_id), count(distinct t.slot) - count(distinct t1.slot) desc")
- .last("limit 1"));
+ List<Integer> deviceNotUsedList = bigStorageCageService.queryFreeDeviceByNotUsed(glassInfo.getThickness());
+ for (Integer item : deviceNotUsedList) {
+ bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
+ .eq(BigStorageCage::getRemainWidth, slotWidth)
+ .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
+ .eq(BigStorageCage::getDeviceId, item)
+ .last("limit 1"));
+ if (null != bigStorageCage) {
+ log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板墿浣欐渶澶氬緱鏂瑰紡鑾峰彇淇℃伅鐗堝浘id:{},鏍煎瓙锛歿},鐜荤拑id锛歿}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId());
+ bigStorageDTO = new BigStorageDTO();
+ bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
+ bigStorageDTO.setSlot(bigStorageCage.getSlot());
+ bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
+ return bigStorageDTO;
+ }
+ }
Assert.isTrue(null != bigStorageCage, "娌℃湁绌轰綑鐨勭瀛愬瓨鏀剧幓鐠�");
- log.info("鎸夌収瀛樼鐜荤拑鏍煎瓙鏁板墿浣欐渶澶氬緱鏂瑰紡鑾峰彇淇℃伅鐗堝浘id:{},鏍煎瓙锛歿},鐜荤拑id锛歿}", glassInfo.getTemperingLayoutId(), bigStorageCage.getSlot(), glassInfo.getGlassId());
- bigStorageDTO = new BigStorageDTO();
- bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
- bigStorageDTO.setSlot(bigStorageCage.getSlot());
- bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
return bigStorageDTO;
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
index 44e8033..a255625 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageServiceImpl.java
@@ -283,4 +283,14 @@
bigStorageCageWrapper.eq(BigStorageCage::getSlot, slot);
baseMapper.update(bigStorageCage, bigStorageCageWrapper);
}
+
+ @Override
+ public List<Integer> queryFreeDeviceByUsed(double thickness) {
+ return baseMapper.queryFreeDeviceByUsed(thickness);
+ }
+
+ @Override
+ public List<Integer> queryFreeDeviceByNotUsed(double thickness) {
+ return baseMapper.queryFreeDeviceByNotUsed(thickness);
+ }
}
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
index d15f91a..def27db 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java
@@ -244,7 +244,7 @@
log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
}
- @Scheduled(fixedDelay = 300)
+ @Scheduled(fixedDelay = 10000)
public void plcToHomeEdgOutTask() {
Date startDate = new Date();
log.info("澶х悊鐗囩绌鸿溅杩涚墖浠诲姟寮�濮嬫墽琛屾椂闂达細{}", startDate);
@@ -271,7 +271,7 @@
.orderBy(Boolean.TRUE, sequenceOrder, TemperingGlassInfo::getTemperingFeedSequence));
if (CollectionUtils.isNotEmpty(temperingGlassInfoList)) {
log.info("鏈夋鍦ㄥ嚭鐗囩殑閽㈠寲浠诲姟");
- computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+ computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
Date endDate = new Date();
log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
@@ -280,7 +280,7 @@
List<BigStorageCageDetails> artificialList = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>()
.eq(BigStorageCageDetails::getState, Const.GLASS_STATE_ARTIFICIAL).orderByDesc(BigStorageCageDetails::getWidth));
if (CollectionUtils.isNotEmpty(artificialList)) {
- computeOutGlassInfo(artificialList, Boolean.FALSE, mesToPLCAddress);
+ computeOutMoreGlassInfo(artificialList, Boolean.FALSE, mesToPLCAddress);
Date endDate = new Date();
log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
@@ -302,7 +302,7 @@
.orderBy(Boolean.TRUE, sequenceOrder, GlassInfo::getTemperingFeedSequence));
if (CollectionUtils.isNotEmpty(temperingGlassInfos)) {
temperingGlassInfoService.saveBatch(temperingGlassInfos);
- computeOutGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
+ computeOutMoreGlassInfo(temperingGlassInfoList, Boolean.TRUE, mesToPLCAddress);
Date endDate = new Date();
log.info("澶х悊鐗囩鍑虹墖浠诲姟缁撴潫鏃堕棿锛歿}锛屽叡鑰楁椂锛歿}ms,缁撴潫鎵爜浠诲姟", endDate, endDate.getTime() - startDate.getTime());
return;
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
new file mode 100644
index 0000000..d9b1ce4
--- /dev/null
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/resources/mapper/BigStorageCageMapper.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.mes.bigstorage.mapper.BigStorageCageMapper">
+
+
+ <select id="queryFreeDeviceByUsed" resultType="java.lang.Integer">
+ SELECT T.DEVICE_ID
+ FROM BIG_STORAGE_CAGE T
+ LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1
+ ON T.SLOT = T1.SLOT
+ WHERE T.MAX_THICKNESS >= #{thickness}
+ AND T.ENABLE_STATE = 1
+ GROUP BY T.DEVICE_ID
+ ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),
+ COUNT(DISTINCT T1.SLOT)
+ </select>
+
+ <select id="queryFreeDeviceByNotUsed" resultType="java.lang.Integer">
+ SELECT T.DEVICE_ID
+ FROM BIG_STORAGE_CAGE T
+ LEFT JOIN (SELECT * FROM BIG_STORAGE_CAGE_DETAILS WHERE STATE NOT IN (101, 200, 201)) T1
+ ON T.SLOT = T1.SLOT
+ WHERE T.MAX_THICKNESS >= #{thickness}
+ AND T.ENABLE_STATE = 1
+ GROUP BY T.DEVICE_ID
+ ORDER BY COUNT(DISTINCT T1.TEMPERING_LAYOUT_ID),
+ COUNT(DISTINCT T.SLOT) - COUNT(DISTINCT T1.SLOT) DESC
+ </select>
+</mapper>
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
index 410a443..add927c 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/entity/DownGlassInfo.java
@@ -30,6 +30,16 @@
private Long id;
/**
+ * 宸ヤ綅id
+ */
+ private Integer workStationId;
+
+ /**
+ * 宸ョ▼id
+ */
+ private String engineerId;
+
+ /**
* 娴佺▼鍗″彿
*/
private String flowCardId;
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
index df92487..b39daf2 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassInfoServiceImpl.java
@@ -80,6 +80,6 @@
//鐢熸垚浠诲姟淇℃伅 骞跺悜plc鍙戦�佸嚭鐗囦换鍔�
GlassInfo glassInfo = new GlassInfo();
BeanUtils.copyProperties(details, glassInfo);
- return downLoadCacheGlassTask.initDownGlassTask(glassInfo, details.getSlot(), 3001, 2);
+ return downLoadCacheGlassTask.initDownGlassTask(glassInfo, details.getSlot(), Const.G13_WORK_STATION, 2);
}
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
index 7e31c30..ab141ce 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java
@@ -513,7 +513,7 @@
endCell = workstation.getWorkstationId();
}
//鏇存柊钀芥灦鐜荤拑鏁伴噺
- if (endCell == 7) {
+ if (endCell == Const.G13_WORK_STATION) {
downWorkstationService.update(new UpdateWrapper<DownWorkstation>().eq("flow_card_id", downStorageCageDetails.getFlowCardId())
.eq("layer", downStorageCageDetails.getLayer()).setSql("other_number = other_number +1"));
} else {
@@ -526,6 +526,7 @@
BeanUtils.copyProperties(downStorageCageDetails, downGlassInfo);
//钀芥灦鐗囧簭
downGlassInfo.setSequence(downGlassInfoService.queryMaxSequence(downGlassInfo.getFlowCardId(), downGlassInfo.getLayer()));
+ downGlassInfo.setWorkStationId(endCell);
downGlassInfoService.save(downGlassInfo);
//鐢熸垚浠诲姟淇℃伅
GlassInfo glassInfo = new GlassInfo();
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/Downpush.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/Downpush.java
index 0b65991..7a84902 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/Downpush.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/Downpush.java
@@ -1,18 +1,22 @@
package com.mes.job;
import cn.hutool.json.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.mes.downglassinfo.entity.DownGlassInfo;
+import com.mes.downglassinfo.service.DownGlassInfoService;
import com.mes.downstorage.service.DownStorageCageService;
import com.mes.downworkstation.entity.DownWorkstation;
import com.mes.downworkstation.service.DownWorkstationService;
import com.mes.tools.WebSocketServer;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
-import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
@Slf4j
@Component
@@ -22,14 +26,16 @@
private DownWorkstationService downWorkstationService;
@Autowired
private DownStorageCageService downStorageCageService;
+ @Autowired
+ private DownGlassInfoService downGlassInfoService;
@Scheduled(fixedDelay = 2000)
public void sendDownWorkstations() {
log.info("鍙戦�佸伐浣嶇幓鐠冧俊鎭�");
JSONObject jsonObject = new JSONObject();
- List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations(1,6);
- jsonObject.append("params",data);
+ List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations(1, 6);
+ jsonObject.append("params", data);
log.info(jsonObject.toString());
ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("unloadglass");
if (sendwServer != null) {
@@ -82,11 +88,30 @@
JSONObject jsonObject4 = new JSONObject();
List<Map<String, Object>> list=downStorageCageService.selectDownStorageCages();
jsonObject4.append("params2",list);
- log.info(jsonObject4.toString());
- ArrayList<WebSocketServer> sendwServer4 = WebSocketServer.sessionMap.get("downcache");
+ log.info(jsonObject4.toString());
+ ArrayList<WebSocketServer> sendwServer4 = WebSocketServer.sessionMap.get("downcache");
+ if (sendwServer4 != null) {
+ for (WebSocketServer webserver : sendwServer4) {
+ if (webserver != null && webserver.session.isOpen()) {
+ webserver.sendMessage(jsonObject4.toString());
+ }
+ }
+ }
+ }
+
+ @Scheduled(fixedDelay = 2000)
+ public void sendDownGlassInfo() {
+ log.info("鍙戦�佸綋鍓嶆鍦ㄦ墽琛屽伐绋嬪凡钀芥灦鐨勭幓鐠冧俊鎭�");
+ List<DownGlassInfo> downGlassInfos = downGlassInfoService.list(new LambdaQueryWrapper<DownGlassInfo>()
+ .inSql(DownGlassInfo::getEngineerId, "select engineer_id from engineering where state = 1"));
+ Map<Integer, List<DownGlassInfo>> listMap = downGlassInfos.stream().collect(Collectors.groupingBy(DownGlassInfo::getWorkStationId));
+ JSONObject jsonObject4 = new JSONObject();
+ List<Map<String, Object>> list = downStorageCageService.selectDownStorageCages();
+ jsonObject4.append("params", listMap);
+ ArrayList<WebSocketServer> sendwServer4 = WebSocketServer.sessionMap.get("sendDownGlass");
if (sendwServer4 != null) {
for (WebSocketServer webserver : sendwServer4) {
- if (webserver != null&&webserver.session.isOpen()) {
+ if (webserver != null && webserver.session.isOpen()) {
webserver.sendMessage(jsonObject4.toString());
}
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
index 32bca1a..f13a7b4 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/mapper/DownGlassInfoMapper.xml
@@ -38,7 +38,7 @@
order by count desc limit 1
</select>
<select id="queryMaxSequence" resultType="java.lang.Integer">
- SELECT COALESCE(max(sequence) + 1, 0) as sequence
+ SELECT COALESCE(max(sequence) + 1, 1) as sequence
FROM down_glass_info
WHERE flow_card_id = #{flowCardId}
AND layer = #{layer}
--
Gitblit v1.8.0