Răsfoiți Sursa

C类活动可见

xingzai 2 ani în urmă
părinte
comite
ece50f627c
4 a modificat fișierele cu 43 adăugiri și 3 ștergeri
  1. 17 0
      models/admin.go
  2. 0 1
      models/seller.go
  3. 9 2
      services/activity.go
  4. 17 0
      services/admin.go

+ 17 - 0
models/admin.go

@@ -0,0 +1,17 @@
+package models
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+)
+
+type AdminMobileResp struct {
+	Mobile string `description:"手机号"`
+}
+
+// 获取销售所能查看到的手机号
+func GetAdminByRole() (items []*AdminMobileResp, err error) {
+	o := orm.NewOrm()
+	sql := ` SELECT mobile  FROM admin  WHERE role = 'admin' `
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}

+ 0 - 1
models/seller.go

@@ -61,7 +61,6 @@ func GetSelleridWhichGroup(companyId, productId int) (adminId string, err error)
 			FROM
 			company_product AS a
 			INNER JOIN admin AS b ON a.seller_id = b.admin_id
-			INNER JOIN wx_user AS c ON b.mobile = c.mobile
 			WHERE
 			a.company_id = ?
 			AND a.product_id = ?

+ 9 - 2
services/activity.go

@@ -683,9 +683,16 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 		}
 	}
 
-	//弘则研究下的客户不做权限,限制
+	//弘则研究下的客户不做权限,限制,C类电话会,仅本组销售、部门管理员、admin、权益研究员账号能看到
 	if user.CompanyId == 16 {
-		conditionOr += ` OR (  art.publish_status = 1 ` + conditionHz + `) `
+		mapMobile, e := GetAdminMobileMap()
+		if e != nil {
+			err = e
+			return
+		}
+		if _, ok := mapMobile[user.Mobile]; ok {
+			conditionOr += ` OR (  art.publish_status = 1 ` + conditionHz + `) `
+		}
 	}
 
 	conditionActivity = condition + permissionSqlStr + sqlExport + conditionOr

+ 17 - 0
services/admin.go

@@ -0,0 +1,17 @@
+package services
+
+import "hongze/hongze_cygx/models"
+
+func GetAdminMobileMap() (mapItem map[string]string, err error) {
+	adminList, e := models.GetAdminByRole()
+	if e != nil {
+		err = e
+		return
+	}
+	mapMobile := make(map[string]string)
+	for _, v := range adminList {
+		mapMobile[v.Mobile] = v.Mobile
+	}
+	mapItem = mapMobile
+	return
+}