|
@@ -2,6 +2,7 @@ package rpc
|
|
|
|
|
|
import (
|
|
|
"app.yhyue.com/BP/weixin_util/weixin"
|
|
|
+ "fmt"
|
|
|
"log"
|
|
|
"net"
|
|
|
"net/http"
|
|
@@ -34,6 +35,10 @@ type NotifyMsg struct {
|
|
|
//RPCResult
|
|
|
type Result string
|
|
|
|
|
|
+const (
|
|
|
+ WX_OAUTH2_URL = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=1#wechat_redirect"
|
|
|
+)
|
|
|
+
|
|
|
func (wxRPC *WeiXinRpc) SendTplMsg(msgTmpIdKey string, param *NotifyMsg, ret *Result) (err error) {
|
|
|
var msg struct {
|
|
|
ToUser string `json:"touser"`
|
|
@@ -87,8 +92,19 @@ func (wxRPC *WeiXinRpc) CreateMenu(menu *weixin.Menu, ret *Result) (err error) {
|
|
|
menu.Buttons[1].Name = "业务2"
|
|
|
menu.Buttons[1].Type = MenuButtonTypeUrl
|
|
|
menu.Buttons[1].Url = url2*/
|
|
|
-
|
|
|
- err = weixin.Mux.CreateMenu(menu)
|
|
|
+ menu2 := &weixin.Menu{make([]weixin.MenuButton, len(menu.Buttons))}
|
|
|
+ if len(menu.Buttons) > 0 {
|
|
|
+ for index, _menuBtn := range menu.Buttons {
|
|
|
+ menu2.Buttons[index].Name = _menuBtn.Name
|
|
|
+ menu2.Buttons[index].Type = weixin.MenuButtonTypeUrl
|
|
|
+ _url := _menuBtn.Url
|
|
|
+ if _url != "" {
|
|
|
+ url := fmt.Sprintf(WX_OAUTH2_URL, weixin.WxConfig.AppId, weixin.WxMenuRedirectUrl+_url)
|
|
|
+ menu2.Buttons[index].Url = url
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ err = weixin.Mux.CreateMenu(menu2)
|
|
|
if err != nil {
|
|
|
*ret = "菜单创建失败"
|
|
|
log.Println("菜单创建失败")
|