From 915253f87d4ef04d886bebb50135d75082ae0eee Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 15 九月 2023 13:37:22 +0800
Subject: [PATCH] 换一种方式检查plc连接

---
 crontask/cron_task.go |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/crontask/cron_task.go b/crontask/cron_task.go
index 505156d..968abfc 100644
--- a/crontask/cron_task.go
+++ b/crontask/cron_task.go
@@ -31,8 +31,12 @@
 		}
 		for _, addressItem := range plcConfig.Details {
 			if addressItem.FieldName == constvar.PlcStartAddressTypeFinishNumber {
-				finishNumber, err := service.PlcReadDirect(plcConfig, addressItem.StartAddress, addressItem.Position)
-				if err == nil && finishNumber != 0 {
+				value, err := service.PlcReadDirect(plcConfig, addressItem.StartAddress, addressItem.Length, addressItem.Type)
+				if err != nil {
+					continue
+				}
+				finishNumber := cast.ToInt64(value)
+				if finishNumber != 0 {
 					service.PlcCacheSet(addressItem.Position, constvar.PlcCacheKeyFinishNumber, finishNumber)
 					_ = service.NewProgressService().UpdateProgress(addressItem.Position, cast.ToInt64(finishNumber))
 				}
@@ -52,8 +56,12 @@
 		}
 		for _, addressItem := range plcConfig.Details {
 			if addressItem.FieldName == constvar.PlcStartAddressTypeTotalNumber {
-				totalNumber, err := service.PlcReadDirect(plcConfig, addressItem.StartAddress, addressItem.Position)
-				if err == nil && totalNumber != 0 {
+				value, err := service.PlcReadDirect(plcConfig, addressItem.StartAddress, addressItem.Length, addressItem.Type)
+				if err != nil {
+					continue
+				}
+				totalNumber := cast.ToInt64(value)
+				if totalNumber != 0 {
 					service.PlcCacheSet(addressItem.Position, constvar.PlcCacheKeyTotalNumber, totalNumber)
 					_ = service.NewProgressService().UpdateProgress(addressItem.Position, cast.ToInt64(totalNumber))
 				}

--
Gitblit v1.8.0