mirror of
https://gitee.com/blackfox/geekai.git
synced 2024-12-05 05:37:41 +08:00
67 lines
1.4 KiB
Go
67 lines
1.4 KiB
Go
package handler
|
|
|
|
import (
|
|
"chatplus/core"
|
|
logger2 "chatplus/logger"
|
|
"strconv"
|
|
"strings"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
var logger = logger2.GetLogger()
|
|
|
|
type BaseHandler struct {
|
|
App *core.AppServer
|
|
}
|
|
|
|
func (h *BaseHandler) GetTrim(c *gin.Context, key string) string {
|
|
return strings.TrimSpace(c.Query(key))
|
|
}
|
|
|
|
func (h *BaseHandler) PostInt(c *gin.Context, key string, defaultValue int) int {
|
|
return intValue(c.PostForm(key), defaultValue)
|
|
}
|
|
|
|
func (h *BaseHandler) GetInt(c *gin.Context, key string, defaultValue int) int {
|
|
return intValue(c.Query(key), defaultValue)
|
|
}
|
|
|
|
func intValue(str string, defaultValue int) int {
|
|
value, err := strconv.Atoi(str)
|
|
if err != nil {
|
|
return defaultValue
|
|
}
|
|
return value
|
|
}
|
|
|
|
func (h *BaseHandler) GetFloat(c *gin.Context, key string) float64 {
|
|
return floatValue(c.Query(key))
|
|
}
|
|
func (h *BaseHandler) PostFloat(c *gin.Context, key string) float64 {
|
|
return floatValue(c.PostForm(key))
|
|
}
|
|
|
|
func floatValue(str string) float64 {
|
|
value, err := strconv.ParseFloat(str, 64)
|
|
if err != nil {
|
|
return 0
|
|
}
|
|
return value
|
|
}
|
|
|
|
func (h *BaseHandler) GetBool(c *gin.Context, key string) bool {
|
|
return boolValue(c.Query(key))
|
|
}
|
|
func (h *BaseHandler) PostBool(c *gin.Context, key string) bool {
|
|
return boolValue(c.PostForm(key))
|
|
}
|
|
|
|
func boolValue(str string) bool {
|
|
value, err := strconv.ParseBool(str)
|
|
if err != nil {
|
|
return false
|
|
}
|
|
return value
|
|
}
|