diff --git a/app/main/api/desc/front/user.api b/app/main/api/desc/front/user.api index dcc6df1..31476a0 100644 --- a/app/main/api/desc/front/user.api +++ b/app/main/api/desc/front/user.api @@ -50,7 +50,8 @@ type ( type ( WXMiniAuthReq { - Code string `json:"code"` + Code string `json:"code"` + Platform string `json:"platform,optional,default=tyc"` } WXMiniAuthResp { AccessToken string `json:"accessToken"` diff --git a/app/main/api/etc/main.dev.yaml b/app/main/api/etc/main.dev.yaml index d239a6c..8d6d7f1 100644 --- a/app/main/api/etc/main.dev.yaml +++ b/app/main/api/etc/main.dev.yaml @@ -67,6 +67,8 @@ WechatH5: WechatMini: AppID: "wx781abb66b3368963" # 小程序的AppID AppSecret: "c7d02cdb0fc23c35c93187af9243b00d" # 小程序的AppSecret + TycAppID: "wxe74617f3dd56c196" + TycAppSecret: "c8207e54aef5689b2a7c1f91ed7ae8a0" Query: ShareLinkExpire: 604800 # 7天 = 7 * 24 * 60 * 60 = 604800秒 AdminConfig: diff --git a/app/main/api/etc/main.yaml b/app/main/api/etc/main.yaml index 6d9a3ed..a9ba04f 100644 --- a/app/main/api/etc/main.yaml +++ b/app/main/api/etc/main.yaml @@ -68,6 +68,8 @@ WechatH5: WechatMini: AppID: "wx781abb66b3368963" # 小程序的AppID AppSecret: "c7d02cdb0fc23c35c93187af9243b00d" # 小程序的AppSecret + TycAppID: "wxe74617f3dd56c196" + TycAppSecret: "c8207e54aef5689b2a7c1f91ed7ae8a0" Query: ShareLinkExpire: 604800 # 7天 = 7 * 24 * 60 * 60 = 604800秒 AdminConfig: diff --git a/app/main/api/internal/config/config.go b/app/main/api/internal/config/config.go index 2981f39..f624e69 100644 --- a/app/main/api/internal/config/config.go +++ b/app/main/api/internal/config/config.go @@ -98,8 +98,10 @@ type WechatH5Config struct { AppSecret string } type WechatMiniConfig struct { - AppID string - AppSecret string + AppID string + AppSecret string + TycAppID string + TycAppSecret string } type QueryConfig struct { ShareLinkExpire int64 diff --git a/app/main/api/internal/logic/user/wxminiauthlogic.go b/app/main/api/internal/logic/user/wxminiauthlogic.go index 2e2b9dd..2c1c8b2 100644 --- a/app/main/api/internal/logic/user/wxminiauthlogic.go +++ b/app/main/api/internal/logic/user/wxminiauthlogic.go @@ -33,7 +33,7 @@ func NewWxMiniAuthLogic(ctx context.Context, svcCtx *svc.ServiceContext) *WxMini func (l *WxMiniAuthLogic) WxMiniAuth(req *types.WXMiniAuthReq) (resp *types.WXMiniAuthResp, err error) { // 1. 获取session_key和openid - sessionKeyResp, err := l.GetSessionKey(req.Code) + sessionKeyResp, err := l.GetSessionKey(req.Code, req.Platform) if err != nil { return nil, errors.Wrapf(xerr.NewErrCode(xerr.SERVER_COMMON_ERROR), "获取session_key失败: %v", err) } @@ -103,9 +103,16 @@ type SessionKeyResp struct { } // GetSessionKey 通过code获取小程序的session_key和openid -func (l *WxMiniAuthLogic) GetSessionKey(code string) (*SessionKeyResp, error) { - appID := l.svcCtx.Config.WechatMini.AppID - appSecret := l.svcCtx.Config.WechatMini.AppSecret +func (l *WxMiniAuthLogic) GetSessionKey(code string, platform string) (*SessionKeyResp, error) { + var appID string + var appSecret string + if platform == "tyc" { + appID = l.svcCtx.Config.WechatMini.TycAppID + appSecret = l.svcCtx.Config.WechatMini.TycAppSecret + } else { + appID = l.svcCtx.Config.WechatMini.AppID + appSecret = l.svcCtx.Config.WechatMini.AppSecret + } url := fmt.Sprintf("https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code", appID, appSecret, code) diff --git a/app/main/api/internal/types/types.go b/app/main/api/internal/types/types.go index 7a5b8e1..dd57ff0 100644 --- a/app/main/api/internal/types/types.go +++ b/app/main/api/internal/types/types.go @@ -1705,7 +1705,8 @@ type WXH5AuthResp struct { } type WXMiniAuthReq struct { - Code string `json:"code"` + Code string `json:"code"` + Platform string `json:"platform,optional,default=tyc"` } type WXMiniAuthResp struct {