/* @Time : 2019-06-26 16:21 @Author : zr @File : error @Software: GoLand */ package errors import ( "fmt" "gitee.com/zr233/bsf/errors" ) type ErrorCode int const ( CodeUNKNOWN = ErrorCode(errors.ErrorCode_Unknown) CodeSUCCESS ErrorCode = 0 CodeBusy ErrorCode = 1 CodeServiceNotAvailable ErrorCode = 2 CodeKeyNotExist ErrorCode = 3 PicVerifyCodeErr ErrorCode = 1003 CodePermissionDenied ErrorCode = 1004 CodePasswordErr ErrorCode = 1006 UserBan ErrorCode = 1007 CodeTokenErr ErrorCode = 1010 UserNotExists ErrorCode = 1012 CodeNoRecord ErrorCode = 1014 BirthdayErr ErrorCode = 1036 StaticHrErr ErrorCode = 1037 CodeParamErr ErrorCode = 5000 SmsErr ErrorCode = 7000 CodeDATABASE ErrorCode = 9000 CodeREDIS ErrorCode = 10000 HrSensorsTimeOutErr ErrorCode = 30012 JsonToMaptErr ErrorCode = 30013 HrSensorsUpdateErr ErrorCode = 30014 GetDuInfoUpdateErr ErrorCode = 30015 SmsCodeRepeatErr ErrorCode = 30016 AddAppHeartRateErr ErrorCode = 30017 CodeParam = ErrorCode(errors.CodeParam) ) var ( ErrUserBan = NewServiceErr(UserBan, "用户被禁用") ErrUserNotExists = NewServiceErr(UserNotExists, "用户不存在") ErrPicVerifyCode = NewServiceErr(PicVerifyCodeErr, "图形验证码错误") ErrStaticHr = NewServiceErr(StaticHrErr, "会员年龄太小,请重新输入用户生日。") ErrBirthday = NewServiceErr(BirthdayErr, "用户生日不得大于当前年份,请重新输入") ErrJsonToMap = NewServiceErr(JsonToMaptErr, "Json转换Map对象失败") ErrHrSensorsTimeOut = NewServiceErr(HrSensorsTimeOutErr, "心率系统连接超时") ErrHrSensorsUpdate = NewServiceErr(HrSensorsUpdateErr, "心率系统更新Sn报错") ErrAddAppHeartRate = NewServiceErr(AddAppHeartRateErr, "心率系统上报心率报错") ErrGetDuInfo = NewServiceErr(GetDuInfoUpdateErr, "心率系统查询用户当前显示单元和对应身体信息报错") ErrSmsCodeRepeat = NewServiceErr(SmsCodeRepeatErr, "短信验证码不能频繁发送") ) func (e ErrorCode) ShowMsg() string { switch e { case CodeSUCCESS: return "执行成功" case CodePasswordErr: return "密码错误" case CodeTokenErr: return "登录失效" default: return fmt.Sprintf("系统错误[%d],请联系管理员", e) } } func NewParamErr(err error) error { return errors.NewParamErr(err) } func FromError(err error) (stdErr *errors.StandardError) { return errors.NewFromError(err, errors.ErrorCode(CodeUNKNOWN)) } func NewFromError(err error, code ErrorCode) (stdErr *errors.StandardError) { return errors.NewFromError(err, errors.ErrorCode(code)) } func FromParamErr(paramName string, err error) (stdErr *errors.StandardError) { err = fmt.Errorf("参数名: %s, %w", paramName, err) return NewFromError(err, CodeParam) } func NewServiceErr(code ErrorCode, msg string) (stdErr *errors.StandardError) { err := fmt.Errorf(msg) return NewFromError(err, code) }