From fb7fb3e8a63a50477922edf767b8578115f12d49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Wed, 22 Jun 2022 10:56:36 +0800 Subject: [PATCH] 1 --- business/enterprise_session/create_session.go | 6 ++++ controllers/enterprise_callback.go | 31 ++++++++++++------- controllers/enterprise_session.go | 13 ++++++++ routers/commentsRouter_controllers.go | 9 ++++++ 4 files changed, 47 insertions(+), 12 deletions(-) diff --git a/business/enterprise_session/create_session.go b/business/enterprise_session/create_session.go index ddeee7fce..7d4f72164 100644 --- a/business/enterprise_session/create_session.go +++ b/business/enterprise_session/create_session.go @@ -173,3 +173,9 @@ func CheckBoosGroupChat(store *dao.StoreDetail2) ([]string, error) { } return enterpriseList, nil } + +// 获取企业微信token +func GetEnterpriseTokenInfo() string { + api.EnterpriseChatHeadApi.CheckAccessTokenExpiresIn() + return api.EnterpriseChatHeadApi.ReturnToken() +} diff --git a/controllers/enterprise_callback.go b/controllers/enterprise_callback.go index 30024371c..369f7e28c 100644 --- a/controllers/enterprise_callback.go +++ b/controllers/enterprise_callback.go @@ -3,8 +3,9 @@ package controllers import ( "git.rosy.net.cn/jx-callback/business/enterprise" "git.rosy.net.cn/jx-callback/globals/api" + "net/http" - //call "git.rosy.net.cn/baseapi/utils/weworkapi_golang-master" + call "git.rosy.net.cn/baseapi/utils/weworkapi_golang-master" "git.rosy.net.cn/jx-callback/globals" "github.com/astaxie/beego/server/web" ) @@ -17,17 +18,23 @@ type EnterpriseController struct { // 消息结构体将使用创建应用时的EncodingAESKey进行加密(特别注意, 在第三方回调事件中使用加解密算法,receiveid的内容为suiteid) // ,请参考接收消息解析数据包。 func (e *EnterpriseController) EnterpriseCallback() { - globals.SugarLogger.Debug("=====") - suite, err := api.EnterpriseChatHeadApi.GetEnterpriseMsg(e.Ctx.Request) - if err != nil { - globals.SugarLogger.Debug("EnterpriseCallback=======1", err) - e.Abort("404") - } else { - if err := enterprise.UpdateEnterpriseSuite(suite); err != nil { - globals.SugarLogger.Debug("EnterpriseCallback=======2", err) + switch e.Ctx.Request.Method { + case http.MethodPost: + globals.SugarLogger.Debug("=====") + suite, err := api.EnterpriseChatHeadApi.GetEnterpriseMsg(e.Ctx.Request) + if err != nil { + globals.SugarLogger.Debug("EnterpriseCallback=======1", err) + e.Abort("404") + } else { + if err := enterprise.UpdateEnterpriseSuite(suite); err != nil { + globals.SugarLogger.Debug("EnterpriseCallback=======2", err) + } } + e.Data["xml"] = "success" + e.ServeXML() + case http.MethodGet: + call.VerifyURL(e.Ctx.ResponseWriter, e.Ctx.Request) + default: + e.Abort("404") } - e.Data["xml"] = "success" - e.ServeXML() - //call.VerifyURL(e.Ctx.ResponseWriter, e.Ctx.Request) } diff --git a/controllers/enterprise_session.go b/controllers/enterprise_session.go index c6392daeb..55b2e80b4 100644 --- a/controllers/enterprise_session.go +++ b/controllers/enterprise_session.go @@ -25,3 +25,16 @@ func (c *SessionController) CreateBossSession() { }) } + +// 获取企业微信token +// @Title 创建门店老板的会话群 +// @Description 创建门店老板的会话群 +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /GetEnterpriseToken [Get] +func (c *SessionController) GetEnterpriseToken() { + c.callGetEnterpriseToken(func(params *tSessionGetEnterpriseTokenParams) (interface{}, string, error) { + token := enterprise_session.GetEnterpriseTokenInfo() + return token, "", nil + }) +} diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index cd65d2ede..536117e20 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -4043,6 +4043,15 @@ func init() { MethodParams: param.Make(), Filters: nil, Params: nil}) + // 获取企业微信token + web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SessionController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SessionController"], + web.ControllerComments{ + Method: "GetEnterpriseToken", + Router: `/GetEnterpriseToken`, + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) //web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:FnController"] = append(web.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:FnController"], // web.ControllerComments{ // Method: "FnStore",