|
@@ -2,8 +2,10 @@ package services
|
|
|
|
|
|
import (
|
|
|
"errors"
|
|
|
+ "fmt"
|
|
|
"hongze/hongze_cygx/models"
|
|
|
"hongze/hongze_cygx/utils"
|
|
|
+ "strconv"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
@@ -125,3 +127,77 @@ func GetTripRemainingtimesBycompany(user *models.WxUserItem, activityInfo *model
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+//用户搜专项调研操作操作行为,模板消息推送
|
|
|
+func ActivitySpecialUserRmind(user *models.WxUserItem, activityId, TripStatus int) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ go utils.SendAlarmMsg("用户搜专项调研操作操作行为,模板消息推送失败"+err.Error(), 2)
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ countUser, err := models.GetUserRemind(user.UserId)
|
|
|
+ if err != nil {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ if countUser == 0 {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ var first string
|
|
|
+ var keyword1 string
|
|
|
+ var keyword2 string
|
|
|
+ var keyword3 string
|
|
|
+ var keyword4 string
|
|
|
+ var remark string
|
|
|
+ //获取销售手机号
|
|
|
+ sellerItemQy, err := models.GetSellerByCompanyIdCheckFicc(user.CompanyId, 2)
|
|
|
+ if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ if sellerItemQy != nil {
|
|
|
+ openIdList, e := models.GetWxOpenIdByMobileList(sellerItemQy.Mobile)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetSellerByAdminId, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ activityInfo, e := models.GetCygxActivitySpecialDetailById(user.UserId, activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCygxActivitySpecialDetailById, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if activityInfo == nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //TripStatus int `description:"行程进行状态 1:预报名,2:确定行程"`
|
|
|
+ if TripStatus == 1 {
|
|
|
+ first = fmt.Sprint(user.RealName, "--", user.CompanyName, ",有新的互动:专项调研预报名")
|
|
|
+ } else {
|
|
|
+ first = fmt.Sprint(user.RealName, "--", user.CompanyName, ",有新的互动:活动报名")
|
|
|
+ }
|
|
|
+ keyword1 = activityInfo.ResearchTheme
|
|
|
+ keyword2 = "__"
|
|
|
+ remark = "点击查看活动详情"
|
|
|
+ openIdArr := make([]string, 0)
|
|
|
+ for _, v := range openIdList {
|
|
|
+ openIdArr = append(openIdArr, v.OpenId)
|
|
|
+ }
|
|
|
+ redirectUrl := utils.WX_MSG_PATH_ACTIVITY_SPECIAL_DETAIL + strconv.Itoa(activityId)
|
|
|
+ sendInfo := new(SendWxTemplate)
|
|
|
+ sendInfo.First = first
|
|
|
+ sendInfo.Keyword1 = keyword1
|
|
|
+ sendInfo.Keyword2 = keyword2
|
|
|
+ sendInfo.Keyword3 = keyword3
|
|
|
+ sendInfo.Keyword4 = keyword4
|
|
|
+ sendInfo.Remark = remark
|
|
|
+ sendInfo.TemplateId = utils.WxMsgTemplateIdAskMsgXzs
|
|
|
+ sendInfo.RedirectUrl = redirectUrl
|
|
|
+ sendInfo.RedirectTarget = 3
|
|
|
+ sendInfo.Resource = strconv.Itoa(activityId)
|
|
|
+ sendInfo.SendType = utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD
|
|
|
+ sendInfo.OpenIdArr = openIdArr
|
|
|
+ err = PublicSendTemplateMsg(sendInfo)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|