From e711c834aec2293c53b07efe53e81e3573c289b6 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期三, 01 四月 2026 11:42:44 +0800
Subject: [PATCH] lsh#
---
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/AgvServiceImpl.java | 28 ++++++++++++++++++----------
1 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/AgvServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/AgvServiceImpl.java
index d0f69d8..d3d6fbc 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/AgvServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/AgvServiceImpl.java
@@ -19,6 +19,8 @@
import com.vincent.rsf.server.manager.service.impl.DeviceSiteServiceImpl;
import com.vincent.rsf.server.manager.service.impl.MatnrServiceImpl;
import com.vincent.rsf.server.manager.utils.LocManageUtil;
+import com.vincent.rsf.server.manager.utils.WarehouseLocationRetrievalUtil;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -35,6 +37,7 @@
import java.util.concurrent.CompletableFuture;
import java.util.stream.Collectors;
+@Slf4j
@Service
public class AgvServiceImpl implements AgvService {
@@ -67,7 +70,11 @@
@Transactional(rollbackFor = Exception.class)
public R AGVBindAndInTaskStart(WaitPakinParam waitPakinPda, Long loginUserId) {
//鍏堢粦瀹�
- getAGVStaBind(waitPakinPda);
+ try{
+ getAGVStaBind(waitPakinPda);
+ } catch (CoolException e) {
+ log.error(e.getMessage());
+ }
//鐢熸垚浠诲姟
AGVInTaskStart(waitPakinPda, loginUserId);
return R.ok();
@@ -143,7 +150,7 @@
while (retry < 5) {
retry++;
try {
- Thread.sleep(1000);
+ Thread.sleep(3000);
WaitPakin waitPakin = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>()
.eq(WaitPakin::getBarcode, param.getPalletBarcode())
.eq(WaitPakin::getIoStatus, PakinIOStatus.PAKIN_IO_STATUS_DONE.val)
@@ -166,7 +173,7 @@
.setBarcode(param.getPalletBarcode())
.setStaNo(param.getPalletSta())
.setArea(param.getArea());
- AGVInTaskStart(waitPakinPda, loginUserId);
+ AGVBindAndInTaskStart(waitPakinPda, loginUserId);
return;
} catch (Exception ignored) {
}
@@ -273,12 +280,12 @@
if (Cools.isEmpty(area)) {
throw new CoolException("鐩爣搴撳尯涓嶈兘涓虹┖");
}
-
- DeviceSite deviceSite = deviceSiteService.getOne(new LambdaQueryWrapper<DeviceSite>()
- .eq(DeviceSite::getSite, sta)
- .eq(DeviceSite::getAreaIdEnd, Long.parseLong(area))
- .eq(DeviceSite::getType, TaskType.TASK_TYPE_IN.type).last("limit 1"));
- if (Cools.isEmpty(deviceSite)) {
+ boolean isItAvailable = new WarehouseLocationRetrievalUtil().queryPathIsItAvailableInArea(sta, area, waitPakinPda.getBarcode(), "in");
+// DeviceSite deviceSite = deviceSiteService.getOne(new LambdaQueryWrapper<DeviceSite>()
+// .eq(DeviceSite::getSite, sta)
+// .eq(DeviceSite::getAreaIdEnd, Long.parseLong(area))
+// .eq(DeviceSite::getType, TaskType.TASK_TYPE_IN.type).last("limit 1"));
+ if (!isItAvailable) {
throw new CoolException("鏃犲彲鐢ㄨ矾寰勶紒锛�");
}
@@ -301,7 +308,7 @@
}
String targetLoc = LocManageUtil.getTargetLoc(Long.parseLong(area));
- taskService.generateAGVTasks(waitPakin, targetLoc, sta, deviceSite.getDeviceCode(),loginUserId);
+ taskService.generateAGVTasks(waitPakin, targetLoc, sta,loginUserId,area);
if (!basStation.getType().equals(0)){
basStation.setUseStatus(LocStsType.LOC_STS_TYPE_R.type);
}
@@ -574,3 +581,4 @@
return true;
}
}
+
--
Gitblit v1.9.1