scrm-go

error_code.go 5.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. package enums
  2. import "SCRM/utils"
  3. const ( // ErrorCode
  4. // 登录注册错误 6000+
  5. ErrorCodeLoginTimeout = 6001
  6. ErrorCodeNotLogin = 6002
  7. ErrorCodePermissionDenied = 6003
  8. ErrorCodeMobileRegistered = 6004
  9. ErrorCodePasswordEmpty = 6005
  10. ErrorCodeVerificationCodeWrong = 6006
  11. ErrorCodeRegisterFail = 6007
  12. ErrorCodeInvalidToken = 6008
  13. ErrorCodeAccountOrPasswordWrong = 6009
  14. ErrorCodeMissingOrg = 6010
  15. ErrorCodeMissingOrgApp = 6011
  16. ErrorCodeAccountOrVerCodeWrong = 6012
  17. ErrorCodeMobileNotExit = 6013
  18. ErrorCodeUserNotExist = 6014
  19. ErrorCodeUserWasForbidden = 6015
  20. ErrorCodeNeverCreateTypeApp = 6016
  21. ErrorCodeContactSuperAdminCreateTypeApp = 6017
  22. // 数据验证错误 7000+
  23. ErrorCodeMobileFormat = 7001
  24. ErrorCodeTelphoneFormat = 7002
  25. ErrorCodeParamWrong = 7003
  26. ErrorCodeParamFormatWrong = 7004
  27. // 数据库操作错误 8000+
  28. ErrorCodeDBCreate = 8001
  29. ErrorCodeDBUpdate = 8002
  30. ErrorCodeDBDelete = 8003
  31. ErrorCodeDBSelectNoResult = 8004
  32. ErrorCodeDataException = 8005
  33. // 业务逻辑操作错误 9000+
  34. ErrorCodeRoleNotExist = 9001
  35. ErrorCodeAdminUserNotExist = 9002
  36. ErrorCodeMobileDidUsedInApp = 9003
  37. ErrorCodeMissingUserName = 9004
  38. ErrorCodeOldPasswordWrong = 9005
  39. ErrorCodeCannotRemoveRole = 9006
  40. ErrorCodeRoleMobileIsSuperAdmin = 9007
  41. ErrorCodeActivityNotExist = 9100
  42. ErrorCodeActivityPublishedCannotModify = 9101
  43. ErrorCodeActivityPublishRepeat = 9102
  44. ErrorCodeGetQiniuUpToken = 1001
  45. ErrorCodeNotSubscibe = 4003
  46. ErrorCodeServeNotExist = 4004
  47. ErrorCodeInvoiceExist = 4005
  48. ErrorCodeApplyInvoiceFail = 4006
  49. ErrorCodeHetongHad = 4007
  50. ErrorCodeCreateHetongFail = 4008
  51. ErrorCodePatientReachLimit = 4009
  52. )
  53. var ErrCodeMsgs = map[int]string{
  54. // 登录注册错误
  55. ErrorCodeLoginTimeout: "登录超时",
  56. ErrorCodeNotLogin: "未登录",
  57. ErrorCodePermissionDenied: "权限不足",
  58. ErrorCodeMobileRegistered: "手机号已被注册",
  59. ErrorCodePasswordEmpty: "密码为空",
  60. ErrorCodeVerificationCodeWrong: "验证码错误",
  61. ErrorCodeRegisterFail: "注册失败",
  62. ErrorCodeInvalidToken: "令牌无效",
  63. ErrorCodeAccountOrPasswordWrong: "账号或密码错误",
  64. ErrorCodeMissingOrg: "未创建机构",
  65. ErrorCodeMissingOrgApp: "未创建任何应用",
  66. ErrorCodeAccountOrVerCodeWrong: "账号或验证码错误",
  67. ErrorCodeMobileNotExit: "手机号不存在",
  68. ErrorCodeUserNotExist: "用户不存在",
  69. ErrorCodeUserWasForbidden: "该用户被禁用",
  70. ErrorCodeNeverCreateTypeApp: "未创建此种应用",
  71. ErrorCodeContactSuperAdminCreateTypeApp: "请联系超级管理员开通此种应用",
  72. // 数据验证错误
  73. ErrorCodeMobileFormat: "手机号格式错误",
  74. ErrorCodeTelphoneFormat: "电话格式错误",
  75. ErrorCodeParamWrong: "参数错误",
  76. ErrorCodeParamFormatWrong: "参数格式错误",
  77. // 数据库操作错误
  78. ErrorCodeDBCreate: "数据库创建出错",
  79. ErrorCodeDBUpdate: "数据库更新出错",
  80. ErrorCodeDBDelete: "数据库删除出错",
  81. ErrorCodeDBSelectNoResult: "查询无结果",
  82. ErrorCodeDataException: "数据异常",
  83. // 业务逻辑操作错误
  84. ErrorCodeRoleNotExist: "角色不存在",
  85. ErrorCodeAdminUserNotExist: "管理员不存在",
  86. ErrorCodeMobileDidUsedInApp: "该手机号已在该应用中被注册为管理员",
  87. ErrorCodeMissingUserName: "缺少用户名",
  88. ErrorCodeOldPasswordWrong: "原密码不正确",
  89. ErrorCodeCannotRemoveRole: "存在该角色的管理员,不能删除该角色",
  90. ErrorCodeRoleMobileIsSuperAdmin: "该手机号已注册为超级管理员",
  91. ErrorCodeActivityNotExist: "活动不存在",
  92. ErrorCodeActivityPublishedCannotModify: "已发布的活动不可更改",
  93. ErrorCodeActivityPublishRepeat: "该活动已发布",
  94. ErrorCodeGetQiniuUpToken: "获取七牛uptoken失败",
  95. ErrorCodeNotSubscibe: "没有订阅服务或服务已过期,请先购买服务!",
  96. ErrorCodeServeNotExist: "服务订单不存在!",
  97. ErrorCodeInvoiceExist: "已经申请了发票!",
  98. ErrorCodeApplyInvoiceFail: "申请发票失败!",
  99. ErrorCodeHetongHad: "合同已经存在!",
  100. ErrorCodeCreateHetongFail: "合同创建失败",
  101. ErrorCodePatientReachLimit: "患者数已达到当前服务版本病人数,需要升级到更高的版本",
  102. }
  103. type SGJError struct {
  104. Code int
  105. }
  106. func (e *SGJError) Error() string {
  107. value, ok := ErrCodeMsgs[e.Code]
  108. if ok {
  109. return value
  110. } else {
  111. return "未知错误"
  112. }
  113. }
  114. func MakeSuccessResponseJSON(data map[string]interface{}) map[string]interface{} {
  115. json := make(map[string]interface{})
  116. if data != nil {
  117. json["data"] = data
  118. } else {
  119. json["data"] = make(map[string]interface{})
  120. }
  121. json["state"] = 1
  122. json["code"] = 0
  123. return json
  124. }
  125. func MakeFailResponseJSON(errMsg string, errCode int) map[string]interface{} {
  126. json := make(map[string]interface{})
  127. json["msg"] = errMsg
  128. json["code"] = errCode
  129. json["state"] = 0
  130. return json
  131. }
  132. func MakeFailResponseJSONWithSGJError(err *SGJError) map[string]interface{} {
  133. if err == nil {
  134. utils.WarningLog("MakeFailResponseJSONWithSGJError 参数err 不能为空")
  135. return nil
  136. }
  137. return MakeFailResponseJSON(err.Error(), err.Code)
  138. }
  139. func MakeFailResponseJSONWithSGJErrorCode(code int) map[string]interface{} {
  140. err := &SGJError{Code: code}
  141. return MakeFailResponseJSON(err.Error(), err.Code)
  142. }