2021-03-24 17:18:39 +08:00
|
|
|
|
package biz
|
|
|
|
|
|
|
2023-09-02 17:24:18 +08:00
|
|
|
|
import "fmt"
|
|
|
|
|
|
|
2021-03-24 17:18:39 +08:00
|
|
|
|
// 业务错误
|
|
|
|
|
|
type BizError struct {
|
|
|
|
|
|
code int16
|
|
|
|
|
|
err string
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2021-07-28 18:03:19 +08:00
|
|
|
|
var (
|
2022-07-18 20:36:31 +08:00
|
|
|
|
Success BizError = NewBizErrCode(200, "success")
|
|
|
|
|
|
BizErr BizError = NewBizErrCode(400, "biz error")
|
|
|
|
|
|
ServerError BizError = NewBizErrCode(500, "server error")
|
|
|
|
|
|
PermissionErr BizError = NewBizErrCode(501, "token error")
|
2021-03-24 17:18:39 +08:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
// 错误消息
|
2022-07-18 20:36:31 +08:00
|
|
|
|
func (e BizError) Error() string {
|
2021-03-24 17:18:39 +08:00
|
|
|
|
return e.err
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 错误码
|
2022-07-18 20:36:31 +08:00
|
|
|
|
func (e BizError) Code() int16 {
|
2021-03-24 17:18:39 +08:00
|
|
|
|
return e.code
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2023-09-02 17:24:18 +08:00
|
|
|
|
func (e BizError) String() string {
|
|
|
|
|
|
return fmt.Sprintf("errCode: %d, errMsg: %s", e.Code(), e.Error())
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2021-03-24 17:18:39 +08:00
|
|
|
|
// 创建业务逻辑错误结构体,默认为业务逻辑错误
|
2022-07-18 20:36:31 +08:00
|
|
|
|
func NewBizErr(msg string) BizError {
|
|
|
|
|
|
return BizError{code: BizErr.code, err: msg}
|
2021-03-24 17:18:39 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 创建业务逻辑错误结构体,可设置指定错误code
|
2022-07-18 20:36:31 +08:00
|
|
|
|
func NewBizErrCode(code int16, msg string) BizError {
|
|
|
|
|
|
return BizError{code: code, err: msg}
|
2021-03-24 17:18:39 +08:00
|
|
|
|
}
|