From fc85945b34f5051635aacf90446e8061a683fb2f Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 15 九月 2023 14:22:53 +0800 Subject: [PATCH] plc新建连接失败记录日志 --- api/v1/plc.go | 29 +++++++++++++++++++++++++---- 1 files changed, 25 insertions(+), 4 deletions(-) diff --git a/api/v1/plc.go b/api/v1/plc.go index 907e8d8..782e28c 100644 --- a/api/v1/plc.go +++ b/api/v1/plc.go @@ -6,7 +6,10 @@ "apsClient/model/response" _ "apsClient/model/response" "apsClient/pkg/contextx" + "apsClient/pkg/ecode" + "apsClient/pkg/plc" "apsClient/service" + "fmt" "github.com/gin-gonic/gin" "github.com/spf13/cast" ) @@ -19,18 +22,36 @@ // @Produce application/json // @Param object body request.SendProcessParams true "鏌ヨ鍙傛暟" // @Success 200 {object} contextx.Response{data=response.ProductProgress} "鎴愬姛" -// @Router /v1/plc/productProgress [get] +// @Router /v1/plc/productProgress [post] func (slf *PlcApi) GetProductProgress(c *gin.Context) { - var params request.SendProcessParams + var params request.GetProductProgress ctx, ok := contextx.NewContext(c, ¶ms) if !ok { return } - finishNumber, _ := service.PlcCacheGet(constvar.PlcCacheKeyFinishNumber) - totalNumber, _ := service.PlcCacheGet(constvar.PlcCacheKeyTotalNumber) + finishNumber, _ := service.PlcCacheGet(params.Position, constvar.PlcCacheKeyFinishNumber) + totalNumber, _ := service.PlcCacheGet(params.Position, constvar.PlcCacheKeyTotalNumber) resp := new(response.ProductProgress) resp.FinishNumber = cast.ToInt(finishNumber) resp.TotalNumber = cast.ToInt(totalNumber) + + plcConfig, code := service.NewDevicePlcService().GetDevicePlc() + if code != ecode.OK { + return + } + plcStatus := 1 //鏂紑杩炴帴 + ipAddr := fmt.Sprintf("%s:%v", plcConfig.Address, plcConfig.Port) + + _, err := plc.GetModbusConnection(ipAddr) + if err == nil { + if resp.FinishNumber > 0 { //鐢熶骇 + plcStatus = 2 + } else { //寰呮満 + plcStatus = 3 + } + } + resp.PlcStatus = plcStatus + ctx.OkWithDetailed(resp) } -- Gitblit v1.8.0