From c904f735e0b8a488ef56744c08f8e10258639bce Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 05 六月 2025 15:54:58 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/RgvController.java | 68 ++++++++++++++++++++++++++++++++--
1 files changed, 64 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/RgvController.java b/src/main/java/com/zy/asrs/controller/RgvController.java
index ecaf5ff..59cb2d8 100644
--- a/src/main/java/com/zy/asrs/controller/RgvController.java
+++ b/src/main/java/com/zy/asrs/controller/RgvController.java
@@ -14,10 +14,12 @@
import com.zy.asrs.entity.BasRgv;
import com.zy.asrs.entity.BasRgvErr;
import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.WrkMastSta;
import com.zy.asrs.mapper.BasRgvErrMapper;
import com.zy.asrs.service.BasRgvService;
import com.zy.asrs.service.LocMastService;
import com.zy.asrs.service.WrkMastService;
+import com.zy.asrs.service.WrkMastStaService;
import com.zy.asrs.service.impl.MainServiceImpl;
import com.zy.core.CrnThread;
import com.zy.core.RgvThread;
@@ -70,6 +72,8 @@
private MainServiceImpl mainService;
@Autowired
private LocMastService locMastService;
+ @Autowired
+ private WrkMastStaService wrkMastStaService;
int wrkNo = 9990;
@@ -218,6 +222,9 @@
case 17://鎭㈠鑱旀満浠诲姟
DB="6.0";
break;
+ case 18://娓呮鑱旀満浠诲姟
+ DB="6.1";
+ break;
default:
return R.error("鎸夐挳涓嶅瓨鍦紵锛燂紵锛燂紒锛侊紒");
}
@@ -294,6 +301,12 @@
return rgvFetchSingleStepPut(param,3)?R.ok():R.error();
}
+ @ManagerAuth(memo = "鍙栨斁")
+ @PostMapping("/operator/single/step/four/put")
+ public R rgvFetchSingleStepFourPut(RgvOperatorParam param){
+ return rgvFetchSingleStepPut(param,4)?R.ok():R.error();
+ }
+
public boolean rgvFetchSingleStepPut(RgvOperatorParam param ,Integer type){
wrkNo++;
RgvCommand command = new RgvCommand();
@@ -309,6 +322,9 @@
break;
case 3:
fetchPut = RgvTaskModeType.X_MOVE;
+ break;
+ case 4:
+ fetchPut = RgvTaskModeType.FETCH_PUT;
break;
default:
return false;
@@ -326,7 +342,7 @@
// command.setDestinationStaNo2(param.getStaNo2()); // 鐩爣绔�
command.setCommand((short) 0);
- return rgvControl(command);
+ return rgvControlD(command);
}
@@ -429,15 +445,29 @@
if (rgvProtocol == null) {
continue;
}
+ if (rgvProtocol.getTaskNo1() != 0){
+ WrkMastSta wrkMastSta = wrkMastStaService.selectOne(new EntityWrapper<WrkMastSta>()
+ .setSqlSelect("TOP 1 wrk_no as wrkNo , wrk_sts as wrkSts, create_time as createTime")
+ .eq("wrk_No", rgvProtocol.getTaskNo1())
+
+ .orderBy("create_time", false)
+
+ );
+ if (!Cools.isEmpty(wrkMastSta)){
+ vo.setWrkSts(wrkMastSta.getWrkSts());
+ }
+ }
vo.setStatusType(rgvProtocol.modeType.desc); // 妯″紡鐘舵��
vo.setStatus(rgvProtocol.getStatusType1().desc); // 鐘舵��
vo.setWorkNo1(rgvProtocol.getTaskNo1()); // 宸ヤ綅1浠诲姟鍙�
- vo.setRgvPos(rgvProtocol.getRgvPos());
+ vo.setRgvPos(rgvProtocol.getCode());
vo.setPakMk(rgvThread.isPakMk()?"鏃犻攣":"閿佸畾");
vo.setWalkPos(rgvProtocol.getAlarm() == 0?"姝e父":"鎶ヨ");
vo.setWarnCode(String.valueOf(rgvProtocol.getAlarm()));
-// vo.setStaNo(rgvProtocol.getSouSta().intValue());
-// vo.setSourceStaNo(rgvProtocol.getEndSta().intValue());
+ vo.setList32(rgvProtocol.getList32());
+ vo.setList33(rgvProtocol.getList33());
+ vo.setList34(rgvProtocol.getList34());
+ vo.setList35(rgvProtocol.getList35());
if (rgvProtocol.getAlarm() > 0) {
BasRgvErr rgvErr = basRgvErrMapper.selectById(rgvProtocol.getAlarm());
vo.setAlarm(rgvErr==null?"鏈煡寮傚父":rgvErr.getErrName());
@@ -611,4 +641,34 @@
return false;
}
+ private boolean rgvControlD(RgvCommand command){
+ if (command.getRgvNo() == null) {
+ throw new CoolException("璇烽�夋嫨RGV");
+ }
+ for (RgvSlave rgv : slaveProperties.getRgv()) {
+ // 鑾峰彇RGV淇℃伅
+ if (command.getRgvNo().equals(rgv.getId())) {
+// SiemensRgvThread rgvThread = (SiemensRgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+// if (rgvThread == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+// RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+// if (rgvProtocol == null) {
+// throw new CoolException("RGV涓嶅湪绾�");
+// }
+ try{
+ if (MessageQueue.offer(SlaveType.Rgv, rgv.getId(), new Task(11, command))) {
+ return true;
+ } else {
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
+ }catch (Exception e){
+ log.error("鍗曟浠诲姟涓嬪彂澶辫触锛屽紓甯革細"+e);
+ throw new CoolException("鍛戒护涓嬪彂澶辫触");
+ }
+ }
+ }
+ return false;
+ }
+
}
\ No newline at end of file
--
Gitblit v1.9.1