Browse Source

Merge branch 'master' of http://8.136.199.33:3000/hongze/hongze_cygx into cygx_12.8

xingzai 1 year ago
parent
commit
8fa9eebc71
3 changed files with 139 additions and 85 deletions
  1. 46 41
      controllers/activity.go
  2. 4 4
      services/activity.go
  3. 89 40
      services/activity_special.go

+ 46 - 41
controllers/activity.go

@@ -1591,7 +1591,7 @@ func (this *ActivityCoAntroller) AskAdd() {
 			openIpItem, _ := models.GetUserRecordByMobile(4, sendMobile)
 			if openIpItem != nil && openIpItem.OpenId != "" {
 				if sellerItem != nil {
-					services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo, int(msgId))
+					services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo, int(msgId))
 				}
 			}
 		}
@@ -1599,7 +1599,7 @@ func (this *ActivityCoAntroller) AskAdd() {
 		if sellerItem != nil {
 			openIpItem, _ := models.GetUserRecordByMobile(4, sellerItem.Mobile)
 			if openIpItem != nil && openIpItem.OpenId != "" {
-				services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo, int(msgId))
+				services.SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), req.Content, activityInfo.ActivityName, openIpItem, activityInfo, int(msgId))
 			}
 		}
 	}
@@ -2602,24 +2602,29 @@ func (this *ActivityCoAntroller) LabelTypeListV5() {
 	}
 	//研选互动不展示专项产业调研
 	if !isResearch {
+		conditionActivitySpecial := services.ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState)
 		//查询专项产业调研展示权限 仅对大套餐客户跟永续客户展示
-		if whichDay == "" {
-
-			speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
-			if err != nil {
-				br.Msg = "获取失败"
-				br.ErrMsg = "获取失败,Err:" + err.Error()
-				return
-			}
-			if leftPx > rightPx {
-				speciaItem.Position = 2
-			} else {
-				speciaItem.Position = 1
-			}
-			if len(speciaItem.List) > 0 {
-				itemsNew = append(itemsNew, speciaItem)
-			}
+		//if whichDay == "" {
+		//专项产业调研未开始状态不查询
+		if activeState == "1" {
+			activeState = ""
+		}
+		//speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
+		speciaItem, err := services.GetActivityLabelSpecialList(user, conditionActivitySpecial, activeState)
+		if err != nil {
+			br.Msg = "获取失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+		if leftPx > rightPx {
+			speciaItem.Position = 2
+		} else {
+			speciaItem.Position = 1
 		}
+		if len(speciaItem.List) > 0 {
+			itemsNew = append(itemsNew, speciaItem)
+		}
+		//}
 	}
 	//记录用户搜索的筛选条件
 	item := new(models.CygxActivitySearchHistory)
@@ -3403,29 +3408,29 @@ func (this *ActivityCoAntroller) LabelTypeListV6Pc() {
 		list[k].Resource = 1
 	}
 
