zhangchuanxing hai 2 semanas
pai
achega
2382b6446f

+ 13 - 32
controllers/roadshow/activity.go

@@ -133,8 +133,7 @@ func (this *ActivityController) Add() {
 		this.FailWithMessage("保存失败!", "保存日历活动信息失败!Err:"+err.Error())
 		return
 	}
-	openIdList := make([]*system.OpenIdList, 0)
-	//if researcherId != 99 {
+
 	for _, v := range sellerList {
 		researcher := new(roadshow.RsActivitySeller)
 		researcher.RsActivityId = int(rsActivityId)
@@ -155,15 +154,8 @@ func (this *ActivityController) Add() {
 			return
 		}
 
-		if v.OpenId != "" {
-			openIdObj := &system.OpenIdList{
-				OpenId:  v.OpenId,
-				AdminId: v.AdminId,
-			}
-			openIdList = append(openIdList, openIdObj)
-		}
 	}
-
+	openIdList := make([]*system.OpenIdList, 0)
 	sysAdmin, _ := admin.GetAdminWxById(sysUser.AdminId)
 	if sysAdmin != nil && sysAdmin.OpenId != "" {
 		openIdObj := &system.OpenIdList{
@@ -172,7 +164,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))
 
 	this.OkDetailed(nil, "保存成功")
 }
@@ -214,27 +206,16 @@ func (this *ActivityController) Delete() {
 		return
 	}
 
-	//获取对应的多个销售信息
-	//listSeller, err := roadshow.GetRsActivitySellerListByActivityIds([]int{rsActivityId})
-	//if err != nil {
-	//	this.FailWithMessage("获取失败!", "获取数据失败!GetRsActivitySellerListByActivityIds Err:"+err.Error())
-	//	return
-	//}
-	//for range listSeller {
-	//
-	//}
-	//
-	//openIdList := make([]*system.OpenIdList, 0)
-	//
-	//sysAdmin, _ := admin.GetAdminWxById(sysUser.AdminId)
-	//if sysAdmin != nil && sysAdmin.OpenId != "" {
-	//	openIdObj := &system.OpenIdList{
-	//		OpenId:  sysAdmin.OpenId,
-	//		AdminId: sysAdmin.AdminId,
-	//	}
-	//	openIdList = append(openIdList, openIdObj)
-	//}
-	//go services.SendWxMsgWithRoadshowSellerActivity(detail.CompanyName, "参会", "已添加", time.Now().Format(utils.FormatDateTime), openIdList)
+	openIdList := make([]*system.OpenIdList, 0)
+	sysAdmin, _ := admin.GetAdminWxById(sysUser.AdminId)
+	if sysAdmin != nil && sysAdmin.OpenId != "" {
+		openIdObj := &system.OpenIdList{
+			OpenId:  sysAdmin.OpenId,
+			AdminId: sysAdmin.AdminId,
+		}
+		openIdList = append(openIdList, openIdObj)
+	}
+	go services.SendWxMsgWithRoadshowSellerActivity(detail.CompanyName, "参会", "已添加", time.Now().Format(utils.FormatDateTime), openIdList, rsActivityId)
 	this.OkDetailed(nil, "保存成功")
 }
 

+ 1 - 1
models/tables/admin/admin.go

@@ -188,7 +188,7 @@ func GetOpenIdListByMobile(mobile, openIdStr string) (items []*OpenIdList, err e
 	return
 }
 
