package common

// 业务状态码常量
const (
	CodeSuccess        = 0     // 成功
	CodeServerError    = 10001 // 服务器内部错误
	CodeParamError     = 10002 // 参数错误
	CodeUnauthorized   = 10003 // 未授权
	CodeForbidden      = 10004 // 禁止访问
	CodeNotFound       = 10005 // 资源不存在
	CodeTimeout        = 10006 // 请求超时
	CodeValidationFail = 10007 // 验证失败
	CodeBusiness       = 20001 // 业务逻辑错误 (20001-29999)
)

// CodeMessage 错误码消息映射
var CodeMessage = map[int]string{
	CodeSuccess:        "success",
	CodeServerError:    "服务器内部错误",
	CodeParamError:     "参数错误",
	CodeUnauthorized:   "未授权,请先登录",
	CodeForbidden:      "权限不足,禁止访问",
	CodeNotFound:       "请求的资源不存在",
	CodeTimeout:        "请求超时",
	CodeValidationFail: "数据验证失败",
	CodeBusiness:       "业务处理失败",
}

// GetMessage 根据错误码获取默认消息
func GetMessage(code int) string {
	if msg, ok := CodeMessage[code]; ok {
		return msg
	}
	return "未知错误"
}