-	if whichDay == "" {
-		//查询专项产业调研展示权限
-		//var scale string
-		//if companyProduct != nil {
-		//	scale = companyProduct.Scale
-		//}
-		speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
-		if err != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = "获取失败,Err:" + err.Error()
-			return
-		}
-		if len(speciaItem.List) > 0 {
-			itemList := new(models.ActivityTypeHomePc)
-			itemList.ActivityTypeName = "专项产业调研"
-			itemList.Resource = 2
-			itemList.List = speciaItem.List
-			itemList.ActivityTypeId = 7
-			itemList.OnlineIco = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/0H4md6VgZMuIttggMUnJxgrlayxC.png"
-			itemList.ImgUrlBgPc = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/rFwAM1c4fIMJM0EGoUkUYl25XH9L.png"
-			list = append(list, itemList)
-		}
-	}
+	//if whichDay == "" {
+	//	//查询专项产业调研展示权限
+	//	//var scale string
+	//	//if companyProduct != nil {
+	//	//	scale = companyProduct.Scale
+	//	//}
+	//	speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
+	//	if err != nil {
+	//		br.Msg = "获取失败"
+	//		br.ErrMsg = "获取失败,Err:" + err.Error()
+	//		return
+	//	}
+	//	if len(speciaItem.List) > 0 {
+	//		itemList := new(models.ActivityTypeHomePc)
+	//		itemList.ActivityTypeName = "专项产业调研"
+	//		itemList.Resource = 2
+	//		itemList.List = speciaItem.List
+	//		itemList.ActivityTypeId = 7
+	//		itemList.OnlineIco = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/0H4md6VgZMuIttggMUnJxgrlayxC.png"
+	//		itemList.ImgUrlBgPc = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/rFwAM1c4fIMJM0EGoUkUYl25XH9L.png"
+	//		list = append(list, itemList)
+	//	}
+	//}
 	// 查研观向7.4-活动【新】标签
 	activityIds := make([]int, 0)
 	for _, v := range list {

+ 4 - 4
services/activity.go

@@ -1418,14 +1418,14 @@ func SendEmailFileForAskMsgResearch(cont context.Context) (err error) {
 			if sellerItem != nil {
 				openIpItem, _ := models.GetUserRecordByMobile(4, cnf.ConfigValue)
 				if openIpItem != nil && openIpItem.OpenId != "" {
-					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
+					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
 				}
 			}
 			//给所属销售推送消息
 			if sellerItem != nil {
 				openIpItem, _ := models.GetUserRecordByMobile(4, sellerItem.Mobile)
 				if openIpItem != nil && openIpItem.OpenId != "" {
-					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
+					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
 				}
 			}
 		}
@@ -1508,7 +1508,7 @@ func SendEmailFileForAskMsg(cont context.Context) (err error) {
 				if openIpItem != nil && openIpItem.OpenId != "" {
 					//SendActivityAskApplyTemplateMsg(user.RealName+"——"+user.CompanyName+"(所属销售:"+sellerItem.RealName+")", v2.CreateTime, v2.Content, activityInfo.ActivityName, activityInfo.ActivityId, openIpItem)
 					//SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo)
-					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
+					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
 				}
 			}
 			//给销售推送模板消息
@@ -1517,7 +1517,7 @@ func SendEmailFileForAskMsg(cont context.Context) (err error) {
 				if openIpItem != nil && openIpItem.OpenId != "" {
 					//SendActivityAskApplyTemplateMsg(user.RealName+"——"+user.CompanyName+"(所属销售:"+sellerItem.RealName+")", v2.CreateTime, v2.Content, activityInfo.ActivityName, activityInfo.ActivityId, openIpItem)
 					//SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName, "所属销售:"+sellerItem.RealName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo)
-					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "留言:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
+					SendActivityAskApplyTemplateMsgV2(user.RealName+"——"+user.CompanyName+"("+sellerItem.RealName+")", "提问:"+activityInfo.ActivityName, time.Now().Format(utils.FormatDateTime), v2.Content, activityInfo.ActivityName, openIpItem, activityInfo, v2.AskId)
 				}
 			}
 		}

+ 89 - 40
services/activity_special.go

@@ -11,9 +11,78 @@ import (
 	"time"
 )
 
