Commit 33c19435 by zhengqiuyun86

go升级,泛型使用

parent de5ac3d0
......@@ -7,22 +7,57 @@ import (
"github.com/gin-gonic/gin"
"io"
"net/http"
"strconv"
"strings"
)
func Param[T any](c *gin.Context, key string) T {
val, ok := c.Get(key)
if ok {
exception.ThrowsErrS("PARAMS_ERR", fmt.Sprintf("参数[%s]必传", key))
} else {
i, k := val.(T)
if k {
return i
} else {
exception.ThrowsErrS("PARAMS_ERR", fmt.Sprintf("参数[%s]不合规", key))
func ParamInt64(c *gin.Context, key string) int64 {
return int64(ParamInt(c, key))
}
func ParamInt32(c *gin.Context, key string) int32 {
return int32(ParamInt(c, key))
}
func ParamInt16(c *gin.Context, key string) int16 {
return int16(ParamInt(c, key))
}
func ParamInt8(c *gin.Context, key string) int8 {
return int8(ParamInt(c, key))
}
func ParamUint64(c *gin.Context, key string) uint64 {
return uint64(ParamInt(c, key))
}
func ParamUint32(c *gin.Context, key string) uint32 {
return uint32(ParamInt(c, key))
}
func ParamUint16(c *gin.Context, key string) uint16 {
return uint16(ParamInt(c, key))
}
func ParamUint8(c *gin.Context, key string) uint8 {
return uint8(ParamInt(c, key))
}
func ParamInt(c *gin.Context, key string) int {
v := Param(c, key)
i, err := strconv.Atoi(v)
if err != nil {
exception.ThrowsErrS("PARAMS_ERR", "请传入正确的数字")
}
return i
}
func Param(c *gin.Context, key string) string {
v, ok := c.GetQuery(key)
if !ok || v == "" {
exception.ThrowsErrS("PARAMS_ERR", fmt.Sprintf("%s不能为空", key))
}
return val.(T)
return v
}
const (
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment