From 20bbbcc1d14536ddaa498ac84a6008828df8dc1c Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期三, 13 十二月 2023 20:23:11 +0800
Subject: [PATCH] 往plc写目标数时,优先往写入地址写,没有写入地址再往读取地址写

---
 constvar/const.go |    5 +++--
 api/v1/task.go    |    8 +++++++-
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/api/v1/task.go b/api/v1/task.go
index 6729282..5f348a8 100644
--- a/api/v1/task.go
+++ b/api/v1/task.go
@@ -311,8 +311,14 @@
 			processModelNumber = processModel.Number
 		}
 
+		fieldType := constvar.PlcStartAddressTypeTotalNumber
+		for _, pc := range plcConfig.Details { //濡傛灉鏈夊啓鍏ュ湴鍧�锛屼紭鍏堝線鍐欏叆鍦板潃鍐欏叆锛屾病鏈夌殑璇濆線璇诲彇鍦板潃鍐欏叆
+			if pc.FieldName == constvar.PlcStartAddressTypeTotalNumberWrite && pc.Channel == procedure.Channel {
+				fieldType = constvar.PlcStartAddressTypeTotalNumberWrite
+			}
+		}
 		plcConfig.CurrentTryTimes = 0
-		err = service.PlcWrite(plcConfig, constvar.PlcStartAddressTypeTotalNumber, procedure.Channel, order.Amount.IntPart())
+		err = service.PlcWrite(plcConfig, fieldType, procedure.Channel, order.Amount.IntPart())
 		if err != nil {
 			ctx.FailWithMsg(ecode.NeedConfirmedErr, "PLC璇锋眰澶辫触锛岃妫�鏌LC閰嶇疆锛�")
 			return
diff --git a/constvar/const.go b/constvar/const.go
index 65d9828..152d582 100644
--- a/constvar/const.go
+++ b/constvar/const.go
@@ -15,8 +15,9 @@
 type PlcStartAddressType int
 
 const (
-	PlcStartAddressTypeFinishNumber PlcStartAddressType = 1
-	PlcStartAddressTypeTotalNumber  PlcStartAddressType = 2
+	PlcStartAddressTypeFinishNumber     PlcStartAddressType = 1
+	PlcStartAddressTypeTotalNumber      PlcStartAddressType = 2
+	PlcStartAddressTypeTotalNumberWrite PlcStartAddressType = 3
 )
 
 type PlcStartAddressValueType string

--
Gitblit v1.8.0