package domain

var ErrAuthFailed = NewXError(4999, "auth failed")

type XError struct {
	Code int    `json:"code"`
	Msg  string `json:"msg"`
}

func NewXError(code int, msg string) *XError {
	return &XError{code, msg}
}

func (e *XError) Error() string {
	return e.Msg
}

func (e *XError) GetCode() int {
	if e.Code == 0 {
		return 100
	}
	return e.Code
}