zhangchuanxing 1 semana atrás
pai
commit
6f30dc23f4
3 arquivos alterados com 41 adições e 69 exclusões
  1. 4 65
      controllers/roadshow/activity.go
  2. 32 4
      services/wechat_send_msg.go
  3. 5 0
      utils/constants.go

+ 4 - 65
controllers/roadshow/activity.go

@@ -66,24 +66,8 @@ func (this *ActivityController) Add() {
 		return
 	}
 
-	//researcherMap := make(map[int]string)
 	var checkIsAdd []string
 
-	//if req.EnglishCompany == 1 {
-	//	englishCompany, err := models.GetEnglishCompanyById(req.CompanyId)
-	//	if err != nil {
-	//		br.Msg = "客户已被删除, 请刷新页面"
-	//		br.ErrMsg = "获取失败,GetEnglishCompanyById Err: " + err.Error()
-	//		return
-	//	}
-	//}
-
-	//var tipMsg string
-	//for _, v := range req.SellerList {
-	//	if req.SellerId <= 0 {
-	//		br.Msg = "请选择销售!"
-	//		return
-	//	}
 	if req.SellerName == "" {
 		br.Msg = "请选择销售!"
 		return
@@ -117,29 +101,6 @@ func (this *ActivityController) Add() {
 	startDateTime := req.StartDate + " " + req.StartTime
 	endDateTime := req.EndDate + " " + req.EndTime
 
-	//startP, _ := time.ParseInLocation(utils.FormatDateTime, startDateTime, time.Local)
-	//endP, _ := time.ParseInLocation(utils.FormatDateTime, endDateTime, time.Local)
-	//
-	//if startP.Before(time.Now()) || startP.Equal(time.Now()) {
-	//	br.Msg = "活动开始时间不能小于当前时间!"
-	//	return
-	//}
-	//
-	//if endP.Before(time.Now()) || endP.Equal(time.Now()) {
-	//	br.Msg = "活动结束时间不能小于当前时间!"
-	//	return
-	//}
-	//
-	//if startP.After(endP) || startP.Equal(endP) {
-	//	br.Msg = "活动开始时间应小于结束时间!"
-	//	return
-	//}
-
-	//if realName, ok := researcherMap[v.SellerId]; ok {
-	//	br.Msg = "销售:" + realName + " 被重复选择"
-	//	return
-	//}
-	//researcherMap[v.SellerId] = v.SellerName
 	sellerList, err := system.GetSysAdminByIds(req.SellerId)
 	if err != nil {
 		br.Msg = "保存失败!"
@@ -185,8 +146,7 @@ func (this *ActivityController) Add() {
 		br.ErrMsg = "保存日历活动信息失败!Err:" + err.Error()
 		return
 	}
-	openIdList := make([]*system.OpenIdList, 0)
-	//if researcherId != 99 {
+
 	for _, v := range sellerList {
 		researcher := new(roadshow.RsActivitySeller)
 		researcher.RsActivityId = int(rsActivityId)
@@ -207,16 +167,8 @@ func (this *ActivityController) Add() {
 			br.ErrMsg = "保存日历活动-销售路演信息失败!Err:" + err.Error()
 			return
 		}
-
-		if v.OpenId != "" {
-			openIdObj := &system.OpenIdList{
-				OpenId:  v.OpenId,
-				AdminId: v.AdminId,
-			}
-			openIdList = append(openIdList, openIdObj)
-		}
 	}
-
+	openIdList := make([]*system.OpenIdList, 0)
 	sysAdmin, _ := system.GetSysAdminById(sysUser.AdminId)
 	if sysAdmin != nil && sysAdmin.OpenId != "" {
 		openIdObj := &system.OpenIdList{
@@ -225,7 +177,7 @@ func (this *ActivityController) Add() {
 		}
 		openIdList = append(openIdList, openIdObj)
 	}
-	go services.SendWxMsgWithRoadshowSellerActivity(req.CompanyName, "参会", "已添加", time.Now().Format(utils.FormatDateTime), openIdList)
+	go services.SendWxMsgWithRoadshowSellerActivity(req.CompanyName, "参会", "已添加", time.Now().Format(utils.FormatDateTime), openIdList, int(rsActivityId))
 
 	br.Ret = 200
 	br.Success = true
@@ -363,20 +315,7 @@ func (this *ActivityController) Delete() {
 		br.ErrMsg = "删除失败,DeleteRsActivitySeller,Err:" + err.Error()
 		return
 	}
-
-	//获取对应的多个销售信息
-	listSeller, err := roadshow.GetRsActivitySellerListByActivityIds([]int{rsActivityId})
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取数据失败,GetRsActivitySellerList,Err:" + err.Error()
-		return
-	}
-	for range listSeller {
-
-	}
-
 	openIdList := make([]*system.OpenIdList, 0)
-
 	sysAdmin, _ := system.GetSysAdminById(sysUser.AdminId)
 	if sysAdmin != nil && sysAdmin.OpenId != "" {
 		openIdObj := &system.OpenIdList{
@@ -385,7 +324,7 @@ func (this *ActivityController) Delete() {
 		}
 		openIdList = append(openIdList, openIdObj)
 	}
-	go services.SendWxMsgWithRoadshowSellerActivity(detail.CompanyName, "参会", "已删除", time.Now().Format(utils.FormatDateTime), openIdList)
+	go services.SendWxMsgWithRoadshowSellerActivity(detail.CompanyName, "参会", "已删除", time.Now().Format(utils.FormatDateTime), openIdList, rsActivityId)
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "删除成功"

+ 32 - 4
services/wechat_send_msg.go

@@ -7,6 +7,7 @@ import (
 	"fmt"
 	"hongze/hz_crm_api/models"
 	"hongze/hz_crm_api/models/cygx"
+	"hongze/hz_crm_api/models/roadshow"
 	"hongze/hz_crm_api/models/system"
 	"hongze/hz_crm_api/services/alarm_msg"
 	"hongze/hz_crm_api/utils"
@@ -1886,7 +1887,7 @@ func SendWxMsgWithRaiWangYang(keyword1, keyword2, keyword3, keyword4 string, ope
 }
 
 // SendWxMsgWithRoadshowSellerActivity 销售创建或取消活动的时候,推送模板消息
-func SendWxMsgWithRoadshowSellerActivity(keyword1, keyword2, keyword3, keyword4 string, openIdList []*system.OpenIdList) (err error) {
+func SendWxMsgWithRoadshowSellerActivity(keyword1, keyword2, keyword3, keyword4 string, openIdList []*system.OpenIdList, rsActivityId int) (err error) {
 	var msg string
 	defer func() {
 		if err != nil {
@@ -1897,11 +1898,38 @@ func SendWxMsgWithRoadshowSellerActivity(keyword1, keyword2, keyword3, keyword4
 			utils.FileLog.Info("发送模版消息失败,msg:%s", msg)
 		}
 	}()
+
+	//获取对应的多个销售信息
+	listSellerActivity, e := roadshow.GetRsActivitySellerListByActivityIds([]int{rsActivityId})
+	if e != nil {
+		err = errors.New("GetRsActivitySellerListByActivityIds, Err: " + e.Error())
+		return
+	}
+	var adminIds []string
+	for _, v := range listSellerActivity {
+		adminIds = append(adminIds, strconv.Itoa(v.SellerId))
+	}
+	sellerList, e := system.GetSysAdminByIds(strings.Join(adminIds, ","))
+	if e != nil {
+		err = errors.New("GetSysAdminByIds, Err: " + e.Error())
+		return
+	}
+	for _, sysAdmin := range sellerList {
+		if sysAdmin.OpenId != "" {
+			openIdObj := &system.OpenIdList{
+				OpenId:  sysAdmin.OpenId,
+				AdminId: sysAdmin.AdminId,
+			}
+			openIdList = append(openIdList, openIdObj)
+		}
+	}
+
 	openIdArr := make([]string, len(openIdList))
 	for i, v := range openIdList {
 		openIdArr[i] = v.OpenId
 	}
 	var wxAppPath string
+	wxAppPath = utils.WX_MSG_PATH_SSBG_SELLER_ACTIVITY_DETAIL + strconv.Itoa(rsActivityId)
 	sendInfo := new(SendWxTemplate)
 	//sendInfo.WxAppId = utils.AdminWxAppId
 	sendInfo.WxAppId = "wx1392111da5426e9e"
@@ -1910,9 +1938,9 @@ func SendWxMsgWithRoadshowSellerActivity(keyword1, keyword2, keyword3, keyword4
 	sendInfo.Keyword3 = keyword3
 	sendInfo.Keyword4 = keyword4
 	sendInfo.TemplateId = utils.WxMsgTemplateIdWithRoadshowActivityPending
-	//if wxAppPath != "" && utils.RunMode == "release" {
-	//	sendInfo.RedirectUrl = wxAppPath
-	//}
+	if wxAppPath != "" && utils.RunMode == "release" {
+		sendInfo.RedirectUrl = wxAppPath
+	}
 	sendInfo.RedirectTarget = 2
 	sendInfo.Resource = wxAppPath
 	sendInfo.SendType = utils.TEMPLATE_MSG_ACTIVITY_APPOINTMENT

+ 5 - 0
utils/constants.go

@@ -643,3 +643,8 @@ const (
 	WX_MSG_PATH_YX_ARTICLE_DETAIL  = "pages-user/reportDetail/reportDetail?id="         //研选纪要详情
 
 )
+
+// 随手办公小程序 模版消息路由
+const (
+	WX_MSG_PATH_SSBG_SELLER_ACTIVITY_DETAIL = "/pages-approve/activity/ficcActivityDetail?TemplateMsg=true&RsActivityId=" //随手办公小程序,销售添加活动详情
+)