Browse Source

Merge branch 'cygx_4.6' of http://8.136.199.33:3000/hongze/hongze_cygx

xingzai 3 years ago
parent
commit
812471361d
6 changed files with 276 additions and 165 deletions
  1. 57 12
      controllers/activity.go
  2. 5 2
      models/activity.go
  3. 1 0
      models/user_record.go
  4. 204 145
      services/activity.go
  5. 6 6
      services/task.go
  6. 3 0
      utils/config.go

+ 57 - 12
controllers/activity.go

@@ -2059,18 +2059,18 @@ func (this *ActivityCoAntroller) AskAdd() {
 		br.ErrMsg = "操作失败,Err:" + errInfo.Error()
 		return
 	}
-	resultTime := utils.StrTimeToTime(activityInfo.ActivityTime) //时间字符串格式转时间格式
-	if activityInfo.ActivityTypeId == 1 && activityInfo.ChartPermissionId != 31 {
-		if time.Now().After(resultTime.Add(-time.Minute * 15)) {
-			br.Msg = "活动开始前15分钟内无法提交问题"
-			return
-		}
-	} else {
-		if time.Now().After(resultTime.Add(-time.Minute * 60)) {
-			br.Msg = "活动开始前1小时内无法提交问题"
-			return
-		}
-	}
+	//resultTime := utils.StrTimeToTime(activityInfo.ActivityTime) //时间字符串格式转时间格式
+	//if activityInfo.ActivityTypeId == 1 && activityInfo.ChartPermissionId != 31 {
+	//	if time.Now().After(resultTime.Add(-time.Minute * 15)) {
+	//		br.Msg = "活动开始前15分钟内无法提交问题"
+	//		return
+	//	}
+	//} else {
+	//	if time.Now().After(resultTime.Add(-time.Minute * 60)) {
+	//		br.Msg = "活动开始前1小时内无法提交问题"
+	//		return
+	//	}
+	//}
 	companyDetail, err := models.GetCompanyDetailById(user.CompanyId)
 	if err != nil {
 		br.Msg = "提交失败!"
@@ -2097,6 +2097,51 @@ func (this *ActivityCoAntroller) AskAdd() {
 		br.ErrMsg = "提交带问失败,Err:" + err.Error()
 		return
 	}
+
+	var isSendMsg bool
+	resultTime := utils.StrTimeToTime(activityInfo.ActivityTime) //时间字符串格式转时间格式
+	if activityInfo.ActivityTypeId == 1 && activityInfo.ChartPermissionId != 31 {
+		if time.Now().After(resultTime.Add(-time.Minute * 15)) {
+			isSendMsg = true
+		}
+	} else {
+		if time.Now().After(resultTime.Add(-time.Minute * 60)) {
+			isSendMsg = true
+		}
+	}
+	if isSendMsg {
+		listEmail, err := models.GetAskEmail()
+		if err != nil {
+			br.Msg = "提交失败"
+			br.ErrMsg = "提交带问失败,Err:" + err.Error()
+			return
+		}
+		var sendMobile string
+		for _, v := range listEmail {
+			if strings.Index(activityInfo.Host, v.Name) > 0 {
+				sendMobile = v.Mobile
+			}
+		}
+		if activityInfo.ChartPermissionId == 31 {
+			sendMobile = utils.ActSendMsgMobile
+		}
+		if sendMobile != "" {
+			openIpItem, _ := models.GetUserRecordByMobile(4, sendMobile)
+			if openIpItem != nil && openIpItem.OpenId != "" {
+				//获取销售信息
+				sellerItem, err := models.GetSellerByCompanyIdCheckFicc(user.CompanyId, 2)
+				if err != nil && err.Error() != utils.ErrNoRow() {
+					br.Msg = "提交失败"
+					br.ErrMsg = "获取销售信息失败,Err:" + err.Error()
+					return
+				}
+				if sellerItem != nil {
+					services.SendActivityAskApplyTemplateMsg(user.RealName+"——"+user.CompanyName+"(所属销售:"+sellerItem.RoleName+")", time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem.OpenId, activityInfo.ActivityId)
+				}
+			}
+		}
+	}
+
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "提交成功"

+ 5 - 2
models/activity.go

@@ -429,8 +429,10 @@ type SignupExportRep struct {
 }
 
 type ActivityMsgExportRep struct {
+	UserId      int    `description:"用户ID"`
 	RealName    string `description:"姓名"`
 	CompanyName string `description:"公司名称"`
+	CompanyId   int    `description:"公司ID"`
 	Content     string `description:"内容"`
 	CreateTime  string `description:"提交时间"`
 }
@@ -546,8 +548,9 @@ func UPdateActivityMsgToSendFile(activityId int) (err error) {
 }
 
 type AskEmailRep struct {
-	Name  string `description:"姓名"`
-	Email string `description:"邮箱"`
+	Name   string `description:"姓名"`
+	Email  string `description:"邮箱"`
+	Mobile string `description:"手机号"`
 }
 
 func GetAskEmail() (item []*AskEmailRep, err error) {

+ 1 - 0
models/user_record.go

@@ -113,6 +113,7 @@ func GetUserRecordByMobile(platform int, bindAccount string) (item *UserRecord,
 		platform = 1
 		sql = `SELECT open_id FROM	user_record  WHERE create_platform =? AND bind_account = ?`
 	}
+
 	err = orm.NewOrm().Raw(sql, platform, bindAccount).QueryRow(&item)
 	return
 }

+ 204 - 145
services/activity.go

@@ -407,7 +407,7 @@ func GetHavePower(activityInfo *models.ActivityDetail, permissionStr, companyDet
 //研选系列专家电话会,会前1小时将问题列表发送给邮箱
 func SendEmailFileForAskMsgResearch(cont context.Context) (err error) {
 	var msg string
-	var touser string
+	//var touser string
 	defer func() {
 		if err != nil {
 			fmt.Println("err:", err)
@@ -446,78 +446,29 @@ func SendEmailFileForAskMsgResearch(cont context.Context) (err error) {
 			msg = "获取失败,Err:" + errFile.Error()
 			return
 		}
-		//创建excel
-		dir, errFile := os.Executable()
-		exPath := filepath.Dir(dir)
-		downLoadnFilePath := exPath + "/" + time.Now().Format(utils.FormatDateTimeUnSpace) + utils.GetRandDigit(5) + ".xlsx"
-		xlsxFile := xlsx.NewFile()
-		if errFile != nil {
-			msg = "生成文件失败Err:" + errFile.Error()
-			return
-		}
-		style := xlsx.NewStyle()
-		alignment := xlsx.Alignment{
-			Horizontal: "center",
-			Vertical:   "center",
-			WrapText:   true,
-		}
-		style.Alignment = alignment
-		style.ApplyAlignment = true
-		sheet, errFile := xlsxFile.AddSheet("外呼名单")
-		if errFile != nil {
-			msg = "新增Sheet失败,Err:" + errFile.Error()
-			return
-		}
-		//设置宽度
-		_ = sheet.SetColWidth(1, 1, 30)
-		_ = sheet.SetColWidth(2, 2, 60)
-		//标头
-		rowTitle := sheet.AddRow()
-		cellA := rowTitle.AddCell()
-		cellA.Value = "姓名"
-		cellB := rowTitle.AddCell()
-		cellB.Value = "公司名称"
-		cellC := rowTitle.AddCell()
-		cellC.Value = "问题"
-		cellD := rowTitle.AddCell()
-		cellD.Value = "提交时间"
 
-		for _, item := range list {
-			row := sheet.AddRow()
-			cellA := row.AddCell()
-			cellA.Value = item.RealName
-			cellB := row.AddCell()
-			cellB.Value = item.CompanyName
-			cellC := row.AddCell()
-			cellC.Value = item.Content
-			cellD := row.AddCell()
-			cellD.Value = item.CreateTime
+		for _, v2 := range list {
+			user, err := models.GetUserDetailByUserId(v2.UserId)
+			if err != nil && err.Error() != utils.ErrNoRow() {
+				return err
+			}
+			openIpItem, _ := models.GetUserRecordByMobile(4, utils.ActSendMsgMobile)
+			if openIpItem != nil && openIpItem.OpenId != "" {
+				//获取销售信息
+				sellerItem, err := models.GetSellerByCompanyIdCheckFicc(v2.CompanyId, 2)
+				if err != nil && err.Error() != utils.ErrNoRow() {
+					return err
+				}
+				if sellerItem != nil {
+					SendActivityAskApplyTemplateMsg(user.RealName+"——"+user.CompanyName+"(所属销售:"+sellerItem.RoleName+")", time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem.OpenId, activityInfo.ActivityId)
+				}
+			}
 		}
-		errFile = xlsxFile.Save(downLoadnFilePath)
+		errFile = models.UPdateActivityMsgToSendFile(v.ActivityId)
 		if errFile != nil {
-			msg = "保存文件失败Err:" + errFile.Error()
+			msg = "获取失败,Err:" + errFile.Error()
 			return
 		}
-		title := activityInfo.ActivityName + "-活动带问"
-		content := "活动带问详情"
-		fileName := downLoadnFilePath
-		if utils.RunMode == "release" {
-			touser = "cxzhang@hzinsights.com;ywang@hzinsights.com;tshen@hzinsights.com"
-		} else {
-			touser = "cxzhang@hzinsights.com;jhwang@hzinsights.com;tshen@hzinsights.com"
-		}
-		sendResult := utils.SendEmailByHongze(title, content, touser, fileName, title+".xlsx")
-		if sendResult {
-			errFile = models.UPdateActivityMsgToSendFile(v.ActivityId)
-			if errFile != nil {
-				msg = "获取失败,Err:" + errFile.Error()
-				return
-			}
-			os.Remove(downLoadnFilePath)
-		} else {
-			go utils.SendEmail("发送附件模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format(utils.RunMode), msg+";Err:"+activityInfo.ActivityName, utils.EmailSendToUsers)
-			utils.FileLog.Info("发送附件模版消息失败,Err:%s", activityInfo.ActivityName)
-		}
 	}
 	return
 }
@@ -525,7 +476,7 @@ func SendEmailFileForAskMsgResearch(cont context.Context) (err error) {
 //非研选系列专家电话会,根据主持人姓名,会前15分钟将问题列表发送给至该主持人对应邮箱
 func SendEmailFileForAskMsg(cont context.Context) (err error) {
 	var msg string
-	var touser string
+	//var touser string
 	defer func() {
 		if err != nil {
 			go utils.SendEmail("发送附件模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format(utils.FormatDateTime), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
@@ -556,6 +507,100 @@ func SendEmailFileForAskMsg(cont context.Context) (err error) {
 		msg = "获取失败,Err:" + errEmail.Error()
 		return
 	}
+	//for _, v := range listActivity {
+	//	activityInfo, _ := models.GetAddActivityInfoById(v.ActivityId)
+	//	if activityInfo == nil {
+	//		msg = "活动不存在,Err:activityId:" + strconv.Itoa(v.ActivityId)
+	//		return
+	//	}
+	//	list, errFile := models.GetActivityMsgExport(v.ActivityId)
+	//	if errFile != nil {
+	//		msg = "获取失败,Err:" + errFile.Error()
+	//		return
+	//	}
+	//	for _, v := range listEmail {
+	//		if strings.Index(activityInfo.Host, v.Name) > 0 {
+	//			touser += v.Email + ";"
+	//		}
+	//	}
+	//	if touser == "" {
+	//		msg = "没有对应的邮箱"
+	//		return
+	//	}
+	//	if utils.RunMode == "release" {
+	//		touser += "tshen@hzinsights.com;cxzhang@hzinsights.com"
+	//	} else {
+	//		touser = "tshen@hzinsights.com;cxzhang@hzinsights.com"
+	//	}
+	//
+	//	//创建excel
+	//	dir, errFile := os.Executable()
+	//	exPath := filepath.Dir(dir)
+	//	downLoadnFilePath := exPath + "/" + time.Now().Format(utils.FormatDateTimeUnSpace) + utils.GetRandDigit(5) + ".xlsx"
+	//	xlsxFile := xlsx.NewFile()
+	//	if errFile != nil {
+	//		msg = "生成文件失败Err:" + errFile.Error()
+	//		return
+	//	}
+	//	style := xlsx.NewStyle()
+	//	alignment := xlsx.Alignment{
+	//		Horizontal: "center",
+	//		Vertical:   "center",
+	//		WrapText:   true,
+	//	}
+	//	style.Alignment = alignment
+	//	style.ApplyAlignment = true
+	//	sheet, errFile := xlsxFile.AddSheet("外呼名单")
+	//	if errFile != nil {
+	//		msg = "新增Sheet失败,Err:" + errFile.Error()
+	//		return
+	//	}
+	//	//设置宽度
+	//	_ = sheet.SetColWidth(1, 1, 30)
+	//	_ = sheet.SetColWidth(2, 2, 60)
+	//	//标头
+	//	rowTitle := sheet.AddRow()
+	//	cellA := rowTitle.AddCell()
+	//	cellA.Value = "姓名"
+	//	cellB := rowTitle.AddCell()
+	//	cellB.Value = "公司名称"
+	//	cellC := rowTitle.AddCell()
+	//	cellC.Value = "问题"
+	//	cellD := rowTitle.AddCell()
+	//	cellD.Value = "提交时间"
+	//	for _, item := range list {
+	//		row := sheet.AddRow()
+	//		cellA := row.AddCell()
+	//		cellA.Value = item.RealName
+	//		cellB := row.AddCell()
+	//		cellB.Value = item.CompanyName
+	//		cellC := row.AddCell()
+	//		cellC.Value = item.Content
+	//		cellD := row.AddCell()
+	//		cellD.Value = item.CreateTime
+	//	}
+	//	errFile = xlsxFile.Save(downLoadnFilePath)
+	//	if errFile != nil {
+	//		msg = "保存文件失败Err:" + errFile.Error()
+	//		return
+	//	}
+	//	title := activityInfo.ActivityName + "-活动带问"
+	//	content := "活动带问详情"
+	//	fileName := downLoadnFilePath
+	//	sendResult := utils.SendEmailByHongze(title, content, touser, fileName, title+".xlsx")
+	//	if sendResult {
+	//		errFile = models.UPdateActivityMsgToSendFile(v.ActivityId)
+	//		if errFile != nil {
+	//			msg = "获取失败,Err:" + errFile.Error()
+	//			return
+	//		}
+	//		os.Remove(downLoadnFilePath)
+	//	} else {
+	//		go utils.SendEmail("发送附件模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format(utils.FormatDateTime), msg+";Err:"+activityInfo.ActivityName, utils.EmailSendToUsers)
+	//		utils.FileLog.Info("发送附件模版消息失败,Err:%s", activityInfo.ActivityName)
+	//	}
+	//}
+
 	for _, v := range listActivity {
 		activityInfo, _ := models.GetAddActivityInfoById(v.ActivityId)
 		if activityInfo == nil {
@@ -567,87 +612,35 @@ func SendEmailFileForAskMsg(cont context.Context) (err error) {
 			msg = "获取失败,Err:" + errFile.Error()
 			return
 		}
-		for _, v := range listEmail {
-			if strings.Index(activityInfo.Host, v.Name) > 0 {
-				touser += v.Email + ";"
-			}
-		}
-		if touser == "" {
-			msg = "没有对应的邮箱"
-			return
-		}
-		if utils.RunMode == "release" {
-			touser += "tshen@hzinsights.com;cxzhang@hzinsights.com"
-		} else {
-			touser = "tshen@hzinsights.com;cxzhang@hzinsights.com"
-		}
 
-		//创建excel
-		dir, errFile := os.Executable()
-		exPath := filepath.Dir(dir)
-		downLoadnFilePath := exPath + "/" + time.Now().Format(utils.FormatDateTimeUnSpace) + utils.GetRandDigit(5) + ".xlsx"
-		xlsxFile := xlsx.NewFile()
-		if errFile != nil {
-			msg = "生成文件失败Err:" + errFile.Error()
-			return
-		}
-		style := xlsx.NewStyle()
-		alignment := xlsx.Alignment{
-			Horizontal: "center",
-			Vertical:   "center",
-			WrapText:   true,
-		}
-		style.Alignment = alignment
-		style.ApplyAlignment = true
-		sheet, errFile := xlsxFile.AddSheet("外呼名单")
-		if errFile != nil {
-			msg = "新增Sheet失败,Err:" + errFile.Error()
-			return
-		}
-		//设置宽度
-		_ = sheet.SetColWidth(1, 1, 30)
-		_ = sheet.SetColWidth(2, 2, 60)
-		//标头
-		rowTitle := sheet.AddRow()
-		cellA := rowTitle.AddCell()
-		cellA.Value = "姓名"
-		cellB := rowTitle.AddCell()
-		cellB.Value = "公司名称"
-		cellC := rowTitle.AddCell()
-		cellC.Value = "问题"
-		cellD := rowTitle.AddCell()
-		cellD.Value = "提交时间"
-		for _, item := range list {
-			row := sheet.AddRow()
-			cellA := row.AddCell()
-			cellA.Value = item.RealName
-			cellB := row.AddCell()
-			cellB.Value = item.CompanyName
-			cellC := row.AddCell()
-			cellC.Value = item.Content
-			cellD := row.AddCell()
-			cellD.Value = item.CreateTime
+		for _, v2 := range list {
+			user, err := models.GetUserDetailByUserId(v2.UserId)
+			if err != nil && err.Error() != utils.ErrNoRow() {
+				return err
+			}
+			var sendMobile string
+			for _, vEmail := range listEmail {
+				if strings.Index(activityInfo.Host, vEmail.Name) > 0 {
+					sendMobile = vEmail.Mobile
+				}
+			}
+			openIpItem, _ := models.GetUserRecordByMobile(4, sendMobile)
+			if openIpItem != nil && openIpItem.OpenId != "" {
+				//获取销售信息
+				sellerItem, err := models.GetSellerByCompanyIdCheckFicc(v2.CompanyId, 2)
+				if err != nil && err.Error() != utils.ErrNoRow() {
+					return err
+				}
+				if sellerItem != nil {
+					SendActivityAskApplyTemplateMsg(user.RealName+"——"+user.CompanyName+"(所属销售:"+sellerItem.RoleName+")", time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem.OpenId, activityInfo.ActivityId)
+				}
+			}
 		}
-		errFile = xlsxFile.Save(downLoadnFilePath)
+		errFile = models.UPdateActivityMsgToSendFile(v.ActivityId)
 		if errFile != nil {
-			msg = "保存文件失败Err:" + errFile.Error()
+			msg = "获取失败,Err:" + errFile.Error()
 			return
 		}
-		title := activityInfo.ActivityName + "-活动带问"
-		content := "活动带问详情"
-		fileName := downLoadnFilePath
-		sendResult := utils.SendEmailByHongze(title, content, touser, fileName, title+".xlsx")
-		if sendResult {
-			errFile = models.UPdateActivityMsgToSendFile(v.ActivityId)
-			if errFile != nil {
-				msg = "获取失败,Err:" + errFile.Error()
-				return
-			}
-			os.Remove(downLoadnFilePath)
-		} else {
-			go utils.SendEmail("发送附件模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format(utils.FormatDateTime), msg+";Err:"+activityInfo.ActivityName, utils.EmailSendToUsers)
-			utils.FileLog.Info("发送附件模版消息失败,Err:%s", activityInfo.ActivityName)
-		}
 	}
 	return
 }
@@ -881,3 +874,69 @@ func AddCygxActivityRestrictSignupByAdmin(activityId int) (err error) {
 	}
 	return
 }
+
+//活动带问提醒
+func SendActivityAskApplyTemplateMsg(applyName, applyTime, askContent, activityName, openId string, activityId int) (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)
+		}
+		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
+		}
+	}
+
+	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["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, openId, sendMap)
+	fmt.Println("send end")
+	return
+}

+ 6 - 6
services/task.go

@@ -31,12 +31,6 @@ func Task() {
 		sendEmailFileToExpert := task.NewTask("sendEmailFileToExpert", "0 */5 8-22 * * *", SendEmailFileToExpert) //预约外呼名单,会前1小时自动发送邮件给专家组
 		task.AddTask("sendEmailFileToExpert", sendEmailFileToExpert)
 
-		sendEmailFileForAskMsgResearch := task.NewTask("sendEmailFileForAskMsgResearch", "0 */5 8-22 * * *", SendEmailFileForAskMsgResearch) //研选系列专家电话会,会前1小时将问题列表发送给邮箱
-		task.AddTask("sendEmailFileForAskMsgResearch", sendEmailFileForAskMsgResearch)
-
-		sendEmailFileForAskMsg := task.NewTask("sendEmailFileForAskMsg", "0 */5 8-22 * * *", SendEmailFileForAskMsg) //非研选系列专家电话会,根据主持人姓名,会前15分钟将问题列表发送给至该主持人对应邮箱
-		task.AddTask("sendEmailFileForAskMsg", sendEmailFileForAskMsg)
-
 		sendEmailUserWhiteListChange := task.NewTask("sendEmailUserWhiteListChange", "0 00 17 * * *", SendEmailUserWhiteListChange) //新增 和冻结的客户白名单
 		task.AddTask("白名单发送", sendEmailUserWhiteListChange)
 	}
@@ -55,6 +49,12 @@ func Task() {
 		task.AddTask("chageIndustrialArticleNum", chageIndustrialArticleNum)
 		activityAttendanceDetail := task.NewTask("activityAttendanceDetail", "0 00 3 * * *", ActivityAttendanceDetail) //同步进门财经的路演信息
 		task.AddTask("sendEmailUserWhiteListChange", activityAttendanceDetail)
+
+		sendEmailFileForAskMsgResearch := task.NewTask("sendEmailFileForAskMsgResearch", "0 */5 8-22 * * *", SendEmailFileForAskMsgResearch) //研选系列专家电话会,会前1小时将问题列表发送给邮箱
+		task.AddTask("sendEmailFileForAskMsgResearch", sendEmailFileForAskMsgResearch)
+
+		sendEmailFileForAskMsg := task.NewTask("sendEmailFileForAskMsg", "0 */5 8-22 * * *", SendEmailFileForAskMsg) //非研选系列专家电话会,根据主持人姓名,会前15分钟将问题列表发送给至该主持人对应邮箱
+		task.AddTask("sendEmailFileForAskMsg", sendEmailFileForAskMsg)
 	}
 
 	//ActivityAttendanceDetail()

+ 3 - 0
utils/config.go

@@ -63,6 +63,7 @@ var (
 	EmailExpert               string //研选行业专家邮箱
 	EmaiWhiteUserList         string //白名单邮箱
 	IsTask                    bool   //是否执行定时任务
+	ActSendMsgMobile          string //活动带问发送模板消息接收者的手机号
 )
 
 func init() {
@@ -132,6 +133,7 @@ func init() {
 		EmaiWhiteUserList = "tshen@hzinsights.com;cxzhang@hzinsights.com;yyli@hzinsights.com"                                            //白名单邮箱
 		WxMsgTemplateIdAskMsg = "PaoDanHGlt1kFw5q-4_ipJSwO3FyZpxSSNg4rwB7YCk"
 		WxMsgTemplateIdAskMsgMobile = ""
+		ActSendMsgMobile = "15618524605"
 
 	} else {
 		WxAppId = "wxcc32b61f96720d2f"
@@ -159,6 +161,7 @@ func init() {
 		EmaiWhiteUserList = "cxzhang@hzinsights.com"
 		WxMsgTemplateIdAskMsg = "qfNuops-sKrfIkbA7U97A7gSrX03mUpoEpJksRUdloo"
 		WxMsgTemplateIdAskMsgMobile = "15557270714,17634786714,18767183922,17516315016"
+		ActSendMsgMobile = "17634786714"
 	}
 
 	//查研观向小助手