-func GetAdminWxByIdS(adminIdStr string) (items []*custom.AdminWx, err error) {
+func GetSysAdminByIds(adminIdStr string) (items []*custom.AdminWx, err error) {
 	sql := `SELECT * FROM admin WHERE admin_id IN(` + adminIdStr + `)`
 	o := orm.NewOrm()
 	_, err = o.Raw(sql).QueryRows(&items)

+ 31 - 2
services/wechat_send_msg.go

@@ -5,12 +5,14 @@ import (
 	"errors"
 	"fmt"
 	"hongze/hongze_mobile_admin/models"
+	"hongze/hongze_mobile_admin/models/roadshow"
 	"hongze/hongze_mobile_admin/models/tables/admin"
 	"hongze/hongze_mobile_admin/models/tables/system"
 	"hongze/hongze_mobile_admin/services/alarm_msg"
 	"hongze/hongze_mobile_admin/utils"
 	"io/ioutil"
 	"net/http"
+	"strconv"
 	"strings"
 	"time"
 )
@@ -616,7 +618,7 @@ type GetAccessTokenRespData struct {
 }
 
 // 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 {
@@ -627,18 +629,45 @@ 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 := admin.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.Keyword1 = keyword1
 	sendInfo.Keyword2 = keyword2
 	sendInfo.Keyword3 = keyword3
 	sendInfo.Keyword4 = keyword4
-	sendInfo.TemplateId = utils.WxMsgTemplateIdWithRoadshowPending
+	sendInfo.TemplateId = utils.WxMsgTemplateIdWithRoadshowActivityPending
 	if wxAppPath != "" && utils.RunMode == "release" {
 		sendInfo.RedirectUrl = wxAppPath
 	}

+ 20 - 18
utils/config.go

@@ -12,7 +12,7 @@ var (
 	RunMode        string //运行模式
 	MYSQL_URL      string //数据库连接
 	MYSQL_URL_RDDP string //数据库连接
-	MYSQL_URL_CYGX         string // 查研观向
+	MYSQL_URL_CYGX string // 查研观向
 
 	REDIS_CACHE string       //缓存地址
 	Rc          *cache.Cache //redis缓存
@@ -42,14 +42,15 @@ var (
 
 	WxYbAppId string //弘则研报小程序APPID
 
-	WxMsgTemplateIdWithRoadshowPending      string //路演->研究员收到待处理的申请
-	WxMsgTemplateIdWithRoadshowDetailResult string //路演->销售收到处理结果
-	WxMsgTemplateIdWithRoadshowDeleteNotice string //路演->研究员收到活动删除通知
-	WxMsgTemplateIdWithSealApplyFinished    string // 用印申请-已签回通知
-	WxMsgTemplateIdWithYbCommunityQuestion  string // 研报小程序->问答社区回复通知
-	SendWxTemplateMsgUrl                    string //模板消息推送
-	SendWxCategoryTemplateMsgUrl string
-	HongzePublicApiUrl string // 弘则公共api
+	WxMsgTemplateIdWithRoadshowPending         string //路演->研究员收到待处理的申请
+	WxMsgTemplateIdWithRoadshowDetailResult    string //路演->销售收到处理结果
+	WxMsgTemplateIdWithRoadshowDeleteNotice    string //路演->研究员收到活动删除通知
+	WxMsgTemplateIdWithSealApplyFinished       string // 用印申请-已签回通知
+	WxMsgTemplateIdWithRoadshowActivityPending string //路演->销售收到添加成功与删除通知
+	WxMsgTemplateIdWithYbCommunityQuestion     string // 研报小程序->问答社区回复通知
+	SendWxTemplateMsgUrl                       string //模板消息推送
+	SendWxCategoryTemplateMsgUrl               string
+	HongzePublicApiUrl                         string // 弘则公共api
 
 	//查研观向
 	WxMsgTemplateIdCompanyApprovalMessageRai string //权益销售签约成功通知查研观向小助手模版消息
@@ -197,9 +198,10 @@ func wxConfig() {
 		TemplateCompanyApplyRedirectUrl = "https://ficc.hzinsights.com/approval/approval/list"
 
 		//路演
-		WxMsgTemplateIdWithRoadshowPending = "1JG9fvKx9o9B-wkZe_gBFQQzMBnp07-hvpZI9QiFcKQ"      //路演->研究员收到待处理的申请
-		WxMsgTemplateIdWithRoadshowDetailResult = "D6AFTJ7CbDDFBYg1R-HRir5bBXkIqGrwUtb2bjN-Wr4" //路演->销售收到处理结果
-		WxMsgTemplateIdWithRoadshowDeleteNotice = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450" //路演->研究员收到活动删除通知
+		WxMsgTemplateIdWithRoadshowPending = "1JG9fvKx9o9B-wkZe_gBFQQzMBnp07-hvpZI9QiFcKQ"         //路演->研究员收到待处理的申请
+		WxMsgTemplateIdWithRoadshowDetailResult = "D6AFTJ7CbDDFBYg1R-HRir5bBXkIqGrwUtb2bjN-Wr4"    //路演->销售收到处理结果
+		WxMsgTemplateIdWithRoadshowDeleteNotice = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450"    //路演->研究员收到活动删除通知
+		WxMsgTemplateIdWithRoadshowActivityPending = "f1bVCs2kaZsFB3S16El-gBcce3mqoUJzVeS03krtW-Q" //路演->销售收到添加成功与删除通知
 
 		WxMsgTemplateIdWithSealApplyFinished = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450" // 用印申请-已签回通知
 
@@ -209,7 +211,7 @@ func wxConfig() {
 		//查研观向小助手原有的模板ID
 		{
 			WxMsgTemplateIdCompanyApprovalMessageRai = "JlGx2rKZKIsolvkQ1ZbGSBDNzIIJAaF1bbwcdLuJwQ8" //权益销售签约成功通知查研观向小助手模版消息-模板ID
-			WxMsgTemplateIdActivityChangeApply = "dYg6iHooRq74PyCXmw_Ns7qdJZmbtLoKS2p2FKeaXl0" //查研观向活动变更通知-模板ID
+			WxMsgTemplateIdActivityChangeApply = "dYg6iHooRq74PyCXmw_Ns7qdJZmbtLoKS2p2FKeaXl0"       //查研观向活动变更通知-模板ID
 		}
 
 		//内部员工公众号(弘则部门)
@@ -219,7 +221,6 @@ func wxConfig() {
 		SendWxTemplateMsgUrl = "http://127.0.0.1:8086/v1/wechat/send_template_msg"
 		SendWxCategoryTemplateMsgUrl = "http://127.0.0.1:8086/v1/wechat/send_category_template_msg"
 
-
 		// 类目模版
 		WxCategoryMsgTemplateIdApplyXzs = "HKD03oZfSv8LJgeoHz0pynai3G2Ls4h8zZ6BfOpZmIA"
 		WxCategoryMsgTemplateIdActivitySign = "11rITVC5Gl8qwetxl92NqY887Uk14kg3nPtEA_i_zLo"
@@ -238,9 +239,10 @@ func wxConfig() {
 		TemplateCompanyApplyRedirectUrl = "http://advisoryadmin.brilliantstart.cn/approval/approval/list"
 
 		//路演
-		WxMsgTemplateIdWithRoadshowPending = "1JG9fvKx9o9B-wkZe_gBFQQzMBnp07-hvpZI9QiFcKQ"      //路演->研究员收到待处理的申请
-		WxMsgTemplateIdWithRoadshowDetailResult = "D6AFTJ7CbDDFBYg1R-HRir5bBXkIqGrwUtb2bjN-Wr4" //路演->销售收到处理结果
-		WxMsgTemplateIdWithRoadshowDeleteNotice = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450" //路演->研究员收到活动删除通知
+		WxMsgTemplateIdWithRoadshowPending = "1JG9fvKx9o9B-wkZe_gBFQQzMBnp07-hvpZI9QiFcKQ"         //路演->研究员收到待处理的申请
+		WxMsgTemplateIdWithRoadshowDetailResult = "D6AFTJ7CbDDFBYg1R-HRir5bBXkIqGrwUtb2bjN-Wr4"    //路演->销售收到处理结果
+		WxMsgTemplateIdWithRoadshowDeleteNotice = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450"    //路演->研究员收到活动删除通知
+		WxMsgTemplateIdWithRoadshowActivityPending = "f1bVCs2kaZsFB3S16El-gBcce3mqoUJzVeS03krtW-Q" //路演->销售收到添加成功与删除通知
 
 		WxMsgTemplateIdWithSealApplyFinished = "rciDm9ThigRBGi1SZ4TFd74XA4aoAxSz_ugdv_tZ450" // 用印申请-已签回通知
 
@@ -250,7 +252,7 @@ func wxConfig() {
 		//查研观向小助手原有的模板ID
 		{
 			WxMsgTemplateIdCompanyApprovalMessageRai = "RcV2uM5nFSiUtOHsq4SdYz2Fhk-OVfg5rutWz2IsSJQ" //权益销售签约成功通知查研观向小助手模版消息-模板ID
-			WxMsgTemplateIdActivityChangeApply = "CB7bOl7f3viMG4s1uhRo7WM0Jbx3WvodKuIZ8A_z8fM" //查研观向活动变更通知-模板ID
+			WxMsgTemplateIdActivityChangeApply = "CB7bOl7f3viMG4s1uhRo7WM0Jbx3WvodKuIZ8A_z8fM"       //查研观向活动变更通知-模板ID
 		}
 
 		//测试内部员工公众号(弘则科技)

+ 7 - 2
utils/constants.go

@@ -171,9 +171,9 @@ const (
 	ZHI_ZAO_NAME                     string = "智造"
 	CHART_PERMISSION_NAME_MF_YANXUAN string = "研选订阅"
 	ZHUAN_JIA_ID                     int    = 29
-	CHART_PERMISSION_NAME_70W               = "70w大套餐"                // 权益70w大套餐名称
+	CHART_PERMISSION_NAME_70W               = "70w大套餐"                   // 权益70w大套餐名称
 	CHART_PERMISSION_ID_70W                 = 2001                       // 权益70w大套餐表示的权限ID(自定义)
-	CHART_PERMISSION_NAME_45W               = "45w大套餐"                // 权益45w大套餐名称
+	CHART_PERMISSION_NAME_45W               = "45w大套餐"                   // 权益45w大套餐名称
 	CHART_PERMISSION_ID_45W                 = 2002                       // 权益45w大套餐表示的权限ID(自定义)
 	TPL_MSG_WANG_YANG                       = "tpl_msg_wang_yang"        //汪洋手机号地址参数
 	TPL_MSG_YANXAUN_APPROVAL                = "tpl_msg_yanxaun_approval" // 【研选订阅】和【研选扣点包】转正/续约审批通过后,给冯柯然和汪洋和沈涛发送模板消息
@@ -186,3 +186,8 @@ const (
 const (
 	ApproveUserId = 9 //戚明之-出差审批人
 )
+
+// 随手办公小程序 模版消息路由
+const (
+	WX_MSG_PATH_SSBG_SELLER_ACTIVITY_DETAIL = "/pages-approve/activity/ficcActivityDetail?TemplateMsg=true&RsActivityId=" //随手办公小程序,销售添加活动详情
+)