数据类型转换优化

This commit is contained in:
2023-05-05 11:42:09 +08:00
parent 214feb35f7
commit b8c7725c08
3 changed files with 25 additions and 37 deletions

View File

@ -184,57 +184,37 @@ func (f *filter) getValue(dataType string, sourceValue gjson.Result, defaultValu
switch dataType {
case DataTypeInt8:
fallthrough
return util.StringConvert.ToInt8(sourceValueStr)
case DataTypeInt16:
fallthrough
return util.StringConvert.ToInt16(sourceValueStr)
case DataTypeInt32:
fallthrough
return util.StringConvert.ToInt32(sourceValueStr)
case DataTypeInt64:
fallthrough
return util.StringConvert.ToInt64(sourceValueStr)
case DataTypeInt:
var (
err error
val int64
)
err = util.ConvertAssign(&val, sourceValueStr)
return val, err
return util.StringConvert.ToInt(sourceValueStr)
case DataTypeUint8:
fallthrough
return util.StringConvert.ToUint8(sourceValueStr)
case DataTypeUint16:
fallthrough
return util.StringConvert.ToUint16(sourceValueStr)
case DataTypeUint32:
fallthrough
return util.StringConvert.ToUint32(sourceValueStr)
case DataTypeUint64:
fallthrough
return util.StringConvert.ToUint64(sourceValueStr)
case DataTypeUint:
var (
err error
val uint64
)
err = util.ConvertAssign(&val, sourceValueStr)
return val, err
return util.StringConvert.ToUint(sourceValueStr)
case DataTypeBool:
var (
err error
val bool
)
err = util.ConvertAssign(&val, sourceValueStr)
return val, err
return util.StringConvert.ToBool(sourceValueStr)
case DataTypeFloat32:
fallthrough
return util.StringConvert.ToFloat32(sourceValueStr)
case DataTypeFloat64:
fallthrough
return util.StringConvert.ToFloat64(sourceValueStr)
case DataTypeFloat:
fallthrough
return util.StringConvert.ToFloat64(sourceValueStr)
case DataTypeDouble:
fallthrough
return util.StringConvert.ToDouble(sourceValueStr)
case DataTypeNumber:
var (
err error
val float64
)
err = util.ConvertAssign(&val, sourceValueStr)
return val, err
return util.StringConvert.ToNumber(sourceValueStr)
case DataTypeString:
return sourceValueStr, nil
case DataTypeAny: