zhangzengfei
2024-10-20 1f096af76bf2398348c12fe3d3144cdd7c762985
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"
   }
}