From 8621e06a01539901c0c2dc3aea206ea7328a11a9 Mon Sep 17 00:00:00 2001 From: Afeyer <1500527791@qq.com> Date: Sun, 26 Sep 2021 10:38:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=8C=E5=96=84=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E5=AE=A2=E6=9C=8D=E5=B8=B8=E7=94=A8=E7=9A=84=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=20(#486)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat:微信客服支持向客户发送欢迎语 * chore: go fmt file * feat:移除空白文件 * doc:完善菜单消息内的注释文档 * feat: 完善微信客服常用的错误类型 * refactor: 优化SDK错误生成函数 --- work/kf/error.go | 82 +++++++++++++++++++++++------------------------- 1 file changed, 40 insertions(+), 42 deletions(-) diff --git a/work/kf/error.go b/work/kf/error.go index 5856def..d4e4474 100644 --- a/work/kf/error.go +++ b/work/kf/error.go @@ -17,6 +17,8 @@ const ( SDKUnknownError Error = "未知错误" // SDKInvalidCredential 错误码:40001 SDKInvalidCredential Error = "不合法的secret参数" + // SDKInvalidImageSize 错误码:40009 + SDKInvalidImageSize Error = "无效的图片大小" // SDKInvalidCorpID 错误码:40013 SDKInvalidCorpID Error = "无效的 CorpID" // SDKAccessTokenInvalid 错误码:40014 @@ -25,6 +27,10 @@ const ( SDKValidateSignatureFailed Error = "校验签名错误" // SDKDecryptMSGFailed 错误码:40016 SDKDecryptMSGFailed Error = "消息解密失败" + // SDKMediaIDExceedMinLength 错误码:40058 + SDKMediaIDExceedMinLength Error = "media_id 小于最小长度 1" + // SDKContentContainsSensitiveInformation 错误码:40201 + SDKContentContainsSensitiveInformation Error = "当前客服账号由于涉及敏感信息,已被封禁,请联系企业微信客服处理" // SDKAccessTokenMissing 错误码:41001 SDKAccessTokenMissing Error = "缺少AccessToken参数" // SDKAccessTokenExpired 错误码:42001 @@ -50,46 +56,38 @@ func (r Error) Error() string { return reflect.ValueOf(r).String() } -// NewSDKErr 初始化SDK实例错误信息 -func NewSDKErr(code int64, msgList ...string) Error { - switch code { - case 50001: - return SDKInitFailed - case 50002: - return SDKCacheUnavailable - case 40001: - return SDKInvalidCredential - case 41001: - return SDKAccessTokenMissing - case 42001: - return SDKAccessTokenExpired - case 40013: - return SDKInvalidCorpID - case 40014: - return SDKAccessTokenInvalid - case 40015: - return SDKValidateSignatureFailed - case 40016: - return SDKDecryptMSGFailed - case 45009: - return SDKApiFreqOutOfLimit - case 48002: - return SDKApiForbidden - case 95000: - return SDKInvalidOpenKFID - case 95004: - return SDKOpenKFIDNotExist - case 95011: - return SDKWeWorkAlready - case 95012: - return SDKNotUseInWeCom - case 95017: - return SDKApiNotOpen - default: - //返回未知的自定义错误 - if len(msgList) > 0 { - return Error(strings.Join(msgList, ",")) - } - return SDKUnknownError - } +var codeDic = map[int64]error{ + 50001: SDKInitFailed, + 50002: SDKCacheUnavailable, + 50003: SDKUnknownError, + 40001: SDKInvalidCredential, + 40009: SDKInvalidImageSize, + 40013: SDKInvalidCorpID, + 40014: SDKAccessTokenInvalid, + 40015: SDKValidateSignatureFailed, + 40016: SDKDecryptMSGFailed, + 40058: SDKMediaIDExceedMinLength, + 40201: SDKContentContainsSensitiveInformation, + 41001: SDKAccessTokenMissing, + 42001: SDKAccessTokenExpired, + 45009: SDKApiFreqOutOfLimit, + 48002: SDKApiForbidden, + 95000: SDKInvalidOpenKFID, + 95004: SDKOpenKFIDNotExist, + 95011: SDKWeWorkAlready, + 95012: SDKNotUseInWeCom, + 95017: SDKApiNotOpen, +} + +// NewSDKErr 初始化SDK实例错误信息 +func NewSDKErr(code int64, msgList ...string) error { + if err := codeDic[code]; err != nil { + return err + } + + //返回未知的自定义错误 + if len(msgList) > 0 { + return Error(strings.Join(msgList, ",")) + } + return SDKUnknownError }