Merge branch 'develop' of gitee.com:fusenpack/fusenapi into develop

This commit is contained in:
momo
2023-10-18 11:48:39 +08:00
11 changed files with 124 additions and 76 deletions

View File

@@ -131,40 +131,26 @@ func (resp *Response) Set(Code int, Message string) *Response {
}
}
// Set 设置整个Response
func (resp *Response) SetWithData(Code int, Message string, Data interface{}) *Response {
return &Response{
Code: Code,
Message: Message,
Data: Data,
}
}
// SetStatus 设置默认StatusResponse(内部自定义) 默认msg, 可以带data, data只使用一个参数, 第二个data就是debug参数
func (resp *Response) SetStatus(sr *StatusResponse, dataAndDebug ...interface{}) *Response {
// SetStatus 设置默认StatusResponse(内部自定义) 默认msg, 可以带data, data只使用一个参数
func (resp *Response) SetStatus(sr *StatusResponse, data ...interface{}) *Response {
newResp := &Response{
Code: sr.Code,
Message: sr.Message,
}
switch len(data) {
switch len(dataAndDebug) {
case 0:
// 0 直接返回
case 1:
if err, ok := data[0].(error); ok {
if err, ok := dataAndDebug[0].(error); ok {
newResp.Message = err.Error()
} else {
newResp.Data = data[0]
newResp.Data = dataAndDebug[0]
}
case 2:
var dataIndex = 0
if err, ok := data[dataIndex].(error); ok {
newResp.Message = err.Error()
dataIndex++
} else {
panic("data只接收1或2个 data 或 error.Error() 和 data ")
}
newResp.Data = data[1]
newResp.Data = dataAndDebug[0]
newResp.Debug = dataAndDebug[1]
default:
panic("data只接收1或2个 data, error.Error() 和 data ")
}
@@ -172,18 +158,80 @@ func (resp *Response) SetStatus(sr *StatusResponse, data ...interface{}) *Respon
return newResp
}
// SetWithDebug 设置默认StatusResponse(内部自定义) 默认msg, 可以带debug
func (resp *Response) SetWithDebug(sr *StatusResponse, debug interface{}) *Response {
resp = &Response{
Code: sr.Code,
Message: sr.Message,
Debug: debug,
}
return resp
}
// WithDebug 设置默认debug参数
func (resp *Response) WithDebug(debug interface{}) *Response {
if resp == nil {
panic("must call the func Set... before")
}
resp.Debug = debug
return resp
}
// WithData 设置默认data参数
func (resp *Response) WithData(data interface{}) *Response {
if resp == nil {
panic("must call the func Set... before")
}
resp.Data = data
return resp
}
// WithMessage 设置默认message参数
func (resp *Response) WithMessage(msg string) *Response {
if resp == nil {
panic("must call the func Set... before")
}
resp.Message = msg
return resp
}
// WithError 设置默认error参数
func (resp *Response) WithError(err error) *Response {
if resp == nil {
panic("must call the func Set... before")
}
resp.Message = err.Error()
return resp
}
// SetStatusWithMessage 设置默认StatusResponse(内部自定义) 非默认msg, 可以带data, data只使用一个参数
func (resp *Response) SetStatusWithMessage(sr *StatusResponse, msg string, data ...interface{}) *Response {
func (resp *Response) SetStatusWithMessage(sr *StatusResponse, msg string, dataAndDebug ...interface{}) *Response {
newResp := &Response{
Code: sr.Code,
Message: msg,
}
switch len(data) {
switch len(dataAndDebug) {
case 0:
// 0 直接返回
case 1:
newResp.Data = data[0]
newResp.Data = dataAndDebug[0]
case 2:
newResp.Debug = dataAndDebug[1]
default:
panic("data只接收一个 data")
}
@@ -191,17 +239,21 @@ func (resp *Response) SetStatusWithMessage(sr *StatusResponse, msg string, data
return newResp
}
func (resp *Response) SetStatusAddMessage(sr *StatusResponse, msg string, data ...interface{}) *Response {
// SetStatusAddMessage 这个会拼接默认msg加新的msg
func (resp *Response) SetStatusAddMessage(sr *StatusResponse, msg string, dataAndDebug ...interface{}) *Response {
newResp := &Response{
Code: sr.Code,
Message: sr.Message + ":" + msg,
}
switch len(data) {
switch len(dataAndDebug) {
case 0:
// 0 直接返回
case 1:
newResp.Data = data[0]
newResp.Data = dataAndDebug[0]
case 2:
newResp.Data = dataAndDebug[0]
newResp.Debug = dataAndDebug[1]
default:
panic("data只接收一个 data")
}