diff --git a/internal/model/dto/Result.go b/internal/model/dto/Result.go new file mode 100644 index 0000000..0ad02e9 --- /dev/null +++ b/internal/model/dto/Result.go @@ -0,0 +1,42 @@ +package dto + +import ( + "github.com/gogf/gf/v2/frame/g" +) + +// 定义Result结构体 +type Result struct { + Code int `json:"code"` // 响应码,200 代表成功;401 代表未授权 + Msg string `json:"msg"` // 响应消息 + Data interface{} `json:"data"` // 返回的数据 +} + +// Success 创建一个表示成功的 Result 实例(不需要数据) +func Success() *Result { + return &Result{Code: 200, Msg: "success", Data: g.Map{}} +} + +// SuccessWithData 创建一个表示成功的 Result 实例,并包含数据 +func SuccessWithData(data interface{}) *Result { + return &Result{Code: 200, Msg: "success", Data: data} +} + +// Error 创建一个表示错误的 Result 实例 +func Error(msg string) *Result { + return &Result{Code: 0, Msg: msg, Data: g.Map{}} +} + +// ErrorWithCode 创建一个表示错误的 Result 实例,并允许自定义错误码 +func ErrorWithCode(code int, msg string) *Result { + return &Result{Code: code, Msg: msg, Data: g.Map{}} +} + +// UnauthorizedWithCode 创建一个表示未授权的 Result 实例,并允许自定义错误码 +func UnauthorizedWithCode(code int, msg string) *Result { + return &Result{Code: code, Msg: msg, Data: g.Map{}} +} + +// Unauthorized 创建一个表示未授权的 Result 实例,默认错误码为 401 +func Unauthorized(msg string) *Result { + return &Result{Code: 401, Msg: msg, Data: g.Map{}} +}