core/utils/ext.go

48 lines
816 B
Go

package utils
import (
"bytes"
"encoding/json"
"fmt"
"os"
"strconv"
"strings"
)
func If(condition bool, trueValue, falseValue interface{}) interface{} {
if condition {
return trueValue
}
return falseValue
}
// 如果首字母是小写字母, 则变换为大写字母
func FirstToUpper(str string) string {
if str == "" {
return ""
}
return strings.ToUpper(str[:1]) + strings.ToLower(str[1:])
}
func ParseParams(in map[string]string) map[string]interface{} {
out := make(map[string]interface{})
for k, v := range in {
fv, err := strconv.ParseFloat(v, 64)
if err != nil {
out[k] = fv
} else {
out[k] = v
}
}
return out
}
func PrintJson(v any) {
jsonBy, _ := json.Marshal(v)
var out bytes.Buffer
json.Indent(&out, jsonBy, "", "\t")
out.WriteTo(os.Stdout)
fmt.Printf("\n")
}