Kaynağa Gözat

Merge branch 'release' into dev4.5.2

lianbingjie 4 yıl önce
ebeveyn
işleme
8811e1f991

+ 8 - 3
src/jfw/modules/weixin/src/github.com/wizjin/weixin/weixin.go

@@ -792,13 +792,18 @@ func (wx *Weixin) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 			log.Println("Weixin parse message failed:", err)
 			http.Error(w, "", http.StatusBadRequest)
 		} else {
-			if msg.Event == EventTemplateSent || msg.Event == EventView {
+			//update by wcj on 2021-07-29
+			//update before
+			/*if msg.Event == EventTemplateSent || msg.Event == EventView {
 				http.Error(w, "", http.StatusNotFound)
 			} else {
 				wx.routeRequest(w, &msg)
-			}
+			}*/
+			//update after
+			wx.routeRequest(w, &msg)
 		}
 	}
+	w.Write([]byte("success")) //add by wcj on 2021-07-30
 	return
 }
 
@@ -819,7 +824,7 @@ func (wx *Weixin) routeRequest(w http.ResponseWriter, r *Request) {
 		route.handler(writer, r)
 		return
 	}
-	http.Error(w, "", http.StatusNotFound)
+	//http.Error(w, "", http.StatusNotFound)
 	return
 }
 

+ 13 - 3
src/jfw/modules/weixin/src/wx/wx.go

@@ -109,10 +109,20 @@ func MenuClickHandler(w ResponseWriter, r *Request) {
 	clickButtonKey := r.EventKey
 	if replyText, ok := menuClickReplyTextMap[clickButtonKey]; ok {
 		w.PostText(replyText)
-		//二维码
-		mediaId, err := w.UploadMediaFromFile("image", tools.BusinessCoop)
+		CBKey := fmt.Sprintf("%s_%d", clickButtonKey, time.Now().Day())
+		mediaId := redis.GetStr("other", CBKey)
+		if mediaId == "" {
+			//二维码
+			_mediaId, err := w.UploadMediaFromFile("image", tools.BusinessCoop)
+			if _mediaId != "" && err == nil {
+				mediaId = _mediaId
+			}
+		}
 		// log.Println(mediaId, "--", err, "--", tools.BusinessCoop)
-		if mediaId != "" && err == nil {
+		if mediaId != "" {
+			go func() {
+				redis.Put("other", CBKey, mediaId, 24*60*60)
+			}()
 			w.PostImage(mediaId)
 		}
 	}