package common type ErrorCode int const ( CodeSuccess = 200 CodeParamError = 400 CodeUnauthorized = 401 CodeForbidden = 403 CodeNotFound = 404 CodeInvalidStatus = 405 CodeDBError = 500 CodeSystemError = 501 CodeTaskNotComplete = 1001 CodeRecordRepeat = 1002 CodeSmsCodeError = 1003 ) const ( CodeSuccessMsg = "success" CodeParamErrorMsg = "param error" CodeUnauthorizedMsg = "unauthorized" CodeForbiddenMsg = "forbidden" CodeNotFoundMsg = "not found" CodeInvalidStatusMsg = "invalid status" CodeDBErrorMsg = "database error" CodeSystemErrorMsg = "system error" CodeTaskNotCompleteMsg = "task not complete" CodeRecordRepeatMsg = "record repeat" CodeSmsCodeErrorMsg = "sms code error" ) type BusinessError struct { Code ErrorCode Message string Err error } func (e *BusinessError) Error() string { return e.Message } func NewError(code ErrorCode, message string, err error) *BusinessError { return &BusinessError{ Code: code, Message: message, Err: err, } }