refactor: dbms与标签管理优化

This commit is contained in:
meilin.huang
2024-03-21 17:15:52 +08:00
parent b13d27ccd6
commit b2cfd1517c
43 changed files with 536 additions and 564 deletions

View File

@@ -2,64 +2,10 @@ package anyx
import (
"encoding/json"
"math"
"reflect"
"strconv"
)
// any类型转换为string, 如果any为nil则返回空字符串
func ConvString(val any) string {
if value, ok := val.(string); !ok {
return ""
} else {
return value
}
}
// any类型转换为int可将字符串或int64转换, 如果any为nil则返回0
func ConvInt(val any) int {
switch value := val.(type) {
case int:
return value
case string:
if intV, err := strconv.Atoi(value); err == nil {
return intV
}
case int64:
return int(value)
case uint64:
return int(value)
case int32:
return int(value)
case uint32:
return int(value)
case int16:
return int(value)
case uint16:
return int(value)
case int8:
return int(value)
case uint8:
return int(value)
case float32:
return int(value)
case float64:
return int(math.Round(value))
default:
return 0
}
return 0
}
// any类型转换为int64, 如果any为nil则返回0
func ConvInt64(val any) int64 {
if value, ok := val.(int64); !ok {
return int64(ConvInt(val))
} else {
return value
}
}
func IsBlank(value any) bool {
if value == nil {
return true