Browse Source

Merge branch 'master' of http://8.136.199.33:3000/hongze/hongze_cygx into cygx_9.3.1_0

xingzai 2 năm trước cách đây
mục cha
commit
68ae86f549

+ 1 - 1
controllers/activity.go

@@ -2053,7 +2053,7 @@ func (this *ActivityCoAntroller) ActivityListNew() {
 	}
 	//搜索关键词初始化
 	conditionActivityKey, err := services.GetActivityonditionList(user, activityTypeId, chartPermissionIds, whichDay, activeState, label, 0, source, keyWord, playBack, 1)
-	if err != nil {
+	if err != nil && err.Error() != utils.ErrNoRow() {
 		br.Msg = "获取失败"
 		br.ErrMsg = "获取失败,Err:" + err.Error()
 		return

+ 15 - 6
services/activity_special.go

@@ -440,10 +440,13 @@ state 进行状态 1:未开始,2:进行中,3:已结束,4:未开始、
 */
 func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, pageSize, state int, keywords string) (list []*models.CygxActivitySpecialDetail, totalConfirm int, err error) {
 	companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
-	if e != nil {
+	if e != nil && e.Error() != utils.ErrNoRow() {
 		err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
 		return
 	}
+	if companyDetail == nil {
+		return
+	}
 	//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
 	var condition string
 	var conditionUser string
@@ -604,8 +607,11 @@ func GetSpecialTripUserSchedule(userId int) (total int, err error) {
 // GetActivitySpecialList 获取专项调研列表
 func GetActivitySpecialList(user *models.WxUserItem, currentIndex, pageSize int, keywords string) (list []*models.CygxActivitySpecialDetail, total int, err error) {
 	listConfirm, totalConfirm, e := GetActivityLabelSpecialConfirmList(user, (currentIndex-1)*pageSize, pageSize, 4, keywords)
-	if e != nil {
-		err = errors.New("GetActivityLabelSpecialConfirmList, Err: " + e.Error())
+	if e != nil && e.Error() != utils.ErrNoRow() {
+		err = errors.New("GetActivityLabelSpecialConfirmList11, Err: " + e.Error())
+		return
+	}
+	if totalConfirm == 0 {
 		return
 	}
 	if currentIndex == 1 && len(listConfirm) > 0 {
@@ -849,10 +855,13 @@ func GetActivitySpecialUserType(companyId int) (userType int, permissionStrnew s
 func GetSpecialUserType(user *models.WxUserItem) (userType int, err error) {
 	companyId := user.CompanyId
 	companyDetail, e := models.GetCompanyDetailByIdGroupTrip(companyId)
-	if e != nil {
+	if e != nil && e.Error() != utils.ErrNoRow() {
 		err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
 		return
 	}
+	if companyDetail == nil {
+		return
+	}
 	if companyId <= 1 {
 		userType = 0
 	} else {
@@ -1087,7 +1096,7 @@ func SendWxMsgActivitySpecialTwoDays(cont context.Context) (err error) {
 			keyword4 = v.City
 		}
 		remark := "点击查看活动详情"
-		SendWxMsgWithFrequency(first, keyword1, keyword2, keyword3, keyword4, remark, openIdList, v.ActivityId)
+		SendWxMsgWithFrequencySpecial(first, keyword1, keyword2, keyword3, keyword4, remark, openIdList, v.ActivityId)
 
 		//活动开始前两天08:00,提醒报名客户的对口销售
 		companyIdsLen := len(companyIds)
@@ -1125,7 +1134,7 @@ func SendWxMsgActivitySpecialTwoDays(cont context.Context) (err error) {
 				keyword2 = vM
 				openIdList = make([]*models.OpenIdList, 0)
 				openIdList = append(openIdList, &models.OpenIdList{OpenId: mapSllerOpenid[k]})
-				SendWxMsgWithFrequency(first, keyword1, keyword2, keyword3, keyword4, remark, openIdList, v.ActivityId)
+				SendWxMsgWithFrequencySpecial(first, keyword1, keyword2, keyword3, keyword4, remark, openIdList, v.ActivityId)
 			}
 		}
 	}

+ 1 - 0
services/resource_data.go

@@ -150,6 +150,7 @@ func GetResourceDataList(condition string, pars []interface{}, startSize, pageSi
 					imgUrlResp = mapChart[v.ChartPermissionName]
 				}
 			}
+			v.SourceType = 1
 			mapItems[fmt.Sprint("activity", v.ActivityId)].Activity = v
 		}
 	}

+ 37 - 30
services/wx_template_msg.go

@@ -13,6 +13,7 @@ import (
 	"time"
 )
 
+// 活动预开始模版消息通知
 func SendWxMsgWithFrequency(first, activityName, reserveResults, activityTime, activityAddress, remark string, openIdList []*models.OpenIdList, activityId int) (err error) {
 	var msg string
 	defer func() {
@@ -51,6 +52,42 @@ func SendWxMsgWithFrequency(first, activityName, reserveResults, activityTime, a
 	return
 }
 
+// 专项调研活动预开始消息通知
+func SendWxMsgWithFrequencySpecial(first, activityName, reserveResults, activityTime, activityAddress, remark string, openIdList []*models.OpenIdList, activityId int) (err error) {
+	var msg string
+	defer func() {
+		if err != nil {
+			go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
+			utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
+		}
+	}()
+	accessToken, err := models.GetWxAccessTokenByXzs()
+	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
+	templateId := utils.WxMsgTemplateIdActivityApplyXzs
+	sendMap := make(map[string]interface{})
+	sendData := make(map[string]interface{})
+	sendMap["template_id"] = templateId
+	sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": utils.WX_MSG_PATH_ACTIVITY_SPECIAL_DETAIL + strconv.Itoa(activityId)}
+	sendData["first"] = map[string]interface{}{"value": first, "color": "#173177"}
+	sendData["activity_name"] = map[string]interface{}{"value": activityName, "color": "#173177"}
+	sendData["reserve_results"] = map[string]interface{}{"value": reserveResults, "color": "#173177"}
+	sendData["activity_time"] = map[string]interface{}{"value": activityTime, "color": "#173177"}
+	sendData["activity_address"] = map[string]interface{}{"value": activityAddress, "color": "#173177"}
+	sendData["remark"] = map[string]interface{}{"value": remark, "color": "#173177"}
+	sendMap["data"] = sendData
+	WxSendTemplateMsg(sendUrl, sendMap, openIdList, strconv.Itoa(activityId), utils.TEMPLATE_MSG_CYGX_ACTIVITY_ADD)
+	return
+}
+
 // 发送报告提问消息提醒
 func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.OpenIdList, articleId int) (err error) {
 	var msg string
@@ -62,17 +99,6 @@ func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.
 		}
 		fmt.Println("line 21", err, msg)
 	}()
-	//utils.FileLog.Info("%s", "services SendMsg")
-	////accessToken, err := models.GetWxAccessToken()
-	//accessToken, err := models.GetWxAccessTokenByXzs()
-	//if err != nil {
-	//	msg = "GetWxAccessToken Err:" + err.Error()
-	//	return
-	//}
-	//if accessToken == "" {
-	//	msg = "accessToken is empty"
-	//	return
-	//}
 	var first string
 	var keyword1 string
 	var keyword2 string
@@ -85,23 +111,6 @@ func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.
 	keyword2 = ""
 	keyword4 = askMsg
 	remark = title
-	//sendUrl := "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken
-	////templateId := utils.WxMsgTemplateIdAskMsg
-	//templateId := utils.WxMsgTemplateIdAskMsgXzs
-	//sendMap := make(map[string]interface{})
-	//sendData := make(map[string]interface{})
-	//sendMap["template_id"] = templateId
-	//sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": "pageMy/reportDetail/reportDetail?id=" + strconv.Itoa(articleId)}
-	////sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "path": "article/detail?ArticleId=1000001"}
-	//sendData["first"] = map[string]interface{}{"value": first, "color": "#173177"}
-	//sendData["keyword1"] = map[string]interface{}{"value": keyword1, "color": "#173177"}
-	//sendData["keyword2"] = map[string]interface{}{"value": "", "color": "#173177"}
-	//sendData["keyword3"] = map[string]interface{}{"value": keyword3, "color": "#173177"}
-	//sendData["keyword4"] = map[string]interface{}{"value": keyword4, "color": "#173177"}
-	//sendData["remark"] = map[string]interface{}{"value": remark, "color": "#173177"}
-	//sendMap["data"] = sendData
-	//WxSendTemplateMsg(sendUrl, sendMap, openIdList, strconv.Itoa(articleId), utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD)
-
 	openIdArr := make([]string, 0)
 	for _, v := range openIdList {
 		openIdArr = append(openIdArr, v.OpenId)
@@ -137,8 +146,6 @@ func SendWxMsgWithCompanyRemind(first, keyword1, keyword2, remark string, openId
 			utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
 		}
 	}()
-
-	utils.FileLog.Info("%s", "services SendMsg")
 	accessToken, err := models.GetWxAccessToken()
 	if err != nil {
 		msg = "GetWxAccessToken Err:" + err.Error()