From bb48a3ef0bdc2b5a0b50ca429bc5bc0a118f9732 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期五, 13 九月 2024 02:49:22 +0800 Subject: [PATCH] use goroutinne run rfid read --- service/nvcs.go | 37 +++++++++++++++++++++---------------- 1 files changed, 21 insertions(+), 16 deletions(-) diff --git a/service/nvcs.go b/service/nvcs.go index fbab7c9..fbff0ac 100644 --- a/service/nvcs.go +++ b/service/nvcs.go @@ -185,6 +185,7 @@ logger.Info("UDP server listening on port %s...", port) + var lastFloor int // 鏃犻檺寰幆绛夊緟鎺ユ敹鏁版嵁 for { // 鍒涘缓涓�涓紦鍐插尯鏉ュ瓨鍌ㄦ帴鏀剁殑鏁版嵁 @@ -216,9 +217,6 @@ elevator := data.Elevator[0] - // 璁板綍鐢垫杩愯鐘舵�� - ElevatorRunState = elevator.Status.RunDir - var runStateStr string if config.NVCSConf.RunState { if elevator.Status.RunDir == RunUp { @@ -241,10 +239,13 @@ } // correct floor when elevator stopped. - if ElevatorRunState == 0 { - A1CorrectFloor() + if elevator.Status.RunDir == 0 { + go A1CorrectFloor() } else { RunningCorrectTaskId = "" + if lastFloor == elevator.Status.Floor { + continue + } } // 绋嬪簭閮ㄧ讲鍦ㄨ澶囩, 瀛楃鍙犲姞鍣ㄤ笂鎶ョ殑鍚嶇О鍏佽涓虹┖. 鍦ㄤ簯绔�, 鍚嶇О蹇呴』涓庢憚鍍忔満鐩稿悓 @@ -252,18 +253,22 @@ elevator.Name = "1" } - var d = models.Positions{ - DeviceId: elevator.Name, - Pos: elevator.Status.FloorName, - RunDir: elevator.Status.RunDir, - CreateTime: time.Now().Unix(), - TimeString: time.Now().Format("2006-01-02 15:04:05"), - } + lastFloor = elevator.Status.Floor - err = d.Save() - if err != nil { - logger.Warn("Device position update error:%s", err.Error()) - } + go func() { + var d = models.Positions{ + DeviceId: elevator.Name, + Pos: elevator.Status.FloorName, + RunDir: elevator.Status.RunDir, + CreateTime: time.Now().Unix(), + TimeString: time.Now().Format("2006-01-02 15:04:05"), + } + + err = d.Save() + if err != nil { + logger.Warn("Device position update error:%s", err.Error()) + } + }() } } -- Gitblit v1.8.0