parent
37d04c9fa0
commit
d80cf34f26
@ -1,89 +0,0 @@
|
|||||||
package constant
|
|
||||||
|
|
||||||
import (
|
|
||||||
"github.com/pkg/errors"
|
|
||||||
"strings"
|
|
||||||
)
|
|
||||||
|
|
||||||
type ErrInfo struct {
|
|
||||||
ErrCode int32
|
|
||||||
ErrMsg string
|
|
||||||
DetailErrMsg string
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewErrInfo(code int32, msg, detail string) *ErrInfo {
|
|
||||||
return &ErrInfo{
|
|
||||||
ErrCode: code,
|
|
||||||
ErrMsg: msg,
|
|
||||||
DetailErrMsg: detail,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *ErrInfo) Error() string {
|
|
||||||
return "errMsg: " + e.ErrMsg + " detail errMsg: " + e.DetailErrMsg
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *ErrInfo) Code() int32 {
|
|
||||||
return e.ErrCode
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *ErrInfo) Msg() string {
|
|
||||||
return e.ErrMsg
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *ErrInfo) Detail() string {
|
|
||||||
return e.DetailErrMsg
|
|
||||||
}
|
|
||||||
|
|
||||||
func (e *ErrInfo) Wrap(msg ...string) error {
|
|
||||||
return errors.Wrap(e, strings.Join(msg, "--"))
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewErrNetwork(err error) error {
|
|
||||||
return toDetail(err, ErrNetwork)
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewErrData(err error) error {
|
|
||||||
return toDetail(err, ErrData)
|
|
||||||
}
|
|
||||||
|
|
||||||
func toDetail(err error, info *ErrInfo) *ErrInfo {
|
|
||||||
errInfo := *info
|
|
||||||
errInfo.DetailErrMsg = err.Error()
|
|
||||||
return &errInfo
|
|
||||||
}
|
|
||||||
|
|
||||||
func ToAPIErrWithErr(err error) *ErrInfo {
|
|
||||||
return &ErrInfo{}
|
|
||||||
//unwrap := utils.Unwrap(err)
|
|
||||||
//if unwrap == gorm.ErrRecordNotFound {
|
|
||||||
// return &ErrInfo{
|
|
||||||
// ErrCode: ErrRecordNotFound.Code(),
|
|
||||||
// ErrMsg: ErrRecordNotFound.Msg(),
|
|
||||||
// DetailErrMsg: fmt.Sprintf("%+v", err),
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//if errInfo, ok := unwrap.(*ErrInfo); ok {
|
|
||||||
// return &ErrInfo{
|
|
||||||
// ErrCode: errInfo.Code(),
|
|
||||||
// ErrMsg: errInfo.Msg(),
|
|
||||||
// DetailErrMsg: fmt.Sprintf("%+v", err),
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//
|
|
||||||
//errComm := errors.New("")
|
|
||||||
//var marshalErr *json.MarshalerError
|
|
||||||
//errInfo := &ErrInfo{}
|
|
||||||
//switch {
|
|
||||||
//case errors.As(err, &errComm):
|
|
||||||
// if errors.Is(err, gorm.ErrRecordNotFound) {
|
|
||||||
// return toDetail(err, ErrRecordNotFound)
|
|
||||||
// }
|
|
||||||
// return toDetail(err, ErrData)
|
|
||||||
//case errors.As(err, &marshalErr):
|
|
||||||
// return toDetail(err, ErrData)
|
|
||||||
//case errors.As(err, &errInfo):
|
|
||||||
// return toDetail(err, errInfo)
|
|
||||||
//}
|
|
||||||
//return toDetail(err, ErrDefaultOther)
|
|
||||||
}
|
|
Loading…
Reference in new issue