From 52a57d1a6cd61009304656db35e50d4b9dbbda03 Mon Sep 17 00:00:00 2001
From: cpT <1@123>
Date: 星期二, 01 七月 2025 11:16:40 +0800
Subject: [PATCH] #改造
---
src/main/java/com/zy/core/thread/SiemensCrnThread.java | 22 ++++++++++
src/main/webapp/static/wms/js/crnOperate/crnOperate.js | 7 +++
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 17 +++++---
src/main/java/com/zy/core/CrnThread.java | 1
src/main/java/com/zy/asrs/controller/CrnController.java | 67 +++++++++++++++++++++++++++------
src/main/webapp/views/deviceOperate/crnOperate.html | 5 ++
src/main/java/com/zy/asrs/domain/vo/CrnListVo.java | 1
7 files changed, 98 insertions(+), 22 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/CrnController.java b/src/main/java/com/zy/asrs/controller/CrnController.java
index 4a7dc85..688fed8 100644
--- a/src/main/java/com/zy/asrs/controller/CrnController.java
+++ b/src/main/java/com/zy/asrs/controller/CrnController.java
@@ -331,6 +331,7 @@
}
vo.setInEnable(basCrnp.getInEnable());
vo.setOutEnable(basCrnp.getOutEnable());
+ vo.setTaskComplete(crnThread.getResetFlag()? "浠诲姟瀹屾垚涓嬪彂绛夊緟":"-");
}
return R.ok().add(list);
}
@@ -549,19 +550,54 @@
// if (SystemProperties.WCS_RUNNING_STATUS.get()) {
// return R.error("wcs绯荤粺鐘舵�佷负寮�鍚�");
// }
- CrnCommand command = new CrnCommand();
- command.setCrnNo(param.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
- command.setTaskNo((short) 0); // 宸ヤ綔鍙�
- command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
- command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
- command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓
- command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪
- command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰
- command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺�
- command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
- command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞�
- command.setCommand((short)0);
- return crnControl(command)?R.ok():R.error();
+ if (Cools.isEmpty(param.getCrnNo()) || param.getCrnNo() == 0) {
+ return R.error("璇烽�夋嫨鍫嗗灈鏈�");
+ }
+ CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, param.getCrnNo());
+ crnThread.setResetFlag(true);
+ return R.ok();
+// CrnCommand command = new CrnCommand();
+// command.setCrnNo(); // 鍫嗗灈鏈虹紪鍙�
+// command.setTaskNo((short) 0); // 宸ヤ綔鍙�
+// command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
+// command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
+// command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓
+// command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪
+// command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰
+// command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺�
+// command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
+// command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞�
+// command.setCommand((short)0);
+// return crnControl(command)?R.ok():R.error();
+ }
+
+ @ManagerAuth(memo = "浠诲姟瀹屾垚鎸囦护娓呴櫎")
+ @PostMapping("/crn/operator/taskCompleteClearCommand")
+ public R crnTaskCompleteClearCommand(CrnOperatorParam param){
+ // 绯荤粺杩愯鐘舵�佸垽鏂�
+// if (SystemProperties.WCS_RUNNING_STATUS.get()) {
+// return R.error("wcs绯荤粺鐘舵�佷负寮�鍚�");
+// }
+ // 绯荤粺杩愯鐘舵�佸垽鏂�
+ if (Cools.isEmpty(param.getCrnNo()) || param.getCrnNo() == 0) {
+ return R.error("璇烽�夋嫨鍫嗗灈鏈�");
+ }
+ CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, param.getCrnNo());
+ crnThread.setResetFlag(false);
+ return R.ok();
+// CrnCommand command = new CrnCommand();
+// command.setCrnNo(); // 鍫嗗灈鏈虹紪鍙�
+// command.setTaskNo((short) 0); // 宸ヤ綔鍙�
+// command.setAckFinish((short) 1); // 浠诲姟瀹屾垚纭浣�
+// command.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
+// command.setSourcePosX((short) 0); // 婧愬簱浣嶆帓
+// command.setSourcePosY((short) 0); // 婧愬簱浣嶅垪
+// command.setSourcePosZ((short) 0); // 婧愬簱浣嶅眰
+// command.setDestinationPosX((short) 0); // 鐩爣搴撲綅鎺�
+// command.setDestinationPosY((short) 0); // 鐩爣搴撲綅鍒�
+// command.setDestinationPosZ((short) 0); // 鐩爣搴撲綅灞�
+// command.setCommand((short)0);
+// return crnControl(command)?R.ok():R.error();
}
// @ManagerAuth(memo = "鏆傚仠")
@@ -624,6 +660,7 @@
}
CrnCommand crnCommand = new CrnCommand();
crnCommand.setCrnNo(crn.getId()); // 鍫嗗灈鏈虹紪鍙�
+ crnCommand.setLaneNo(crnProtocol.getLaneNo()); // 鍫嗗灈鏈哄贩閬撳彿
crnCommand.setTaskMode(CrnTaskModeType.CLEAR);
crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
crnCommand.setCommand((short) 0); // 浠诲姟瀹屾垚纭浣�
@@ -781,6 +818,8 @@
if (crnProtocol == null) {
throw new CoolException("鍫嗗灈鏈轰笉鍦ㄧ嚎");
}
+ command.setLaneNo(crnProtocol.getLaneNo()); // 鍫嗗灈鏈哄贩閬撳彿
+
// 绌洪棽鍒ゆ柇
// if (crnProtocol.getStatusType().equals(com.zy.core.enums.CrnStatusType.IDLE) && crnProtocol.getTaskNo() == 0) {
if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(4, command))) {
@@ -815,6 +854,8 @@
if (crnProtocol == null) {
throw new CoolException("鍫嗗灈鏈轰笉鍦ㄧ嚎");
}
+ command.setLaneNo(crnProtocol.getLaneNo()); // 鍫嗗灈鏈哄贩閬撳彿
+
// 绌洪棽鍒ゆ柇
// if (crnProtocol.getStatusType().equals(com.zy.core.enums.CrnStatusType.IDLE) && crnProtocol.getTaskNo() == 0) {
if (MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, command))) {
diff --git a/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java b/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java
index fe895e9..baa96a6 100644
--- a/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/CrnListVo.java
@@ -112,6 +112,7 @@
// 鍙嚭
private String outEnable;
+ private String taskComplete = "鏃�";
private String errorCrn;
public void setXspeed(Float xspeed) {
diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index f9d8209..2b8cad3 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -668,7 +668,7 @@
}
CrnSlave crnSlave = new CrnSlave(crn);
- if (Cools.isEmpty(crnProtocol.getLoaded()) || crnProtocol.getLoaded()==0){
+ if (Cools.isEmpty(crnProtocol.getLaneNo()) || crnProtocol.getLaneNo()==0){
continue;
}
@@ -778,7 +778,7 @@
// 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
CrnCommand crnCommand = new CrnCommand();
crnCommand.setCrnNo(crnProtocol.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
- crnCommand.setCrnNo(crnProtocol.getLaneNo()); // 鍫嗗灈鏈哄贩閬撶紪鍙�
+ crnCommand.setLaneNo(crnProtocol.getLaneNo()); // 鍫嗗灈鏈哄贩閬撶紪鍙�
crnCommand.setTaskNo((short)999); // 宸ヤ綔鍙�
crnCommand.setAckFinish((short) 0); // 浠诲姟瀹屾垚纭浣�
crnCommand.setTaskMode(CrnTaskModeType.GO_ORIGIN); // 浠诲姟妯″紡: 搴撲綅绉昏浆
@@ -831,7 +831,7 @@
}
CrnSlave crn = new CrnSlave(crnSlave);
- if (Cools.isEmpty(crnProtocol.getLoaded()) || crnProtocol.getLoaded()==0){
+ if (Cools.isEmpty(crnProtocol.getLaneNo()) || crnProtocol.getLaneNo()==0){
continue;
}
@@ -1335,7 +1335,7 @@
}
CrnSlave crn = new CrnSlave(crnSlave);
- if (Cools.isEmpty(crnProtocol.getLoaded()) || crnProtocol.getLoaded()==0){
+ if (Cools.isEmpty(crnProtocol.getLaneNo()) || crnProtocol.getLaneNo()==0){
continue;
}
@@ -1357,11 +1357,14 @@
}
// Thread.sleep(300);
//纭瀹屾垚淇″彿
- CrnOperatorParam crnOperatorParam = new CrnOperatorParam();
- crnOperatorParam.setCrnNo(crn.getId());
+// CrnOperatorParam crnOperatorParam = new CrnOperatorParam();
+// crnOperatorParam.setCrnNo(crn.getId());
Date now = new Date();
- crnController.crnTaskComplete(crnOperatorParam);
+// crnController.crnTaskComplete(crnOperatorParam);
+// MessageQueue.offer(SlaveType.Crn, crn.getId(), new Task(2, command))
+ crnThread.setResetFlag(true);
+
if (!Cools.isEmpty(taskWrk)) {
if (taskWrk.getIoType() == 1 && taskWrk.getWrkSts() == 3) {
taskWrk.setWrkSts(4);//鍏ュ簱瀹屾垚
diff --git a/src/main/java/com/zy/core/CrnThread.java b/src/main/java/com/zy/core/CrnThread.java
index 70c3d75..082d9b9 100644
--- a/src/main/java/com/zy/core/CrnThread.java
+++ b/src/main/java/com/zy/core/CrnThread.java
@@ -7,5 +7,6 @@
CrnProtocol getCrnProtocol();
void setResetFlag(boolean flag);
+ boolean getResetFlag();
}
diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
index ce0da89..48cbfbf 100644
--- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java
@@ -207,10 +207,12 @@
backHpFlag = false;
}
- if (!Cools.isEmpty(crnProtocol.getLoaded()) && crnProtocol.getLoaded()!=0){
+ if (!Cools.isEmpty(crnProtocol.getLaneNo()) && crnProtocol.getLaneNo()!=0){
CrnCommand crnCommand = new CrnCommand();
crnCommand.setAckFinish((short)1);
+// crnCommand.setTaskNo(crnProtocol.getTaskNo());
crnCommand.setLaneNo(crnProtocol.getLaneNo());
+ crnCommand.setTaskMode(CrnTaskModeType.NONE); // 浠诲姟妯″紡
if (write(crnCommand)) {
resetFlag = false;
}
@@ -556,4 +558,22 @@
public void setWrkSign() {
}
+
+ /**
+ * 娓呴櫎浣滀笟鍚姩涓�
+ */
+ @Override
+ public void setResetFlag(boolean flag) {
+ this.resetFlag = flag;
+ }
+
+
+ /**
+ * 娓呴櫎浣滀笟鍚姩涓�
+ */
+ @Override
+ public boolean getResetFlag() {
+ return resetFlag;
+ }
+
}
diff --git a/src/main/webapp/static/wms/js/crnOperate/crnOperate.js b/src/main/webapp/static/wms/js/crnOperate/crnOperate.js
index 1bf52c0..a1bd0db 100644
--- a/src/main/webapp/static/wms/js/crnOperate/crnOperate.js
+++ b/src/main/webapp/static/wms/js/crnOperate/crnOperate.js
@@ -105,6 +105,13 @@
});
}
+// 浠诲姟瀹屾垚
+function taskCompleteClearCommand() {
+ http.post(baseUrl+"/crn/operator/taskCompleteClearCommand", getReqParam(), function (res) {
+ layer.msg(res.msg);
+ });
+}
+
// 娓呴櫎鍛戒护
function clearCommand() {
http.post(baseUrl+"/crn/operator/clearCommand", getReqParam(), function (res) {
diff --git a/src/main/webapp/views/deviceOperate/crnOperate.html b/src/main/webapp/views/deviceOperate/crnOperate.html
index 8406daf..a8ab6cd 100644
--- a/src/main/webapp/views/deviceOperate/crnOperate.html
+++ b/src/main/webapp/views/deviceOperate/crnOperate.html
@@ -28,6 +28,8 @@
</el-table-column>
<el-table-column property="deviceStatus" label="璁惧鐘舵��">
</el-table-column>
+ <el-table-column property="taskComplete" label="浠诲姟瀹屾垚鎸囦护">
+ </el-table-column>
<el-table-column property="errorCrn" label="寮傚父鎻愮ず">
</el-table-column>
</el-table>
@@ -81,7 +83,8 @@
<!-- <el-button @click="requestOperate('take')" type="primary">鍑哄簱</el-button>-->
<!-- <el-button @click="requestOperate('stockMove')" type="primary">搴撲綅杞Щ</el-button>-->
<!-- <el-button @click="requestOperate('siteMove')" type="primary">绔欏埌绔�</el-button>-->
-<!-- <el-button @click="requestOperate('taskComplete')" type="primary">浠诲姟瀹屾垚</el-button>-->
+ <el-button @click="requestOperate('taskComplete')" type="primary">浠诲姟瀹屾垚</el-button>
+ <el-button @click="requestOperate('taskCompleteClearCommand')" type="primary">浠诲姟瀹屾垚鎸囦护娓呴櫎</el-button>
<!-- <el-button @click="requestOperate('clearCommand')" type="primary">娓呴櫎鍛戒护</el-button>-->
<!-- <el-button @click="requestOperate('reset')" type="primary">澶嶄綅</el-button>-->
<br/>
--
Gitblit v1.9.1