胡轶钦 6 years ago
parent
commit
7be43be716

+ 1
- 1
conf/db.conf View File

@@ -21,7 +21,7 @@ password     = spaceofcheng
21 21
 # password     = c;a|vK)Xv/=L@c[6Fx,v[ITD5;WpR}+Y
22 22
 
23 23
 ; 数据库名或者schema
24
-database     = spaceofcheng
24
+database     = wechatconfig
25 25
 
26 26
 ; 前缀,目前尚未使用
27 27
 dbprefix     = 

+ 1
- 2
controllers/wechatimg/wechatimt.go View File

@@ -39,12 +39,11 @@ func (c *WechatImgController) GetWechatImgList() {
39 39
 	}
40 40
 	page, _ := c.GetInt("page")
41 41
 	pageSize, _ := c.GetInt("pagesize")
42
-	count, _ := c.GetInt("count")
43 42
 	offset := page * (pageSize - 1)
44 43
 	var data map[string]string
45 44
 	data["offset"] = strconv.Itoa(offset)
46 45
 	data["type"] = "image"
47
-	data["count"] = strconv.Itoa(count)
46
+	data["count"] = strconv.Itoa(pageSize)
48 47
 	wechatImg, err := client.GetMaterialList(data)
49 48
 	if err != nil {
50 49
 		c.ResponseError(err)

+ 21
- 12
controllers/wechatmenu/wechatmenu.go View File

@@ -37,15 +37,24 @@ func (c *MenuController) GetMenuList() {
37 37
 	c.ResponseJSON(menu)
38 38
 }
39 39
 
40
-// func (c *MenuController) RefreshMenu() {
41
-// 	user := c.Context.Get("user").(*model.SysUser)
42
-// 	appId, err := c.sdao.GetAppIdByOrgId(user.OrgId)
43
-// 	if err != nil {
44
-// 		c.ResponseError(err)
45
-// 	}
46
-// 	client, err := utils.Component.GetWxClient(appId)
47
-// 	if err != nil {
48
-// 		c.ResponseError(err)
49
-// 	}
50
-// 	err = client.RefreshMenu()
51
-// }
40
+func (c *MenuController) RefreshMenu() {
41
+	user := c.Context.Get("user").(*model.SysUser)
42
+	str := c.GetString("wechatJson")
43
+	var data []byte = []byte(str)
44
+	err := c.dao.UpdateWechatMenu(str, user.OrgId)
45
+	if err != nil {
46
+		c.ResponseError(err)
47
+	}
48
+	appId, err := c.sdao.GetAppIdByOrgId(user.OrgId)
49
+	if err != nil {
50
+		c.ResponseError(err)
51
+	}
52
+	client, err := utils.Component.GetWxClient(appId)
53
+	if err != nil {
54
+		c.ResponseError(err)
55
+	}
56
+	err = client.RefreshMenu(data)
57
+	if err != nil {
58
+		c.ResponseError(err)
59
+	}
60
+}

+ 6
- 2
models/wechatmenu/wechatmenu.go View File

@@ -40,11 +40,15 @@ func (m *WechatMenuDAO) AddWechatMenu(menu model.TaWechatMenu) (*model.TaWechatM
40 40
 	_, err := m.db.Insert(menu)
41 41
 	return &menu, err
42 42
 }
43
-func (m *WechatMenuDAO) UpdateWechatMenu(menu model.TaWechatMenu) error {
43
+func (m *WechatMenuDAO) UpdateWechatMenu(wechatMenu, orgId string) error {
44
+	var menu = model.TaWechatMenu{
45
+		OrgId:            orgId,
46
+		WechatConfigJson: wechatMenu,
47
+	}
44 48
 	var cols = []string{
45 49
 		"wechat_config_json",
46 50
 	}
47
-	_, err := m.db.Cols(cols...).Where("wechat_config_id = ?", menu.WechatConfigId).Update(menu)
51
+	_, err := m.db.Cols(cols...).Where("org_id = ?", menu.WechatConfigId).Update(menu)
48 52
 	return err
49 53
 }
50 54
 func (m *WechatMenuDAO) DeleteWechatMenu(wechatConfigId string) error {

+ 12
- 0
routers/router.go View File

@@ -9,6 +9,8 @@ package routers
9 9
 
10 10
 import (
11 11
 	"wechat-conf/controllers"
12
+	"wechat-conf/controllers/autoreply"
13
+	"wechat-conf/controllers/menu"
12 14
 
13 15
 	"github.com/astaxie/beego"
14 16
 )
@@ -18,6 +20,16 @@ func RouteInit() {
18 20
 	ns := beego.NewNamespace("/api",
19 21
 		// 解决跨域时 先发送 options 问题
20 22
 		beego.NSRouter("*", &controllers.BaseController{}, "options:Options"),
23
+		// 菜单
24
+		beego.NSRouter("/menu", &menu.MenuController{}, "get:GetMenuList"),
25
+		// 自动回复
26
+		beego.NSRouter("/autoreply", &autoreply.AutoreplyController{}, "get:GetAutoReplyList"),
27
+		beego.NSRouter("/autoreply/:autoreplyId", &autoreply.AutoreplyController{}, "get:GetAutoReplyById"),
28
+		beego.NSRouter("/autoreply/", &autoreply.AutoreplyController{}, "post:SaveAutoreply"),
29
+		beego.NSRouter("/autoreply/", &autoreply.AutoreplyController{}, "put:SaveAutoreply"),
30
+		beego.NSRouter("/autoreply/", &autoreply.AutoreplyController{}, "delete:DeleteAutoReply"),
31
+		//图片资源
32
+
21 33
 	)
22 34
 
23 35
 	beego.AddNamespace(ns)

+ 10
- 0
service/wechatmenu/wechatmenu.go View File

@@ -1,6 +1,7 @@
1 1
 package wechatmenu
2 2
 
3 3
 import (
4
+	"errors"
4 5
 	"wechat-conf/models/wechatmenu"
5 6
 	"wechat-conf/utils"
6 7
 )
@@ -18,3 +19,12 @@ func NewWechatmenuServ(ctx *utils.Context) *WechatmenuServ {
18 19
 		dao: wechatmenu.NewWechatMenuDAO(ctx),
19 20
 	}
20 21
 }
22
+
23
+func (s *WechatmenuServ) UpdateWechatMenu(wechatMenu, orgId string) error {
24
+	err := s.dao.UpdateWechatMenu(wechatMenu, orgId)
25
+	if err != nil {
26
+		utils.LogError("更新菜单失败: " + err.Error())
27
+		return errors.New("更新菜单失败")
28
+	}
29
+	return nil
30
+}