err_code.go
1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package xerr
import "fmt"
const (
// OK 成功返回
OK uint32 = 200
)
// 全局错误码
// 系统错误前3位代表业务,后三位代表具体功能
const (
ServerCommonError uint32 = 100001 // 系统错误
RequestParamError uint32 = 100002 // 参数请求错误
TokenExpireError uint32 = 100003 // token失效
TokenGenerateError uint32 = 100004 // 生成token失败
DbError uint32 = 100005 // 数据库错误
DbUpdateAffectedZeroError uint32 = 100006 // 数据库更新错误
)
/**微信模块**/
const (
ErrWxMiniAuthFailError uint32 = 500001
ErrUserNoAuth uint32 = 500002
)
type CodeError struct {
errCode uint32
errMsg string
InternalError error
}
// GetErrCode 返回给前端的错误码
func (e *CodeError) GetErrCode() uint32 {
return e.errCode
}
// GetErrMsg 返回给前端显示端错误信息
func (e *CodeError) GetErrMsg() string {
if e.errMsg == "" {
return MapErrMsg(e.errCode)
}
return e.errMsg
}
func (e *CodeError) Error() string {
if e.InternalError != nil {
return fmt.Sprintf("ErrCode:%d,ErrMsg:%s InternalError:%s", e.errCode, e.errMsg, e.InternalError.Error())
}
return fmt.Sprintf("ErrCode:%d,ErrMsg:%s", e.errCode, e.errMsg)
}