liuxiulin 2 ماه پیش
والد
کامیت
de100d21de
2فایلهای تغییر یافته به همراه4 افزوده شده و 2 حذف شده
  1. 3 0
      pkg/utils/util.go
  2. 1 2
      services/scene-service/internal/service/manager/device_status.go

+ 3 - 0
pkg/utils/util.go

@@ -96,6 +96,9 @@ func CheckValue(target string, value interface{}, fieldType, operator int) bool
 	switch value.(type) {
 	case string:
 		strValue = value.(string)
+		if fieldType == 2 {
+			intValue, _ = strconv.Atoi(target)
+		}
 	case int:
 		intValue = value.(int)
 	case float64:

+ 1 - 2
services/scene-service/internal/service/manager/device_status.go

@@ -154,9 +154,8 @@ func (d *DeviceSceneService) checkDeviceCondition(config DeviceSceneConfig) (boo
 		// 判断是否满足条件并填入到result
 		fmt.Printf("判断条件:target_value:%s,value:%s,type:%d,operator:%d\n", v.TargetValue, j.Get(v.Field), v.FieldType, v.Operator)
 		result := utils.CheckValue(v.TargetValue, j.Get(v.Field), v.FieldType, v.Operator)
-		fmt.Printf("判断结果:%v\n", result)
 		results = append(results, result)
-		fmt.Printf("判断结果:%v\n", result)
+		fmt.Printf("判断结果:%v\n", result)
 	}
 	switch config.DecisionExpr {
 	case "and":