From 7f76ee82f932af805ed8cc5f12d9a9c02da00077 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期六, 24 五月 2025 08:25:19 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/CrnController.java | 61 ++++++++++++++++++++++++++++++
1 files changed, 60 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java
index 4d02d12..cd3019a 100644
--- a/src/main/java/com/zy/asrs/controller/CrnController.java
+++ b/src/main/java/com/zy/asrs/controller/CrnController.java
@@ -35,6 +35,7 @@
import com.zy.core.model.protocol.CrnProtocol;
import com.zy.core.properties.SlaveProperties;
import com.zy.core.properties.SystemProperties;
+import com.zy.core.thread.RgvThread;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -248,6 +249,8 @@
command.setDestinationPosX(param.getRow()); // 鐩爣搴撲綅鎺�
command.setDestinationPosY(param.getBay()); // 鐩爣搴撲綅鍒�
command.setDestinationPosZ(param.getLev()); // 鐩爣搴撲綅灞�
+ boolean locSts = isLocSts(param.getRow().toString(), param.getBay().toString(), param.getLev().toString());
+ command.setTraySize(locSts);
return crnControl(command)?R.ok():R.error();
}
@@ -265,6 +268,8 @@
command.setDestinationPosX(param.getRow()); // 鐩爣搴撲綅鎺�
command.setDestinationPosY(param.getBay()); // 鐩爣搴撲綅鍒�
command.setDestinationPosZ(param.getLev()); // 鐩爣搴撲綅灞�
+ boolean locSts = isLocSts(param.getSourceRow().toString(), param.getSourceBay().toString(), param.getSourceLev().toString());
+ command.setTraySize(locSts);
return crnControl(command)?R.ok():R.error();
}
@@ -286,7 +291,11 @@
.eq("bay1", command.getSourcePosY()).eq("lev1", command.getSourcePosZ()));
LocMast loc = locMastService.selectOne(new EntityWrapper<LocMast>().eq("row1", command.getDestinationPosX())
.eq("bay1", command.getDestinationPosY()).eq("lev1", command.getDestinationPosZ()));
- VersionUtils.locMoveCheckLocType(sourceLoc, loc);
+ if (sourceLoc.getLocType1() != loc.getLocType1()){
+ return R.error("搴撲綅绫诲瀷涓嶄竴鑷�");
+ }
+ command.setTraySize(loc.getLocType1() == 2);
+// VersionUtils.locMoveCheckLocType(sourceLoc, loc);
return crnControl(command)?R.ok():R.error();
}
@@ -374,6 +383,44 @@
command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞�
return crnControl(command)?R.ok():R.error();
+ }
+
+ @ManagerAuth(memo = "鎭㈠鑱旀満浠诲姟")
+ @PostMapping("/operator/taskRe")
+ public R taskRe(CrnOperatorParam param){
+ CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, param.getCrnNo());
+ if (crnThread == null) {
+ return R.error("鍫嗗灈鏈轰笉鍦ㄧ嚎");
+ }
+ CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+ if (crnProtocol == null) {
+ return R.error("鍫嗗灈鏈轰笉鍦ㄧ嚎");
+ }
+
+ if (MessageQueue.offer(SlaveType.Crn, param.getCrnNo(), new Task(4, null))) {
+ return R.ok();
+ } else {
+ return R.error("鍛戒护涓嬪彂澶辫触");
+ }
+ }
+
+ @ManagerAuth(memo = "娓呴櫎鑱旀満浠诲姟")
+ @PostMapping("/operator/taskClear")
+ public R crnTaskClear(CrnOperatorParam param){
+ CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, param.getCrnNo());
+ if (crnThread == null) {
+ return R.error("鍫嗗灈鏈轰笉鍦ㄧ嚎");
+ }
+ CrnProtocol crnProtocol = crnThread.getCrnProtocol();
+ if (crnProtocol == null) {
+ return R.error("鍫嗗灈鏈轰笉鍦ㄧ嚎");
+ }
+
+ if (MessageQueue.offer(SlaveType.Crn, param.getCrnNo(), new Task(5, null))) {
+ return R.ok();
+ } else {
+ return R.error("鍛戒护涓嬪彂澶辫触");
+ }
}
// @ManagerAuth(memo = "鏆傚仠")
@@ -501,5 +548,17 @@
}
}
+ private boolean isLocSts(String row,String bay,String lev){
+ String loc = String.format("%2d",row)+String.format("%3d",bay)+String.format("%2d",lev);
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", loc));
+ if (Cools.isEmpty(locMast)){
+ return false;
+ }
+ if (locMast.getLocType1() == 2){
+ return true;
+ }
+ return false;
+ }
+
}
--
Gitblit v1.9.1