From 7a5dbd93b904d47e0237cbd36594cbe1792f8aeb Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 08 七月 2024 14:48:33 +0800
Subject: [PATCH] 大理片笼:进片任务联调 bug修复 下片:任务联调 bug修复
---
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java | 12 ++----
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json | 2
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownLoadCacheGlassTask.java | 29 ++++++--------
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java | 4 +
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java | 1
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/PlcStorageCageTask.java | 19 +++------
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java | 2
7 files changed, 30 insertions(+), 39 deletions(-)
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 2f2dacc..8478983 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
@@ -13,6 +13,7 @@
import com.mes.bigstorage.service.BigStorageCageDetailsService;
import com.mes.bigstorage.service.BigStorageCageService;
import com.mes.bigstoragetask.entity.BigStorageCageFeedTask;
+import com.mes.bigstoragetask.entity.BigStorageCageOutTask;
import com.mes.bigstoragetask.mapper.BigStorageCageFeedTaskMapper;
import com.mes.bigstoragetask.mapper.BigStorageCageOutTaskMapper;
import com.mes.common.config.Const;
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 22a81f7..f3f04f3 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
@@ -93,13 +93,10 @@
String mesD01Address = plcParameterObject.getPlcParameter("MESToD01").getAddress();
String mesD04Address = plcParameterObject.getPlcParameter("MESToD04").getAddress();
String d01ToMES = plcParameterObject.getPlcParameter("D01ToMES").getValue();
- if (!REQUEST_WORD.equals(d01ToMES)) {
- log.info("璇锋眰瀛椾负{}锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�", d01ToMES);
- return;
- }
+ String d04ToMES = plcParameterObject.getPlcParameter("D04ToMES").getValue();
- log.info("1銆佽幏鍙杁01Id鎵弿ID涓猴細{};鑾峰彇d04Id鎵弿ID涓猴細{};", d01Id, d04Id);
- if (StringUtils.isBlank(d01Id) && StringUtils.isBlank(d04Id)) {
+ log.info("1銆佽幏鍙杁01Id鎵弿ID涓猴細{}锛岃姹傚瓧涓簕};鑾峰彇d04Id鎵弿ID涓猴細{}锛岃姹傚瓧涓簕};", d01Id, d01ToMES, d04Id, d04ToMES);
+ if (StringUtils.isBlank(d01ToMES) && StringUtils.isBlank(d04ToMES)) {
log.info("涓ゆ潯绾挎湭鏀跺埌杩涚墖浠诲姟锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�");
return;
}
@@ -107,13 +104,11 @@
log.info("涓ゆ潯绾垮崸杞珛鍧囧湪鎵ц浠诲姟锛岀粨鏉熸湰娆℃壂鎻忚繘鍗ц浆绔嬩换鍔�");
return;
}
-// Boolean flag01 = Boolean.FALSE;
-// Boolean flag04 = Boolean.FALSE;
//鎸夌収绾胯矾鍙婄幓鐠僫d鑾峰彇鐩搁偦涓ゅ潡鐜荤拑 鍗ц浆绔嬩笂鐨勭幓鐠�
- if (StringUtils.isNotBlank(d01Id) && (StringUtils.isBlank(d02State) || !REQUEST_WORD.equals(d03State))) {
+ if (REQUEST_WORD.equals(d01ToMES) && (StringUtils.isBlank(d02State) || !REQUEST_WORD.equals(d03State))) {
judgeGlassTypeStatus(d01Id, Const.A09_OUT_TARGET_POSITION, mesD01Address);
}
- if (StringUtils.isNotBlank(d04Id) && !REQUEST_WORD.equals(d05State)) {
+ if (REQUEST_WORD.equals(d04ToMES) && !REQUEST_WORD.equals(d05State)) {
judgeGlassTypeStatus(d04Id, Const.A10_OUT_TARGET_POSITION, mesD04Address);
}
log.info("缁撴潫鎵爜浠诲姟");
@@ -303,7 +298,7 @@
Boolean flag = Boolean.TRUE;
//2銆佽幏鍙栧崸杞珛
- Integer widthFirst = Math.max(edgGlassTaskInfoList.get(0).getWidth(), edgGlassTaskInfoList.get(0).getHeight());
+ Integer widthFirst = Math.max(edgGlassTaskInfoList.get(0).getWidth() / 10, edgGlassTaskInfoList.get(0).getHeight() / 10);
if (edgGlassTaskInfoList.size() == 1) {
if (remainWidth >= widthFirst) {
if (glassCount < inCarMaxSize) {
@@ -315,7 +310,7 @@
flag = Boolean.FALSE;
}
} else {
- Integer widthSecond = Math.max(edgGlassTaskInfoList.get(1).getWidth(), edgGlassTaskInfoList.get(1).getHeight());
+ Integer widthSecond = Math.max(edgGlassTaskInfoList.get(1).getWidth() / 10, edgGlassTaskInfoList.get(1).getHeight() / 10);
if (remainWidth >= widthFirst) {
if (remainWidth - widthFirst - glassGap >= widthSecond) {
if (glassCount < inCarMaxSize) {
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
index 670d12c..dd753b9 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/common/S7object.java
@@ -52,7 +52,9 @@
}
byte[] getplcvlues = plccontrol.readByte(PlcMesObject.getPlcAddressBegin(), PlcMesObject.getPlcAddressLength());
- PlcMesObject.setPlcParameterList(getplcvlues);
+ if (getplcvlues != null) {
+ PlcMesObject.setPlcParameterList(getplcvlues);
+ }
}
}
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
index 29c215b..a5a3a3c 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
@@ -71,7 +71,7 @@
*/
boolean DirectConnection(GlassInfo glassInfo);
- DownStorageCageDetails getGlassInfoMaxCount();
+ String getGlassInfoMaxCount(String glassId);
/**
* @param glassId
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
index 1b3d559..027a0a0 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
@@ -3,19 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.github.yulichang.query.MPJLambdaQueryWrapper;
-import com.github.yulichang.query.MPJQueryWrapper;
-
-
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-
+import com.github.yulichang.query.MPJLambdaQueryWrapper;
import com.github.yulichang.toolkit.JoinWrappers;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.mes.common.config.Const;
import com.mes.downstorage.entity.DownStorageCage;
import com.mes.downstorage.entity.DownStorageCageDetails;
import com.mes.downstorage.mapper.DownStorageCageDetailsMapper;
-
import com.mes.downstorage.mapper.DownStorageCageMapper;
import com.mes.downstorage.service.DownStorageCageDetailsService;
import com.mes.downworkstation.entity.DownWorkstation;
@@ -198,8 +193,9 @@
}
@Override
- public DownStorageCageDetails getGlassInfoMaxCount() {
- return baseMapper.getGlassInfoMaxCount();
+ public String getGlassInfoMaxCount(String glassId) {
+ DownStorageCageDetails glassInfoMaxCount = baseMapper.getGlassInfoMaxCount();
+ return null == glassInfoMaxCount ? glassId : glassInfoMaxCount.getGlassId();
}
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 ed8f023..6e63d8e 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
@@ -4,6 +4,7 @@
import cn.smallbun.screw.core.util.CollectionUtils;
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.mes.common.S7object;
import com.mes.common.config.Const;
import com.mes.device.PlcParameterObject;
@@ -81,7 +82,7 @@
@Scheduled(fixedDelay = 3000)
public void plcHomeEdgTask() {
- PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
+ PlcParameterObject plcParameterObject = S7object.getinstance().PlcMesObject;
String requestWord = plcParameterObject.getPlcParameter("requestWord").getValue();
String glassIdeValue = plcParameterObject.getPlcParameter("requestID").getValue();
//A08 A09琛ㄧず绾胯矾鐩稿悓 鍙仛绛変环 鏃犳暟鎹浆int寮傚父
@@ -92,7 +93,6 @@
String confirmationWrodValue = plcParameterObject.getPlcParameter("confirmationWord").getValue();
String confirmationWrodAddress = plcParameterObject.getPlcParameter("confirmationWord").getAddress();
String currentSlot = plcParameterObject.getPlcParameter("currentCell").getValue();
-
log.info("1銆佽幏鍙栧埌鐨勮姹傚瓧涓猴細{}锛岃幏鍙栧埌鐨勬壂鎻廔D涓猴細{}锛岃幏鍙栧埌鐨勭‘璁ゅ瓧涓猴細{}锛岃幏鍙栧埌鐨勫嚭鐗囩姸鎬佸垎鍒负锛歡06:{}銆乬08:{}銆乬11:{}銆乬13:{},褰撳墠鏍煎瓙鍙蜂负锛歿}",
@@ -145,8 +145,7 @@
//鐜荤拑灏哄鏄惁璧颁汉宸ヤ笅鐗�
if (glassInfo.getWidth() > maxWidth || glassInfo.getHeight() > maxHeight || glassInfo.getWidth() < minWidth || glassInfo.getHeight() < minHeight) {
log.info("璇ョ幓鐠冨昂瀵镐笉绗﹀悎瑕佹眰锛岄渶瑕佽蛋浜哄伐涓嬬墖鐩存帴杩涚墖");
- }
- else {
+ } else {
log.info("璇ョ幓鐠冨昂瀵搁潪浜哄伐涓嬬墖");
//鑾峰彇璇ョ幓鐠冪殑娴佺▼鍗℃槸鍚﹀凡缁戝畾鏋跺瓙
DownWorkstation one = downWorkstationService.getOne(new LambdaQueryWrapper<DownWorkstation>()
@@ -161,7 +160,7 @@
if (!checkFlag && !isBind) {
log.info("璇ョ幓鐠冪殑娴佺▼鍗℃湭缁戝畾鏋跺瓙锛岃幏鍙栨槸鍚︽湁绌烘灦瀛�");
List<DownWorkstation> list = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
- .isNull(DownWorkstation::getFlowCardId));
+ .isNull(DownWorkstation::getFlowCardId).orderByDesc(DownWorkstation::getWorkstationId));
if (CollectionUtils.isNotEmpty(list)) {
log.info("鏈夌┖鏋跺瓙,灏嗘祦绋嬪崱涓庢灦瀛愬ソ缁戝畾锛屾墽琛岃繘鐗囦换鍔� 缁撴潫");
//缁戝畾娴佺▼鍗�
@@ -245,8 +244,8 @@
return Boolean.FALSE;
}
Boolean flag08 = "1".equals(out08Glassstate) ? Boolean.TRUE : Boolean.FALSE;
- if (!generateTaskByShelf(glassStatus06, glassStatus11, flag08, glassStatus13, tempList, cageDetails)) {
- return generateTaskByShelf(glassStatus06, glassStatus11, !flag08, glassStatus13, tempList, cageDetails);
+ if (!generateTaskByShelf(glassStatus06, glassStatus11, flag08, glassStatus13, tempList, cageDetails, glassId)) {
+ return generateTaskByShelf(glassStatus06, glassStatus11, !flag08, glassStatus13, tempList, cageDetails, glassId);
}
return Boolean.TRUE;
}
@@ -288,7 +287,7 @@
}
}
- private Boolean generateTaskByShelf(String glassStatus06, String glassStatus11, Boolean flag08, String glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails) {
+ private Boolean generateTaskByShelf(String glassStatus06, String glassStatus11, Boolean flag08, String glassStatus13, List<DownStorageCageDetails> tempList, DownStorageCageDetails cageDetails, String glassId) {
//鑾峰彇2涓満姊拌噦鑼冨洿鍐呯殑鏋跺瓙缁戝畾鐨勬祦绋嬪崱淇℃伅
List<Integer> workList = new ArrayList();
@@ -357,10 +356,8 @@
List<DownGlassInfoDTO> downGlassInfoDTOList = downGlassInfoService.queryWorkStationIsIn(Boolean.TRUE);
List<String> downGlassFlowList = downGlassInfoDTOList.stream().map(item -> item.getFlowCardId() + ":" + item.getLayer()).collect(Collectors.toList());
if (CollectionUtils.isEmpty(downGlassFlowList)) {
- //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑
- DownStorageCageDetails downStorageCageDetails = downStorageCageDetailsService.getGlassInfoMaxCount();
- //缁戝畾娴佺▼鍗★紝鏇存柊鐜荤拑鐘舵�侊紝鐢熸垚鍑虹墖浠诲姟锛�
- tempGlassId = downStorageCageDetails.getGlassId();
+ //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑id,鏃� 鍒欒繑鍥炴壂鎻忔壂鍒扮殑鐜荤拑id杩涜鍑虹墖
+ tempGlassId = downStorageCageDetailsService.getGlassInfoMaxCount(glassId);
isBind = Boolean.TRUE;
break loop;
}
@@ -371,9 +368,8 @@
// List<DownWorkstation> emptyShelfList = downWorkstationService.list(new LambdaQueryWrapper<DownWorkstation>()
// .isNull(DownWorkstation::getFlowCardId));
if (isEmptyShelf) {
- DownStorageCageDetails downStorageCageDetails = downStorageCageDetailsService.getGlassInfoMaxCount();
- //缁戝畾娴佺▼鍗★紝鏇存柊鐜荤拑鐘舵�侊紝鐢熸垚鍑虹墖浠诲姟
- tempGlassId = downStorageCageDetails.getGlassId();
+ //鏋跺瓙閮芥湭缁戝畾娴佺▼鍗★紝鍑虹鍐呭瓙鏁伴噺鏈�澶氬昂瀵告渶澶х殑鐜荤拑id,鏃� 鍒欒繑鍥炴壂鎻忔壂鍒扮殑鐜荤拑id杩涜鍑虹墖
+ tempGlassId = downStorageCageDetailsService.getGlassInfoMaxCount(glassId);
isBind = Boolean.TRUE;
break loop;
}
@@ -484,7 +480,8 @@
return Boolean.FALSE;
}
//鏇存柊钀芥灦鐜荤拑鏁伴噺
-
+ downWorkstationService.update(new UpdateWrapper<DownWorkstation>().eq("flow_card_id", downStorageCageDetails.getFlowCardId())
+ .eq("layer", downStorageCageDetails.getLayer()).setSql("racks_number = racks_number +1"));
//鐢熸垚浠诲姟淇℃伅
DownGlassInfo downGlassInfo = new DownGlassInfo();
BeanUtils.copyProperties(downStorageCageDetails, downGlassInfo);
diff --git a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
index ac8379f..de826b1 100644
--- a/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
+++ b/hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/resources/JsonFile/PlcdownGlass.json
@@ -12,7 +12,7 @@
{
"codeId": "requestID",
"addressIndex": "2",
- "addressLenght": "30"
+ "addressLenght": "20"
},
{
"codeId": "currentCell",
--
Gitblit v1.8.0