xingzai 2 سال پیش
والد
کامیت
81de1bad32
3فایلهای تغییر یافته به همراه89 افزوده شده و 10 حذف شده
  1. 9 8
      controllers/activity.go
  2. 11 2
      services/activity_special.go
  3. 69 0
      services/wx_template_msg.go

+ 9 - 8
controllers/activity.go

@@ -64,7 +64,7 @@ func (this *ActivityController) LabelTypeList() {
 		sortTime = ` timesort DESC  `
 	}
 
-	activityList, err := models.GetCygxActivityList(condition, pars, sortTime, 0, 1000)
+	activityList, err := models.GetCygxActivityList(condition, pars, sortTime, 0, 1)
 	if err != nil {
 		br.Msg = "获取失败"
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
@@ -88,11 +88,12 @@ func (this *ActivityController) LabelTypeList() {
 		return
 	}
 
-	if len(speciaItem.List) > 0 {
-		list = append(list, speciaItem)
-	} else {
-		speciaItem.List = make([]*models.CygxActivityLabelList, 0)
-	}
+	list = append(list, speciaItem)
+	//if len(speciaItem.List) > 0 {
+	//
+	//} else {
+	//	speciaItem.List = make([]*models.CygxActivityLabelList, 0)
+	//}
 
 	resp := new(models.ActivityTypeListHomeResp)
 	resp.List = list
@@ -1469,7 +1470,7 @@ func (this *ActivityController) AskAdd() {
 				if openIpItem != nil && openIpItem.OpenId != "" {
 					if sellerItem != nil {
 
-						//services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo)
+						services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo)
 					}
 				}
 			}
@@ -1477,7 +1478,7 @@ func (this *ActivityController) AskAdd() {
 			if sellerItem != nil {
 				openIpItem, _ := models.GetUserRecordByMobile(4, sellerItem.Mobile)
 				if openIpItem != nil && openIpItem.OpenId != "" {
-					//services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo)
+					services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo)
 				}
 			}
 		}

+ 11 - 2
services/activity_special.go

@@ -54,13 +54,22 @@ func ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState string) (
 			startDate = utils.GetNowWeekMonday().Format(utils.FormatDate)
 			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
 		}
-		condition += ` AND art.activity_time >= ` + "'" + startDate + " 00:00:00'"
+		condition += `    AND art.activity_time >= ` + "'" + startDate + " 00:00:00'"
 		condition += ` AND art.activity_time <= ` + "'" + endDate + " 23:59:59'"
 	}
 	if activeState == "2" {
-		condition += ` AND art.days > 0  AND art.activity_time <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+		condition += `  AND art.activity_time <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
 		condition += ` AND art.activity_time_end >= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
 	}
+
+	if activeState == "3" {
+		condition += `  AND art.days > 0   AND art.activity_time_end <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	if activeState != "" || whichDay != "" {
+		condition += `  AND art.days > 0  `
+	}
+
 	return
 }
 

+ 69 - 0
services/wx_template_msg.go

@@ -124,3 +124,72 @@ func SendTemplateMsg(sendUrl string, data []byte, resource string, sendType int,
 	}
 	return
 }
+
+//活动带问提醒
+func SendActivityAskApplyTemplateMsgV2(keyword1, keyword2, keyword3, keyword4, remark string, itemOpenid *models.OpenIdList, itemAct *models.ActivityDetail) (err error) {
+	var msg string
+	defer func() {
+		if err != nil {
+			go utils.SendEmail("发送模版消息失败"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
+			go utils.SendAlarmMsg("活动带问提醒发送模版消息失败"+remark, 2)
+		}
+		if msg != "" {
+			utils.FileLog.Info("发送模版消息失败,msg:%s", msg)
+		}
+	}()
+
+	var accessToken string
+	if utils.RunMode == "release" {
+		accessToken, err = models.GetWxAccessTokenByXzs()
+		if err != nil {
+			msg = "GetWxAccessToken Err:" + err.Error()
+			return
+		}
+		if accessToken == "" {
+			msg = "accessToken is empty"
+			return
+		}
+	} else {
+		accessToken, err = models.GetWxAccessToken()
+		if err != nil {
+			msg = "GetWxAccessToken Err:" + err.Error()
+			return
+		}
+		if accessToken == "" {
+			msg = "accessToken is empty"
+			return
+		}
+	}
+	activityId := itemAct.ArticleId
+	//fmt.Println("itemAct.Host", itemAct.Host)
+	if itemAct.ChartPermissionId != utils.CHART_PERMISSION_ID_YANXUAN && itemAct.Host != "" {
+		keyword2 += ",会议主持人:" + itemAct.Host
+	}
+	sendUrl := "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken
+	sendMap := make(map[string]interface{})
+	sendData := make(map[string]interface{})
+
+	first := "有新的客户提问"
+	//keyword1 := applyName
+	//keyword2 := "-"
+	//keyword3 := applyTime
+	//keyword4 := askContent
+	//remark := activityName
+	fontColor := "#D9001B"
+	sendData["first"] = map[string]interface{}{"value": first, "color": fontColor}
+	sendData["keyword1"] = map[string]interface{}{"value": keyword1, "color": fontColor}
+	sendData["keyword2"] = map[string]interface{}{"value": keyword2, "color": fontColor}
+	sendData["keyword3"] = map[string]interface{}{"value": keyword3, "color": fontColor}
+	sendData["keyword4"] = map[string]interface{}{"value": keyword4, "color": fontColor}
+	sendData["remark"] = map[string]interface{}{"value": remark, "color": fontColor}
+	if utils.RunMode == "release" {
+		sendMap["template_id"] = utils.WxMsgTemplateIdApplyXzs
+	} else {
+		sendMap["template_id"] = utils.WxMsgTemplateIdApply
+	}
+	sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": "activityPages/activityDetail/activityDetail?id=" + strconv.Itoa(activityId)}
+	sendMap["data"] = sendData
+	sendTemplateMsg(sendUrl, sendMap, itemOpenid, strconv.Itoa(activityId), utils.TEMPLATE_MSG_CYGX_ACTIVITY_ADD)
+	fmt.Println("send end")
+	return
+}