From adc5f83146f898cd2743313e619fff47141799f7 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期一, 28 八月 2023 10:46:25 +0800
Subject: [PATCH] 去掉获取工艺参数重试,增加plc写入失败重试

---
 api/v1/task.go |   29 +++++++++++------------------
 1 files changed, 11 insertions(+), 18 deletions(-)

diff --git a/api/v1/task.go b/api/v1/task.go
index 88a677d..83c199e 100644
--- a/api/v1/task.go
+++ b/api/v1/task.go
@@ -66,14 +66,14 @@
 	ctx.OkWithDetailed(taskData)
 }
 
-// TaskStart
+// GetProcessParams
 // @Tags      Task
-// @Summary   浠诲姟寮�濮�
+// @Summary   浠诲姟寮�濮嬶紙鑾峰彇宸ヨ壓鍙傛暟锛�
 // @Produce   application/json
 // @Param     id  path    int true  "宸ュ簭id"
 // @Success   200   {object}  contextx.Response{data=response.ProcessParamsResponse}  "鎴愬姛"
 // @Router    /v1/task/start/{id} [get]
-func (slf *TaskApi) TaskStart(c *gin.Context) {
+func (slf *TaskApi) GetProcessParams(c *gin.Context) {
 	ctx, ok := contextx.NewContext(c, nil)
 	if !ok {
 		return
@@ -163,14 +163,14 @@
 	ctx.Ok()
 }
 
-// SendProcessParams
+// TaskStart
 // @Tags      Task
-// @Summary   涓嬪彂宸ヨ壓鍙傛暟
+// @Summary   涓嬪彂宸ヨ壓鍙傛暟锛堝紑濮嬩换鍔★級
 // @Produce   application/json
 // @Param     id  path    int true  "宸ュ簭id"
 // @Success   200   {object}  contextx.Response{service.GetProcessModel}  "鎴愬姛"
 // @Router    /v1/task/sendProcessParams/{id} [post]
-func (slf *TaskApi) SendProcessParams(c *gin.Context) {
+func (slf *TaskApi) TaskStart(c *gin.Context) {
 	ctx, ok := contextx.NewContext(c, nil)
 	if !ok {
 		return
@@ -267,29 +267,22 @@
 	}
 
 	logx.Info("----------------寮�濮嬩笅鍙戝伐鑹哄弬鏁�-----------------")
-	var missNumbers int
+	var failedNumbers int
 	for k, v := range paramsMap {
 		if address, ok := plc_address.Get(k); ok {
 			result, err := plc.WriteHoldingRegister(conn, address, v)
 			if err != nil {
-				logx.Errorf("WriteHoldingRegister err:%v, address: %v, key: %v value: %v", err.Error(), address, k, v)
+				failedNumbers++
+				logx.Errorf("plc write err:%v, address: %v, key: %v value: %v", err.Error(), address, k, v)
 			} else {
 				delete(paramsMap, k)
-				logx.Infof("WriteHoldingRegister ok: key: %v, value: %v, result: %v", k, v, result)
+				logx.Infof("plc write ok: key: %v, value: %v, result: %v", k, v, result)
 			}
 		} else {
 			logx.Errorf("miss param address, k:%v, v:%v", k, v)
-			missNumbers++
 		}
 	}
-	if missNumbers >= 1 {
-		caller := nsq.NewCaller(fmt.Sprintf(constvar.NsqTopicGetPlcAddress, conf.Conf.NsqConf.NodeId), fmt.Sprintf(constvar.NsqTopicSendPlcAddress, conf.Conf.NsqConf.NodeId))
-		var addressResult common.ResponsePlcAddress
-		err := caller.Call(common.RequestPlcAddress{DeviceId: conf.Conf.System.DeviceId}, &addressResult, time.Second*2)
-		if err != nil {
-			logx.Infof("SendParams2 err: %v", err.Error())
-			return err
-		}
+	if failedNumbers >= 1 { //鍐欏叆plc澶辫触, 閲嶈瘯
 		tryTimes++
 		return SendParams(paramsMap, tryTimes)
 	}

--
Gitblit v1.8.0