Browse Source

no message

xingzai 1 year ago
parent
commit
87b9609150

+ 0 - 5
models/wx_template_msg.go

@@ -31,11 +31,6 @@ func GetOpenIdList() (items []*OpenIdList, err error) {
 }
 
 func GetWxOpenIdByMobileList(mobile string) (items []*OpenIdList, err error) {
-	//sql := `SELECT * FROM user_record WHERE bind_account IN (` + utils.WxMsgTemplateIdAskMsgMobile + `) AND create_platform = 1`
-	//sql := `SELECT cr.*,user_id FROM user_record  as c
-	//		INNER JOIN cygx_user_record AS cr ON cr.union_id = c.union_id
-	//		WHERE bind_account IN (` + mobile + `) AND create_platform = 4`
-
 	sql := ` SELECT
 				union_id,open_id,
 				cygx_user_id AS user_id

+ 11 - 1
services/minutes_summary.go

@@ -6,13 +6,20 @@ import (
 	"hongze/hongze_cygx/models"
 	"hongze/hongze_cygx/utils"
 	"strconv"
+	"time"
 )
 
 // 上周纪要汇总用户阅读,给销售发消息提醒
 func MinutesSummaryHistoryUserRmind(user *models.WxUserItem, articleId int) (err error) {
+	//30秒内阅读同一篇报告不做重复推送
+	key := "CYGX_" + utils.CYGX_OBJ_MINUTESSUMMARY + "_READ" + strconv.Itoa(articleId) + "_" + strconv.Itoa(user.UserId)
+	if utils.Rc.IsExist(key) {
+		return
+	}
+	utils.Rc.Put(key, 1, 30*time.Second)
 	defer func() {
 		if err != nil {
-			go utils.SendAlarmMsg(fmt.Sprint("上周纪要汇总用户阅读,给销售发消息提醒,模板消息推送 ,ResearchSummaryHistoryUserRmind"+err.Error(), "userId:", user.UserId, "articleId:", articleId), 2)
+			go utils.SendAlarmMsg(fmt.Sprint("上周纪要汇总用户阅读,给销售发消息提醒,模板消息推送 ,MinutesSummaryHistoryUserRmind"+err.Error(), "userId:", user.UserId, "articleId:", articleId), 2)
 		}
 	}()
 	countUser, err := models.GetUserRemind(user.UserId)
@@ -39,6 +46,9 @@ func MinutesSummaryHistoryUserRmind(user *models.WxUserItem, articleId int) (err
 			err = errors.New("GetSellerByAdminId, Err: " + e.Error())
 			return
 		}
+		if len(openIdList) == 0 {
+			return
+		}
 		detail, e := models.GetCygxMinutesSummaryInfoById(articleId)
 		if e != nil {
 			err = errors.New("GetCygxProductInteriorDetail, Err: " + e.Error())

+ 9 - 0
services/product_interior.go

@@ -250,6 +250,12 @@ func GetCygxProductInteriorHistoryListPvMap(productInteriorIs []int) (mapPv map[
 
 // 用户产品内测阅读,模板消息推送
 func ProductInteriorHistoryUserRmind(user *models.WxUserItem, productInteriorId int) (err error) {
+	//30秒内阅读同一篇报告不做重复推送
+	key := "CYGX_" + utils.CYGX_OBJ_PRODUCTINTERIOR + "_READ" + strconv.Itoa(productInteriorId) + "_" + strconv.Itoa(user.UserId)
+	if utils.Rc.IsExist(key) {
+		return
+	}
+	utils.Rc.Put(key, 1, 30*time.Second)
 	defer func() {
 		if err != nil {
 			go utils.SendAlarmMsg(fmt.Sprint("用户产品内测阅读,模板消息推送,模板消息推送失败 ,ProductInteriorHistoryUserRmind"+err.Error(), "userId:", user.UserId, "productInteriorId:", productInteriorId), 2)
@@ -279,6 +285,9 @@ func ProductInteriorHistoryUserRmind(user *models.WxUserItem, productInteriorId
 			err = errors.New("GetSellerByAdminId, Err: " + e.Error())
 			return
 		}
+		if len(openIdList) == 0 {
+			return
+		}
 		detail, e := models.GetCygxProductInteriorDetail(productInteriorId)
 		if e != nil {
 			err = errors.New("GetCygxProductInteriorDetail, Err: " + e.Error())

+ 10 - 0
services/research_summary.go

@@ -6,10 +6,17 @@ import (
 	"hongze/hongze_cygx/models"
 	"hongze/hongze_cygx/utils"
 	"strconv"
+	"time"
 )
 
 // 本周研究汇总用户阅读操作操作行为,模板消息推送
 func ResearchSummaryHistoryUserRmind(user *models.WxUserItem, articleId int) (err error) {
+	//30秒内阅读同一篇报告不做重复推送
+	key := "CYGX_" + utils.CYGX_OBJ_RESEARCHSUMMARY + "_READ" + strconv.Itoa(articleId) + "_" + strconv.Itoa(user.UserId)
+	if utils.Rc.IsExist(key) {
+		return
+	}
+	utils.Rc.Put(key, 1, 30*time.Second)
 	defer func() {
 		if err != nil {
 			go utils.SendAlarmMsg(fmt.Sprint("本周研究汇总用户阅读操作操作行为,模板消息推送 ,ResearchSummaryHistoryUserRmind"+err.Error(), "userId:", user.UserId, "articleId:", articleId), 2)
@@ -39,6 +46,9 @@ func ResearchSummaryHistoryUserRmind(user *models.WxUserItem, articleId int) (er
 			err = errors.New("GetSellerByAdminId, Err: " + e.Error())
 			return
 		}
+		if len(openIdList) == 0 {
+			return
+		}
 		detail, e := models.GetCygxResearchSummaryInfoById(articleId)
 		if e != nil {
 			err = errors.New("GetCygxProductInteriorDetail, Err: " + e.Error())

+ 1 - 1
utils/constants.go

@@ -240,7 +240,7 @@ const (
 	CYGX_OBJ_REPORTSELECTION    string = "reportselection"    // 对象类型:报告精选(重点公司)
 	CYGX_OBJ_PRODUCTINTERIOR    string = "productinterior"    // 对象类型:产品内测
 	CYGX_OBJ_RESEARCHSUMMARY    string = "researchsummary"    // 对象类型:本周研究汇总
-	CYGX_OBJ_MINUTESSUMMARY     string = "minutessummary"     // 对象类型:本周研究汇总
+	CYGX_OBJ_MINUTESSUMMARY     string = "minutessummary"     // 对象类型:上周纪要汇总
 	CYGX_OBJ_YANXUANSPECIAL     string = "yanxuanspecial"     // 对象类型:研选专栏
 )