47 lines
902 B
Go
47 lines
902 B
Go
package http_resp
|
|
|
|
import (
|
|
"common/proto/ss/ss_common"
|
|
"google.golang.org/grpc/codes"
|
|
"google.golang.org/grpc/status"
|
|
)
|
|
|
|
var (
|
|
OK = NewCode(0, "OK")
|
|
Failed = NewCode(1, "Failed")
|
|
ParamError = NewCode(1001, "参数错误")
|
|
NameEmpty = NewCode(1002, "名称不能为空")
|
|
NameDuplicate = NewCode(1003, "名称或编号不能重复")
|
|
ListEmpty = NewCode(1004, "列表不能为空")
|
|
RepeatCommit = NewCode(1005, "请勿重复提交")
|
|
)
|
|
|
|
type Code struct {
|
|
code int
|
|
error string
|
|
}
|
|
|
|
func NewCode(code int, error string) *Code {
|
|
return &Code{
|
|
code: code,
|
|
error: error,
|
|
}
|
|
}
|
|
|
|
func (c *Code) Code() int {
|
|
return c.code
|
|
}
|
|
|
|
func (c *Code) Error() string {
|
|
return c.error
|
|
}
|
|
|
|
func (c *Code) Wrap() error {
|
|
st := status.New(codes.Unknown, c.Error())
|
|
st, _ = st.WithDetails(&ss_common.ErrorInfo{
|
|
Code: int32(c.Code()),
|
|
Msg: c.Error(),
|
|
})
|
|
return st.Err()
|
|
}
|