From 5bf9f5cc0ad2689de4e34d628d8ac3168df5142a Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期五, 23 八月 2024 17:41:41 +0800
Subject: [PATCH] 修复编译bug

---
 service/nvcs.go |   70 +++++++++++++++++++++--------------
 1 files changed, 42 insertions(+), 28 deletions(-)

diff --git a/service/nvcs.go b/service/nvcs.go
index 3b6aac5..d5b1f41 100644
--- a/service/nvcs.go
+++ b/service/nvcs.go
@@ -7,6 +7,7 @@
 	"io/ioutil"
 	"net"
 	"net/http"
+	"strings"
 	"time"
 
 	"gat1400Exchange/config"
@@ -66,7 +67,6 @@
 
 	logger.Info("UDP server listening on port %s...", port)
 
-	var runState string
 	// 鏃犻檺寰幆绛夊緟鎺ユ敹鏁版嵁
 	for {
 		// 鍒涘缓涓�涓紦鍐插尯鏉ュ瓨鍌ㄦ帴鏀剁殑鏁版嵁
@@ -96,19 +96,21 @@
 			continue
 		}
 
-		// 璁板綍鐢垫杩愯鐘舵��, 鍙褰曚笂琛屽拰涓嬭
-		if data.Elevator[0].Status.RunDir == RunUp {
-			runState = "涓�"
-		} else if data.Elevator[0].Status.RunDir == RunDown {
-			runState = "涓�"
+		var runState string
+		var iRunSate int
+
+		// 璁板綍鐢垫杩愯鐘舵��
+		iRunSate = data.Elevator[0].Status.RunDir
+		if config.NVCSConf.RunState {
+			if data.Elevator[0].Status.RunDir == RunUp {
+				runState = "涓�"
+			} else if data.Elevator[0].Status.RunDir == RunDown {
+				runState = "涓�"
+			}
 		}
 
-		// 宸插埌鏈�涓嬪眰
-		if data.Elevator[0].Status.Floor == 0 {
-			runState = "涓�"
-		}
-		if data.Elevator[0].Status.Floor == data.Elevator[0].Status.TotalFloors {
-			runState = "涓�"
+		if !config.NVCSConf.RunState {
+			runState = ""
 		}
 
 		// 璁剧疆osd  鏍煎紡 "1F涓� 鍥� 鏋�"
@@ -133,6 +135,7 @@
 		var d = models.Positions{
 			DeviceId:   elevator.Name,
 			Pos:        elevator.Status.FloorName,
+			RunDir:     iRunSate,
 			CreateTime: time.Now().Unix(),
 			TimeString: time.Now().Format("2006-01-02 15:04:05"),
 		}
@@ -167,10 +170,10 @@
 type A2ElevatorData struct {
 	Id    string `json:"id"`
 	State struct {
-		Floor  string  `json:"Floor"`
-		Status string  `json:"Status"`
-		TFloor int64   `json:"TFloor"`
-		Speed  float64 `json:"Speed"`
+		Floor  string `json:"Floor"`
+		Status string `json:"Status"`
+		TFloor int64  `json:"TFloor"`
+		Speed  string `json:"Speed"`
 	} `json:"State"`
 }
 
@@ -202,7 +205,7 @@
 	}
 
 	if len(configData.FloorData) > 0 {
-		A2BottomFloor, A2TopFloor = configData.FloorData[0], configData.FloorData[len(configData.FloorData[0])-1]
+		A2BottomFloor, A2TopFloor = configData.FloorData[0], configData.FloorData[len(configData.FloorData)-1]
 	}
 
 	logger.Info("A2 floor config total:%d, bottomFloor:%s, topFloor:%s", len(configData.FloorData), A2BottomFloor, A2TopFloor)
@@ -210,13 +213,15 @@
 
 func NVCSA2WebServer() {
 	// 鍏堣幏鍙栨�绘ゼ灞傛暟, 璁板綍鏈�楂樺眰
-	GetA2ElevatorConfig()
-	var runState string
+	//GetA2ElevatorConfig()
 
 	r := gin.Default()
 
 	r.POST("/", func(c *gin.Context) {
 		var req A2ElevatorData
+		var runState string
+		var iRunState int
+
 		err := c.BindJSON(&req)
 		if err != nil {
 			c.JSON(http.StatusBadRequest, nil)
@@ -225,19 +230,27 @@
 
 		logger.Debug("Received A2 report data %+v", req)
 
-		// 璁板綍鐢垫杩愯鐘舵��, 鍙褰曚笂琛屽拰涓嬭
-		if req.State.Speed > 0 {
+		// 璁板綍鐢垫杩愯鐘舵��
+		if strings.Contains(req.State.Status, "涓�") {
 			runState = "涓�"
-		} else if req.State.Speed < 0 {
+			iRunState = RunUp
+		} else if strings.Contains(req.State.Status, "涓�") {
 			runState = "涓�"
+			iRunState = RunDown
 		}
 
-		// 宸插埌鏈�涓嬪眰
-		if req.State.Floor == A2BottomFloor {
-			runState = "涓�"
-		}
-		if req.State.Floor == A2TopFloor {
-			runState = "涓�"
+		//// 宸插埌鏈�涓嬪眰
+		//if req.State.Floor == A2BottomFloor {
+		//	runState = "涓�"
+		//	iRunState = RunUp
+		//}
+		//if req.State.Floor == A2TopFloor {
+		//	runState = "涓�"
+		//	iRunState = RunDown
+		//}
+
+		if !config.NVCSConf.RunState {
+			runState = ""
 		}
 
 		if config.NVCSConf.OSD != "" {
@@ -250,6 +263,7 @@
 		var d = models.Positions{
 			DeviceId:   req.Id,
 			Pos:        req.State.Floor,
+			RunDir:     iRunState,
 			CreateTime: time.Now().Unix(),
 			TimeString: time.Now().Format("2006-01-02 15:04:05"),
 		}

--
Gitblit v1.8.0