Эх сурвалжийг харах

活动列表用户身份筛选

xingzai 3 жил өмнө
parent
commit
3cb91939d5
1 өөрчлөгдсөн 44 нэмэгдсэн , 11 устгасан
  1. 44 11
      controllers/activity.go

+ 44 - 11
controllers/activity.go

@@ -80,12 +80,7 @@ func (this *ActivityCoAntroller) ActivityList() {
 
 	keyWord := this.GetString("KeyWord")
 	activeState := this.GetString("ActiveState")
-	//if activeState == "" {
-	//	activeState = "1"
-	//}
-	//if isShowJurisdiction != 1 {
-	//	isShowJurisdiction = 0
-	//}
+
 	itemSearch := new(models.CygxActivityUserSearchContent)
 	itemSearch.UserId = uid
 	itemSearch.CreateTime = time.Now()
@@ -112,6 +107,45 @@ func (this *ActivityCoAntroller) ActivityList() {
 		br.Data = resp
 		return
 	}
+	companyDetail, err := models.GetCompanyDetailById(user.CompanyId)
+	if err != nil {
+		br.Msg = "新增优化建议失败!"
+		br.ErrMsg = "获取客户详情失败,Err:" + err.Error()
+		return
+	}
+	if companyDetail == nil {
+		br.Msg = "新增优化建议失败!"
+		br.ErrMsg = "客户不存在,uid:" + strconv.Itoa(user.UserId)
+		return
+	}
+	//1、永续客户
+	//2、大套餐客户(4个行业全开通的正式客户)
+	//3、分行业套餐客户(开通对应行业的正式客户)
+	//4、仅开通专家套餐的正式客户
+	//5、开通对应行业套餐或专家套餐的试用客户
+	var userType int
+	if companyDetail.Status == "永续" {
+		userType = 1
+	} else if companyDetail.Status == "试用" {
+		userType = 5
+	} else if companyDetail.Status == "正式" {
+		permissionStr, err := models.GetCompanyPermission(user.CompanyId)
+		if err != nil {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
+			return
+		}
+		if permissionStr == "专家" {
+			userType = 4
+		}
+		if strings.Contains(permissionStr, "医药") && strings.Contains(permissionStr, "消费") && strings.Contains(permissionStr, "科技") && strings.Contains(permissionStr, "智造") {
+			userType = 2
+		} else {
+			userType = 3
+		}
+	}
+
+	fmt.Println(userType)
 	var startSize int
 	if pageSize <= 0 {
 		pageSize = utils.PageSize20
@@ -122,8 +156,10 @@ func (this *ActivityCoAntroller) ActivityList() {
 	startSize = utils.StartIndex(currentIndex, pageSize)
 	var condition string
 	var pars []interface{}
+	//活动可见限制
+	condition += ` AND (is_limit_people = 0 OR(is_limit_people = 1 AND customer_type_ids LIKE'%` + strconv.Itoa(userType) + `%')) `
 	if keyWord != "" {
-		condition += ` AND (art.activity_name LIKE '%` + keyWord + `%' )  `
+		condition += ` AND (art.activity_name LIKE '%` + keyWord + `%' )`
 	}
 	//行业名称
 	if len(chartPermissionIds) > 0 {
@@ -143,10 +179,7 @@ func (this *ActivityCoAntroller) ActivityList() {
 		br.ErrMsg = "获取失败,Err:" + err.Error()
 		return
 	}
-	condition += ` ORDER BY art.active_state ASC `
-	//if activeState == "2" || activeState == "3" || activeState == "2,3" {
-	//	condition += ` ORDER BY art.activity_time DESC `
-	//}
+	condition += ` ORDER BY art.active_state ASC, art.activity_time ASC  `
 	list, errList := models.GetActivityListAll(condition, pars, uid, startSize, pageSize)
 	if errList != nil {
 		br.Msg = "获取失败"