|
@@ -459,3 +459,86 @@ func SendWxCategoryMsgWithRaiWangYang(keyword1, keyword2, keyword3, keyword4 str
|
|
|
err = SendCategoryTemplateMsg(sendInfo)
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+// 销售或后台管理员给用户添加报名之后,进行模版消息推送-研选类目模版
|
|
|
+func SendWxCategoryMsgWithCygxActivitySignUpBySell(items []*cygx.CygxSignupUser) (err error) {
|
|
|
+ var msg string
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ go alarm_msg.SendAlarmMsg("修改活动人数限制之后,对于因为人数已满而失败的用户,推送模板消息,发送类目模版消息失败,Err:"+err.Error()+";msg:"+msg, 3)
|
|
|
+ utils.FileLogCygx.Info(fmt.Sprintf("发送类目模版消息失败,Err:%s,%s", err.Error(), msg))
|
|
|
+ }
|
|
|
+ }()
|
|
|
+
|
|
|
+ if len(items) == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //var condition string
|
|
|
+ //var pars []interface{}
|
|
|
+
|
|
|
+ for _, v := range items {
|
|
|
+ activityId := v.ActivityId
|
|
|
+ uid := v.UserId
|
|
|
+ activityInfo, e := cygx.GetAddActivityInfoById(activityId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("活动不存在, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //只发研选的
|
|
|
+ if activityInfo.ChartPermissionId != utils.CHART_PERMISSION_ID_YANXUAN{
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if activityInfo == nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ wxUser, e := models.GetWxUserByUserId(uid)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("查询用户信息失败, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var mobileArr []string
|
|
|
+ mobileArr = append(mobileArr, wxUser.Mobile)
|
|
|
+ mobileLen := len(mobileArr)
|
|
|
+ if mobileLen == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //condition = ""
|
|
|
+ //pars = make([]interface{}, 0)
|
|
|
+ //condition += ` AND u.mobile IN (` + utils.GetOrmInReplace(mobileLen) + `)`
|
|
|
+ //pars = append(pars, mobileArr)
|
|
|
+
|
|
|
+ openIdList, e := cygx.GetUserRecordListByMobileArr(mobileArr)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetWxOpenIdBList, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(openIdList) == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ openIdArr := make([]string, len(openIdList))
|
|
|
+ for i, v := range openIdList {
|
|
|
+ fmt.Println(v.OpenId)
|
|
|
+ openIdArr[i] = v.OpenId
|
|
|
+ }
|
|
|
+ resultTime := utils.StrTimeToTime(activityInfo.ActivityTime)
|
|
|
+ keyword1 := "销售已为您报名:"
|
|
|
+ keyword2 := "报名成功"
|
|
|
+ keyword3 := activityInfo.ActivityName
|
|
|
+ keyword4 := resultTime.Format(utils.FormatDateTimeMinute2)
|
|
|
+
|
|
|
+ sendInfo := new(SendWxCategoryTemplate)
|
|
|
+ sendInfo.Keywords = []string{keyword1, keyword2, keyword3, keyword4}
|
|
|
+ sendInfo.TemplateId = utils.WxMsgCategoryTemplateIdActivityApplyXzs
|
|
|
+ sendInfo.RedirectUrl = utils.WX_MSG_PATH_ACTIVITY_DETAIL + strconv.Itoa(activityId)
|
|
|
+ sendInfo.RedirectTarget = 3
|
|
|
+ sendInfo.SendType = utils.TEMPLATE_MSG_APPLY
|
|
|
+ sendInfo.OpenIdArr = openIdArr
|
|
|
+ err = SendCategoryTemplateMsg(sendInfo)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("SendCategoryTemplateMsg, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|