From 1f096af76bf2398348c12fe3d3144cdd7c762985 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期日, 20 十月 2024 23:34:20 +0800 Subject: [PATCH] fix find move dir --- repository/captureRepo.go | 48 ++++++++++++++++++++++++++++-------------------- 1 files changed, 28 insertions(+), 20 deletions(-) diff --git a/repository/captureRepo.go b/repository/captureRepo.go index 73f0347..92d391c 100644 --- a/repository/captureRepo.go +++ b/repository/captureRepo.go @@ -3,6 +3,8 @@ import ( "encoding/base64" "encoding/json" + "strconv" + "strings" "time" "gat1400Exchange/client" @@ -218,16 +220,8 @@ floor = runState.Floor for i := 0; i < config.NVCSConf.WaitRunTime; i++ { - if runState = nvcs.FindMovePosition(faceAppearTime.Unix()+3, floor); runState.Floor != "" { - switch runState.RunState { - case nvcs.RunUp: - runDir = "in" - case nvcs.RunDown: - runDir = "out" - case nvcs.RunStop: - runDir = "" - } - + if runState = nvcs.CurrentRunState(); runState.Floor != "" && runState.Floor != floor { + runDir = compareFloor(floor, runState.Floor) break } @@ -279,16 +273,8 @@ floor = runState.Floor for i := 0; i < config.NVCSConf.WaitRunTime; i++ { - if runState = nvcs.FindMovePosition(faceAppearTime.Unix()+3, floor); runState.Floor != "" { - switch runState.RunState { - case nvcs.RunUp: - runDir = "in" - case nvcs.RunDown: - runDir = "out" - case nvcs.RunStop: - runDir = "" - } - + if runState = nvcs.CurrentRunState(); runState.Floor != "" && runState.Floor != floor { + runDir = compareFloor(floor, runState.Floor) break } @@ -355,3 +341,25 @@ logger.Warn(err.Error()) } } + +func compareFloor(str1, str2 string) string { + // 鍘绘帀瀛楃涓叉渶鍚庝竴涓瓧绗� 'F' + numStr1 := strings.TrimSuffix(str1, "F") + numStr2 := strings.TrimSuffix(str2, "F") + + // 杞崲涓� int 绫诲瀷 + num1, err1 := strconv.Atoi(numStr1) + num2, err2 := strconv.Atoi(numStr2) + + // 妫�鏌ヨ浆鎹㈡槸鍚︽垚鍔� + if err1 != nil || err2 != nil { + return "" + } + + // 姣旇緝涓や釜鏁存暟鐨勫ぇ灏� + if num1 > num2 { + return "out" + } else { + return "in" + } +} -- Gitblit v1.8.0