-//func init() {
-//	UpdateCygxActivitySpecialSignupNum()
-//}
+func ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState string) (condition string) {
+
+	//行业名称
+	if len(chartPermissionIds) > 0 {
+		condition += ` AND art.chart_permission_id  IN (` + chartPermissionIds + `)`
+	}
+	if whichDay != "" {
+		var startDate string
+		var endDate string
+		if whichDay == "1" {
+			startDate = time.Now().Format(utils.FormatDate)
+			endDate = startDate
+		} else if whichDay == "2" {
+			startDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
+			endDate = startDate
+		} else if whichDay == "1,2" || whichDay == "2,1" {
+			startDate = time.Now().Format(utils.FormatDate)
+			endDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
+		} else if whichDay == "3" {
+			startDate = utils.GetNowWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "4" {
+			startDate = utils.GetLastWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetLastWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "5" {
+			startDate = utils.GetNowMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetNowMonthLastDay().Format(utils.FormatDate)
+		} else if whichDay == "6" {
+			startDate = utils.GetLastMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetLastMonthLastDay().Format(utils.FormatDate)
+		} else if whichDay == "3,4" || whichDay == "4,3" {
+			startDate = utils.GetLastWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "5,6" || whichDay == "6,5" {
+			startDate = utils.GetLastMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetNowMonthLastDay().Format(utils.FormatDate)
+		} else {
+			startDate = utils.GetNowWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		}
+		condition += `    AND art.activity_time >= ` + "'" + startDate + " 00:00:00'"
+		condition += ` AND art.activity_time <= ` + "'" + endDate + " 23:59:59'"
+	}
+
+	if activeState == "2" {
+		condition += ` AND art.days > 0  AND art.activity_time <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+		condition += ` AND art.activity_time_end >= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	if activeState == "3" {
+		condition += ` AND art.days > 0  AND art.activity_time_end <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	//if activeState != "3" {
+	//	condition += `  AND art.activity_time_end  > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	//}
+
+	//if activeState == "" && whichDay == "" {
+	//	condition += ` AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	//}
+
+	if whichDay != "" {
+		condition += `  AND art.days > 0  `
+	}
+	condition += `  AND art.label != ''  AND art.is_offline = 0   `
+
+	if activeState == "1" {
+		condition = condition + ` AND art.days > 0    AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	return
+}
 
 // ActivityLabelSpecialUserSql 专项产业调研用户权限查询数据预处理
 func ActivityLabelSpecialUserSql(user *models.WxUserItem) (conditionShengji, conditionZhengshi, conditionHangYe string, err error) {
@@ -127,32 +196,25 @@ func UpdateCygxActivitySpecialSignupNum(cont context.Context) (err error) {
 }
 
 // 处理专项调研的展示
-func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPermissionIds, permissionNameStr string) (item *models.ActivityTypeHome, err error) {
+func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpecial, activeState string) (item *models.ActivityTypeHome, err error) {
 	itemList := new(models.ActivityTypeHome)
 	if user.CompanyId <= 1 {
 		itemList.List = make([]*models.CygxActivityLabelList, 0)
 		item = itemList
 		return
 	}
-	//userType, e := GetSpecialUserType(user)
-	userType, _, e := GetUserType(user.CompanyId)
-	if e != nil {
-		err = errors.New("GetSpecialUserType, Err: " + e.Error())
-		return
-	}
-	if userType == 0 {
-		itemList.List = make([]*models.CygxActivityLabelList, 0)
-		item = itemList
-		return
-	}
 	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
+	//var userType int
 	if companyDetail.Status == "永续" {
 		conditionUser, e = HandleActivityLabelSpecialPermission(user)
 		if e != nil {
@@ -167,26 +229,17 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 		}
 	}
 	var pars []interface{}
-	condition += ` AND art.publish_status = 1  AND art.label != ''  AND art.is_offline = 0 `
-	//行业名称
-	if isPower == 1 {
-		condition += ` AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
-	if chartPermissionIds != "" {
-		condition += ` AND art.chart_permission_id  IN (` + chartPermissionIds + `) `
-	}
-
+	condition += ` AND art.publish_status = 1  AND art.label != ''  AND art.is_offline = 0 ` + conditionActivitySpecial
+	conditionTrip := condition
+	conditionTripSql := condition
+	conditionNoTrip := condition
+	conditionNoTripSql := condition
 	//condition += conditionUser
 	conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
 	if e != nil {
 		err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
 		return
 	}
-
-	conditionTrip := condition
-	conditionNoTrip := condition
-	conditionTripSql := condition
-	conditionNoTripSql := condition
 	conditionTrip += ` AND art.days > 0   AND art.activity_time_end  > '` + time.Now().Format(utils.FormatDateTime) + ` '`
 
 	var conditionZhengshiTrip string
@@ -215,17 +268,16 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 		conditionTrip += conditionHangYeTrip
 	}
 
-	//行业套餐客户勾选项单独处理
-	if userType == 3 {
-		conditionTripSql += `  AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
-
 	conditionTripSql += conditionUser + conditionTrip + `  ORDER BY art.activity_time ASC `
 	specialList, err := models.GetActivityLabelSpecialListAll(conditionTripSql, pars, 0, 80)
 	if err != nil {
 		return
 	}
-	conditionNoTrip += ` AND art.days = 0  `
+	//if len(specialList) < 80 {
+
+	if activeState == "" {
+		conditionNoTrip += ` AND art.days = 0  `
+	}
 	var conditionShengjiNoTrip string
 	var conditionZhengshiNoTrip string
 	var conditionHangYeNoTrip string
@@ -247,10 +299,6 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 	if conditionHangYe != "" {
 		conditionNoTrip += conditionHangYeNoTrip
 	}
-	//行业套餐客户勾选项单独处理
-	if userType == 3 {
-		conditionNoTripSql += `  AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
 	conditionNoTripSql += conditionUser + conditionNoTrip + ` ORDER BY art.last_updated_time DESC`
 	specialListNotrip, e := models.GetActivityLabelSpecialListAll(conditionNoTripSql, pars, 0, 200)
 	if e != nil {
@@ -262,6 +310,7 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 	}
 	//}
 	for k2, v2 := range specialList {
+		v2.Resource = 2
 		if v2.Days == 0 {
 			specialList[k2].TripStatus = 1
 		} else {