From e9cdecd287c7ab88ae4b4ad28a9f9343ed9ae23f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 08 九月 2022 13:38:26 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/SteThread.java | 65 ++++++++++++++++++--------------
1 files changed, 36 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/SteThread.java b/src/main/java/com/zy/core/thread/SteThread.java
index 1ba98de..a2ad916 100644
--- a/src/main/java/com/zy/core/thread/SteThread.java
+++ b/src/main/java/com/zy/core/thread/SteThread.java
@@ -42,10 +42,6 @@
private short heartBeatVal = 1;
private boolean resetFlag = false;
- private Integer lastRow;
- private Integer lastBay;
- private Integer lastLev;
-
public SteThread(SteSlave slave) {
this.slave = slave;
}
@@ -186,6 +182,12 @@
// 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴�
BasSteService service = SpringUtils.getBean(BasSteService.class);
if (null != service) {
+ // 鍚屾pakMk
+ BasSte one = service.selectById(slave.getId());
+ if (one != null) {
+ steProtocol.setPakMk(one.getPakMk());
+ }
+
BasSte basSte = new BasSte();
basSte.setSteNo(slave.getId());
if (!service.updateById(steProtocol.toSqlModel(basSte))){
@@ -306,40 +308,45 @@
}
public void modifyPos(Integer row, Integer bay, Integer lev) {
- this.lastRow = row;
- this.lastBay = bay;
- this.lastLev = lev;
+ BasSteService service = SpringUtils.getBean(BasSteService.class);
+ if (!service.updatePos(this.slave.getId(), row, bay, lev)) {
+ log.error("鏇存柊{}鍙风┛姊溅瀹氫綅澶辫触 ===>> 鎺掞細銆恵}銆�, 鍒楋細銆恵}銆戯紝灞傦細銆恵}銆�", this.slave.getId(), row, bay, lev);
+ }
}
public boolean confirmPos() {
- if (this.lastRow != null && this.lastRow != 0) {
- if (this.lastBay != null && this.lastBay != 0) {
- if (this.lastLev != null && this.lastLev != 0) {
- BasSteService service = SpringUtils.getBean(BasSteService.class);
- BasSte basSte = service.selectById(slave.getId());
- if (basSte != null) {
- // 鏇存柊plc鏁版嵁鍧�
- short[] arr = new short[] {this.lastRow.shortValue(), this.lastBay.shortValue(), this.lastLev.shortValue()};
- OperateResult result = siemensS7Net.Write("V1002", arr);
- if (result.IsSuccess) {
- // 鏇存柊鏁版嵁搴�
- if (service.updatePos(this.lastRow, this.lastBay, this.lastLev) > 0) {
- this.lastRow = null;
- this.lastBay = null;
- this.lastLev = null;
- return true;
- } else {
- log.error("{}鍙风┛姊溅淇敼鏁版嵁搴撳畾浣嶅け璐ワ紒锛侊紒", slave.getId());
- }
- }
- }
-
+ BasSteService service = SpringUtils.getBean(BasSteService.class);
+ BasSte basSte = service.selectById(slave.getId());
+ if (basSte != null) {
+ // 鏇存柊plc鏁版嵁鍧�
+ short[] arr = new short[] {basSte.getRow().shortValue(), basSte.getBay().shortValue(), basSte.getLev().shortValue()};
+ OperateResult result = siemensS7Net.Write("V1002", arr);
+ if (result.IsSuccess) {
+ // 鏇存柊鏁版嵁搴�
+ if (service.updatePakMk(this.slave.getId(), "N")) {
+ return true;
+ } else {
+ log.error("{}鍙风┛姊溅淇敼鏁版嵁搴撳畾浣嶅け璐ワ紒锛侊紒", slave.getId());
}
}
}
return false;
}
+ public boolean modifyPosHandle(Integer row, Integer bay, Integer lev) {
+ short[] arr = new short[] {row.shortValue(), bay.shortValue(), lev.shortValue()};
+ OperateResult result = siemensS7Net.Write("V1002", arr);
+ if (!result.IsSuccess) {
+ return false;
+ }
+ BasSteService service = SpringUtils.getBean(BasSteService.class);
+ if (!service.updatePos(this.slave.getId(), row, bay, lev)) {
+ log.error("鏇存柊{}鍙风┛姊溅瀹氫綅澶辫触 ===>> 鎺掞細銆恵}銆�, 鍒楋細銆恵}銆戯紝灞傦細銆恵}銆�", this.slave.getId(), row, bay, lev);
+ return false;
+ }
+ return true;
+ }
+
@Override
public void close() {
siemensS7Net.ConnectClose();
--
Gitblit v1.9.1