瀏覽代碼

fix:微信回复

fuwencai 9 月之前
父節點
當前提交
758689a238
共有 2 個文件被更改,包括 8 次插入1 次删除
  1. 1 0
      src/jfw/modules/weixin/src/wx/reply.go
  2. 7 1
      src/jfw/modules/weixin/src/wx/wx.go

+ 1 - 0
src/jfw/modules/weixin/src/wx/reply.go

@@ -41,6 +41,7 @@ WHERE
         AND wrr.end_time >= NOW() order by id;`, TableWxReplyKeys, TableWxReplyRule, TableWxReplyContent)
 	rs := tools.Mysql.SelectBySql(query, keys)
 	// 没匹配上规则
+	log.Println("rs:", rs)
 	if rs == nil || len(*rs) == 0 {
 		return false
 	}

+ 7 - 1
src/jfw/modules/weixin/src/wx/wx.go

@@ -1,7 +1,6 @@
 package wx
 
 import (
-	. "app.yhyue.com/moapp/jybase/mongodb"
 	"app.yhyue.com/moapp/jypkg/common/src/qfw/util/jy"
 	"bp.jydev.jianyu360.cn/BaseService/userCenter/rpc/pb"
 	"encoding/json"
@@ -133,6 +132,10 @@ func MenuClickHandler(w ResponseWriter, r *Request) {
 	// }
 }
 
+var (
+	MsgLock = &sync.Mutex{}
+)
+
 // 客服消息处理
 func MsgTxtHandler(w ResponseWriter, r *Request) {
 	log.Println("所有指令", r.FromUserName, r.Content, r.CreateTime, r.MsgId) //测试信息
@@ -143,6 +146,8 @@ func MsgTxtHandler(w ResponseWriter, r *Request) {
 	if openid != "" {
 		redis.Put("push", "remind&&"+openid, "3", 172800)
 	}
+	MsgLock.Lock()
+	defer MsgLock.Unlock()
 	//微信客服消息 有可能会触发三次回调机制
 	receiveKey := fmt.Sprintf("customer_service_%s_%s_%v", r.FromUserName, r.Content, r.MsgId)
 	isReceived, err := redis.Exists("other", receiveKey)
@@ -191,6 +196,7 @@ func MsgTxtHandler(w ResponseWriter, r *Request) {
 		if KeysReply(r.Content, w) {
 			return
 		}
+		log.Println("未匹配到关键词")
 		go tools.MQFW.Save("weixinoffline", &map[string]interface{}{
 			"s_openid":    r.FromUserName,
 			"s_msg":       r.Content,