xingzai 1 an în urmă
părinte
comite
b8a1bf7e23

+ 20 - 7
controllers/cygx/activity_meet.go

@@ -638,19 +638,32 @@ func (this *ActivityMeetCoAntroller) BreakAppointment() {
 	var list []*cygx.CygxBreakAppointmentList
 	var err error
 	if respDownload.IsCanDownload == false {
-		if adminInfo.RoleTypeCode == "rai_group" {
-			//组长查看本组所有组员
-			condition = ` AND s.user_id IN (SELECT user_id FROM user_seller_relation WHERE seller_id IN (SELECT  admin_id FROM admin WHERE group_id = (SELECT group_id FROM admin WHERE admin_id = ` + strconv.Itoa(sysUser.AdminId) + ` ) )) `
-		} else {
-			//组员查看自己
-			condition = ` AND s.user_id IN (SELECT user_id FROM user_seller_relation WHERE seller_id  = ` + strconv.Itoa(sysUser.AdminId) + `) `
+		//if adminInfo.RoleTypeCode == "rai_group" {
+		//	//组长查看本组所有组员
+		//	condition = ` AND s.user_id IN (SELECT user_id FROM user_seller_relation WHERE seller_id IN (SELECT  admin_id FROM admin WHERE group_id = (SELECT group_id FROM admin WHERE admin_id = ` + strconv.Itoa(sysUser.AdminId) + ` ) )) `
+		//} else {
+		//	//组员查看自己
+		//	condition = ` AND s.user_id IN (SELECT user_id FROM user_seller_relation WHERE seller_id  = ` + strconv.Itoa(sysUser.AdminId) + `) `
+		//}
+
+		//权益申请销售只能看到自己名下的客户的申请
+		companyIds, err := cygxService.GetAdminLookUserCompanyIds(sysUser)
+		if err != nil {
+			br.Msg = "获取失败"
+			br.ErrMsg = "获取失败,GetAdminLookUserCompanyIds Err:" + err.Error()
+			return
+		}
+		var companyIdstr []string
+		for _, v := range companyIds {
+			companyIdstr = append(companyIdstr, strconv.Itoa(v))
 		}
+		condition += ` AND s.company_id IN (` + strings.Join(companyIdstr, ",") + `) `
 	}
 	if keyWord != "" {
 		condition += ` AND (s.company_name LIKE '%` + keyWord + `%' OR s.mobile LIKE '%` + keyWord + `%') `
 	}
 	if sellerName != "" {
-		condition += ` 	AND p.seller_name = '` + sellerName + `' `
+		condition += ` 	AND s.seller_name = '` + sellerName + `' `
 	}
 	condition += ` AND a.is_limit_people > 0  `
 	total, err := cygx.GetCygxBreakAppointmentCount(condition, pars)

+ 1 - 2
controllers/cygx/interview_apply.go

@@ -139,7 +139,6 @@ func (this *InterviewApplyController) List() {
 	for _, v := range list {
 		userIds = append(userIds, v.UserId)
 	}
-
 	listUser, err := models.GetWxUserRaiSllerListByUserIds(userIds)
 	if err != nil {
 		br.Msg = "获取失败"
@@ -156,7 +155,7 @@ func (this *InterviewApplyController) List() {
 			v.UserRealName = mapUser[v.UserId].RealName
 			v.Mobile = mapUser[v.UserId].Mobile
 			v.CompanyName = mapUser[v.UserId].CompanyName
-			v.SalesRealName = mapUser[v.UserId].SalesName
+			v.SalesRealName = mapUser[v.UserId].SellerName
 		}
 	}
 	if list == nil {

+ 1 - 1
models/cygx/activity_meet.go

@@ -166,7 +166,7 @@ func MeetingDo(meetingUids, noMeetingUids string, ActivityId int, items []*CygxA
 
 // 获取数量
 func GetCygxBreakAppointmentCount(condition string, pars []interface{}) (count int, err error) {
-	sqlCount := ` SELECT COUNT(1)  count FROM ( SELECT u.user_id 
+	sqlCount := ` SELECT COUNT(1)  count FROM ( SELECT s.user_id 
 				FROM
 				cygx_activity_signup_break AS s
 				INNER JOIN cygx_activity AS a ON a.activity_id = s.activity_id

+ 1 - 2
models/cygx/cygx_user.go

@@ -215,7 +215,7 @@ func GetCygxCompanyUserListSplit(userIds string) (items []*CygxCompanyUser, err
 				man.activity_id IN ( SELECT activity_id FROM cygx_activity_signup AS f WHERE f.user_id = u.user_id  AND label != '') 
 			) AS activity_label
 		FROM
-			cygx_user_interaction_num AS u WHERE  u.user_id IN (` + userIds + `) 	GROUP BY u.user_id  `
+			cygx_user_label AS u WHERE  u.user_id IN (` + userIds + `)  AND u.mobile != ''	GROUP BY u.user_id  `
 	_, err = o.Raw(sql).QueryRows(&items)
 	return
 }
@@ -672,7 +672,6 @@ func GetCygxRoadshowByUser(uid, startSize, pageSize int) (items []*UserInteracti
 		FROM
 			cygx_activity_voice_history AS r
 			INNER JOIN cygx_activity_voice AS v ON r.activity_id = v.activity_id
-			INNER JOIN wx_user AS u ON r.mobile = u.mobile 
 		WHERE
 			r.user_id = ?
 		ORDER BY create_time DESC   LIMIT ?,? `

+ 1 - 1
models/wx_user.go

@@ -534,7 +534,7 @@ type WxUserSller struct {
 	Mobile      string `description:"手机号"`
 	CompanyId   int    `description:"公司id"`
 	CompanyName string `description:"公司名称"`
-	SalesName   string `description:"所属销售"`
+	SellerName  string `description:"所属销售"`
 }
 
 // GetWxUserRaiSllerListByUserIds 根据用户id获取权益相关用户信息

+ 23 - 3
services/cygx/activity_power_check.go

@@ -220,7 +220,8 @@ func GetActivityDetailUserPower(user *models.WxUser, adminInfo *system.Admin, ac
 	var userTypeStr string
 
 	//如果是弘则的用户或者宏观的权限不做校验
-	if user.CompanyId == utils.HZ_COMPANY_ID || activityInfo.ChartPermissionName == "宏观" {
+	//if user.CompanyId == utils.HZ_COMPANY_ID || activityInfo.ChartPermissionName == "宏观" {
+	if user.CompanyId == utils.HZ_COMPANY_ID {
 		havePower = true
 		return
 	}
@@ -236,6 +237,17 @@ func GetActivityDetailUserPower(user *models.WxUser, adminInfo *system.Admin, ac
 		return
 	}
 
+	//如果一个权限都没有就返回无权限
+	if permissionStr == "" {
+		return
+	}
+	permissionStr += "," + utils.HONG_GUAN_NAME // 添加一个宏观权限
+	if permissionStrZhengShi == "" {
+		permissionStrZhengShi = utils.HONG_GUAN_NAME // 添加一个宏观权限
+	} else {
+		permissionStrZhengShi += "," + utils.HONG_GUAN_NAME // 添加一个宏观权限
+	}
+
 	//如果是易董的活动,主、副权限有一个满足即可
 	if activityInfo.YidongActivityId != "" {
 		if strings.Contains(permissionStr, activityInfo.ChartPermissionName) || strings.Contains(permissionStr, activityInfo.ChartPermissionNameDeputy) {
@@ -351,9 +363,17 @@ func GetActivityDetailUserPower(user *models.WxUser, adminInfo *system.Admin, ac
 			companyDetailStatus = companyDetail.Status
 		}
 	}
+	//宏观满足用户可见身份验证权限既满足  2023-9-18
 	if activityInfo.ChartPermissionId == 1 {
-		havePower = true
-		return
+		if activityInfo.IsLimitPeople > 0 {
+			if strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) {
+				havePower = true
+				return
+			}
+		} else {
+			havePower = true
+			return
+		}
 	}
 	if (activityInfo.ActivityTypeId == 1 || activityInfo.ActivityTypeId == 3) && strings.Contains(permissionStr, "专家") && activityInfo.IsLimitPeople == 0 {
 		havePower = true

+ 1 - 0
utils/constants.go

@@ -405,6 +405,7 @@ const (
 	CHART_PERMISSION_ID_70W                        = 2001     // 权益70w大套餐表示的权限ID(自定义)
 	CHART_PERMISSION_NAME_45W                      = "45w大套餐" // 权益45w大套餐名称
 	CHART_PERMISSION_ID_45W                        = 2002     // 权益45w大套餐表示的权限ID(自定义)
+	HONG_GUAN_NAME                          string = "宏观"
 )
 
 const (