package parse import ( "encoding/json" "strconv" ) func StringToInt64(val string) int64 { result, err := strconv.ParseInt(val, 10, 0) if err != nil { return -1 } return result } func StringToInt(val string) int { result, err := strconv.Atoi(val) if err != nil { return -1 } return result } func StringToFloat32(val string) float32 { value, err := strconv.ParseFloat(val, 32) if err != nil { return 0 } return float32(value) } func StringPtr(constVal string) *string { return &constVal } func IntPtr(constVal int) *int { return &constVal } func StructToMap(data interface{}) (map[string]string, error) { str, err := json.Marshal(data) if err != nil { return nil, err } resultMap := map[string]string{} err = json.Unmarshal(str, &resultMap) if err != nil { return nil, err } return resultMap, nil } // func StructToMapKK(data interface{}) (kk.H, error) { // str, err := jsoniter.Marshal(data) // if err != nil { // return nil, err // } // resultMap := kk.H{} // err = jsoniter.Unmarshal(str, &resultMap) // if err != nil { // return nil, err // } // return resultMap, nil // } // func MapToStruct(mapData interface{}, instance interface{}) error { // str, err := json.Marshal(mapData) // if err != nil { // return err // } // err = json.Unmarshal(str, instance) // if err != nil { // return err // } // return nil // }