123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600 |
- package cygx
- import (
- "errors"
- "fmt"
- "hongze/hz_crm_api/models"
- "hongze/hz_crm_api/models/company"
- "hongze/hz_crm_api/models/cygx"
- "hongze/hz_crm_api/models/system"
- "hongze/hz_crm_api/utils"
- "strconv"
- "strings"
- )
- //func init() {
- // wxUser, userErr := models.GetWxUserByUserId(52994)
- // if userErr != nil {
- // fmt.Println(userErr)
- // }
- // activityInfo, err := cygx.GetAddActivityInfoById(2104)
- // if err != nil {
- // fmt.Println(err)
- // }
- // havePower, err := GetActivityDetailUserPower(wxUser, activityInfo)
- // fmt.Println(havePower)
- // fmt.Println(err)
- //}
- // GetSpecialDetailUserPower 处理用户查看详情的权限 作废 2023-06-26
- func GetActivityDetailUserPowerold(user *models.WxUser, adminInfo *system.Admin, activityInfo *cygx.ActivityDetail) (havePower bool, err error) {
- var companyDetailStatus string
- var userTypeStr string
- if user.CompanyId == utils.HZ_COMPANY_ID {
- havePower = true
- return
- }
- //需求707: 不限制人数的活动,销售后台给客户报名时(包括预约外呼、预约纪要、会议提醒),可以不做是否有权限的校验,限制人数的仍需判断是否有权限。2023-06-14
- if activityInfo.IsLimitPeople == 0 {
- havePower = true
- return
- }
- ////高毅资产的联系人,销售在后台添加报名时,不受行业权限的限制 高毅资产属于其他行业正式客户
- ////Ps: 现在就这一家单独的公司需要先写死 2023-03-20 高毅资产 公司ID:5285
- //if user.CompanyId == 5285 {
- // havePower = true
- // return
- //}
- userType, permissionStr, permissionStrZhengShi, companyStatus, e := GetUserTypeZhengShi(user.CompanyId)
- if e != nil {
- err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
- return
- }
- //何伯仪给用户报名不做权限的限制,给他的用户添加所有权限 需求:2023-06-13
- //if adminInfo.Mobile == "15216703664" {
- // permissionStr = "医药(客观),医药(主观),消费(客观),消费(主观),科技(客观),科技(主观),智造(客观),智造(主观),策略,专家,路演服务,买方研选"
- // permissionStrZhengShi = "医药(客观),医药(主观),消费(客观),消费(主观),科技(客观),科技(主观),智造(客观),智造(主观),策略,专家,路演服务,买方研选"
- //}
- //如果是 公司调研电话会:3,或 专家线下沙龙:5 而且 除易董同步过来的以外的研选类型活动,必须要有研选的正式权限
- if (activityInfo.ActivityTypeId == 3 || activityInfo.ActivityTypeId == 5) && activityInfo.YidongActivityId == "" && strings.Contains(activityInfo.ChartPermissionName, utils.CHART_PERMISSION_NAME_YANXUAN) {
- if !strings.Contains(permissionStrZhengShi, activityInfo.ChartPermissionName) {
- havePower = false
- return
- }
- }
- //如果是易董的活动且属于研选类型,只要开通任何权限就可以查看详情
- if activityInfo.YidongActivityId != "" && permissionStr != "" && strings.Contains(activityInfo.ChartPermissionName, utils.CHART_PERMISSION_NAME_YANXUAN) {
- havePower = true
- return
- }
- //处理决策人可见权限
- if user.IsMaker == 0 && activityInfo.IsMakerShow == 1 {
- havePower = false
- return
- }
- //if activityInfo.ActivityTypeId == 2 || activityInfo.ActivityTypeId == 6 || activityInfo.ActivityTypeId == 7 {
- // if strings.Contains(permissionStr, activityInfo.ChartPermissionName+"(主观)") {
- // havePower = true
- // } else {
- // havePower = false
- // }
- //} else {
- // if strings.Contains(permissionStr, activityInfo.ChartPermissionName+"(客观)") {
- // havePower = true
- // } else {
- // havePower = false
- // }
- //}
- ////如果主客观校验不通过,那么直接返回
- //if !havePower {
- // return
- //}
- if activityInfo.IsLimitPeople > 0 {
- mapUserType, e := GetActivityCcustomerTypeList()
- if e != nil {
- err = e
- return
- }
- userTypeStr = mapUserType[userType]
- // 永续客户、大套餐客户、30W套餐客户可以查看行业升级套餐客户 权限
- if userTypeStr == "1" || userTypeStr == "2" || userTypeStr == "AA" {
- if strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- //return
- }
- }
- } else {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- }
- //判断管理规模是否满足
- companyProduct, e := company.GetCompanyProductDetail(user.CompanyId, 2)
- if e != nil {
- err = e
- return
- }
- if companyProduct != nil && activityInfo.Scale != "" {
- if strings.Contains(activityInfo.Scale, companyProduct.Scale) {
- havePower = true
- }
- }
- if user.CompanyId <= 1 {
- return
- } else {
- if permissionStr == "" {
- return
- } else {
- //companyDetail, e := models.GetCompanyDetailById(user.CompanyId)
- //if e != nil {
- // err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
- // return
- //}
- //if companyDetail == nil {
- // err = errors.New("客户不存在,uid:" + strconv.Itoa(user.UserId) + "CompanyId:" + strconv.Itoa(user.CompanyId))
- // return
- //}
- companyDetailStatus = companyStatus
- }
- }
- if activityInfo.ChartPermissionId == 1 {
- havePower = true
- return
- }
- if (activityInfo.ActivityTypeId == 1 || activityInfo.ActivityTypeId == 3) && strings.Contains(permissionStr, "专家") && activityInfo.IsLimitPeople == 0 {
- havePower = true
- } else if activityInfo.ActivityTypeId == 3 && strings.Contains(permissionStr, "专家") && companyDetailStatus == "正式" && strings.Contains(activityInfo.CustomerTypeIds, "4") {
- havePower = true
- } else if activityInfo.ActivityTypeId == 3 && strings.Contains(permissionStr, "专家") && companyDetailStatus == "试用" && strings.Contains(activityInfo.CustomerTypeIds, "5") {
- havePower = true
- } else if (activityInfo.ActivityTypeId == 1 || activityInfo.ActivityTypeId == 3 || activityInfo.ActivityTypeId == 4 || activityInfo.ActivityTypeId == 5) && strings.Contains(permissionStr, "专家") {
- havePower = true
- }
- //if (strings.Contains(activityInfo.ChartPermissionName, "研选") || activityInfo.ChartPermissionName == "策略") && strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- // havePower = true
- // return
- //}
- fmt.Println(havePower)
- if strings.Contains(activityInfo.ChartPermissionName, "研选") || activityInfo.ChartPermissionName == "策略" {
- if strings.Contains(activityInfo.CustomerTypeIds, "5") {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- } else {
- if strings.Contains(permissionStrZhengShi, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- }
- }
- permissionShengji, errs := cygx.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
- if errs != nil {
- err = errs
- return
- }
- //if strings.Contains(permissionShengji, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- // havePower = true
- //}
- //处理升级权限以及用户身份的 双重判断
- if activityInfo.CustomerTypeIds != "" {
- if !strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) && userTypeStr != "8" {
- havePower = false
- if strings.Contains(permissionShengji, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- }
- }
- }
- //if strings.Contains(permissionStr, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) {
- // havePower = true
- // return
- //}
- if havePower && activityInfo.IsLimitPeople > 0 {
- //对于一些特殊的活动,即使权限满足也不给产看
- noPower, e := GetShareNoPoweNew(activityInfo, permissionStr, userType, user)
- if e != nil {
- err = errors.New("GetShareNoPowe, Err: " + e.Error())
- return
- }
- if noPower {
- havePower = false
- }
- }
- return
- }
- // GetSpecialDetailUserPower 处理用户查看详情的权限
- func GetActivityDetailUserPower(user *models.WxUser, adminInfo *system.Admin, activityInfo *cygx.ActivityDetail) (havePower bool, err error) {
- var companyDetailStatus string
- var userTypeStr string
- userId := int(user.UserId)
- //如果是弘则的用户或者宏观的权限不做校验
- //if user.CompanyId == utils.HZ_COMPANY_ID || activityInfo.ChartPermissionName == "宏观" {
- if user.CompanyId == utils.HZ_COMPANY_ID {
- havePower = true
- return
- }
- //需求707: 不限制人数的活动,销售后台给客户报名时(包括预约外呼、预约纪要、会议提醒),可以不做是否有权限的校验,限制人数的仍需判断是否有权限。2023-06-14
- if activityInfo.IsLimitPeople == 0 {
- havePower = true
- return
- }
- userType, permissionStr, permissionStrZhengShi, _, e := GetUserTypeZhengShi(user.CompanyId)
- if e != nil {
- err = errors.New("GetUserTypeZhengShi, Err: " + e.Error())
- return
- }
- //判断用户是否开通了个人研选权限,如果有权限后缀拼接权限名称
- // 查询用户是否开通过
- mfyxUserPermissionTotal, e := cygx.GetCygxUserYanxuanPermissionCountByUserId(userId)
- if e != nil {
- err = errors.New("GetCygxUserYanxuanPermissionCountByUserId, Err: " + e.Error())
- return
- }
- if mfyxUserPermissionTotal == 1 {
- permissionStr += "," + utils.CHART_PERMISSION_NAME_MF_YANXUAN
- }
- //如果正式权限有开通 研选扣点包 ,那么就拼接一个 研选订阅的权限
- if strings.Contains(permissionStrZhengShi, utils.YAN_XUAN_KOU_DIAN_BAO_NAME) {
- permissionStr += "," + utils.CHART_PERMISSION_NAME_MF_YANXUAN
- permissionStrZhengShi += "," + utils.CHART_PERMISSION_NAME_MF_YANXUAN
- }
- //如果测试权限有开通 研选扣点包 ,那么就拼接一个 研选订阅的权限
- if strings.Contains(permissionStr, utils.YAN_XUAN_KOU_DIAN_BAO_NAME) {
- permissionStr += "," + utils.CHART_PERMISSION_NAME_MF_YANXUAN
- }
- //如果一个权限都没有就返回无权限
- 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) {
- havePower = true
- return
- }
- }
- //如果权限不包含那么直接返回
- if !strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- return
- } else {
- havePower = true
- }
- //处理决策人可见权限
- if user.IsMaker == 0 && activityInfo.IsMakerShow == 1 {
- havePower = false
- return
- }
- // 处理本组可见权限
- if activityInfo.VisibleRange == 1 {
- adminIds, e := cygx.GetSelleridWhichGroup(user.CompanyId, 2)
- if e != nil {
- err = errors.New("GetSelleridWhichGroup, Err: " + e.Error())
- return
- }
- haveVisibleRange := false
- adminIdSlice := strings.Split(adminIds, ",")
- for _, v := range adminIdSlice {
- if v == strconv.Itoa(activityInfo.AdminId) {
- haveVisibleRange = true
- }
- }
- if !haveVisibleRange {
- havePower = false
- return
- }
- }
- if permissionStr == "" {
- return
- }
- //如果是易董的活动且属于研选类型,只要开通任何权限就可以查看详情
- if activityInfo.YidongActivityId != "" && permissionStr != "" && strings.Contains(activityInfo.ChartPermissionName, utils.CHART_PERMISSION_NAME_YANXUAN) {
- havePower = true
- return
- }
- //医药消费,科技,智造四大行业,验证主客观。如果主客观校验不通过,那么直接返回
- if strings.Contains(utils.YI_YAO_NAME+utils.XIAO_FEI_NAME+utils.KE_JI_NAME+utils.ZHI_ZAO_NAME, activityInfo.ChartPermissionName) {
- if activityInfo.ActivityTypeId == 2 || activityInfo.ActivityTypeId == 6 || activityInfo.ActivityTypeId == 7 {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName+"(主观)") {
- havePower = true
- } else {
- havePower = false
- }
- } else {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName+"(客观)") {
- havePower = true
- } else {
- havePower = false
- }
- }
- if !havePower {
- return
- }
- }
- if activityInfo.IsLimitPeople > 0 {
- mapUserType, e := GetActivityCcustomerTypeList()
- if e != nil {
- err = errors.New("GetActivityCcustomerTypeList, Err: " + e.Error())
- return
- }
- userTypeStr = mapUserType[userType]
- // 永续客户、大套餐客户、30W套餐客户可以查看行业升级套餐客户 权限
- if userTypeStr == "1" || userTypeStr == "2" || userTypeStr == "AA" {
- if strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- //return
- }
- }
- } else {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- }
- //判断管理规模是否满足
- companyProduct, e := cygx.GetCompanyProductDetail(user.CompanyId, 2)
- if e != nil {
- err = e
- return
- }
- if companyProduct != nil && activityInfo.Scale != "" {
- if strings.Contains(activityInfo.Scale, companyProduct.Scale) {
- havePower = true
- }
- }
- if user.CompanyId <= 1 {
- return
- } else {
- if permissionStr == "" {
- return
- } else {
- companyDetail, e := cygx.GetCompanyDetailById(user.CompanyId)
- if e != nil {
- err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
- return
- }
- if companyDetail == nil {
- err = errors.New("客户不存在,uid:" + strconv.Itoa(int(user.UserId)) + "CompanyId:" + strconv.Itoa(user.CompanyId))
- return
- }
- companyDetailStatus = companyDetail.Status
- }
- }
- //宏观满足用户可见身份验证权限既满足 2023-9-18
- if activityInfo.ChartPermissionId == 1 {
- 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
- } else if activityInfo.ActivityTypeId == 3 && strings.Contains(permissionStr, "专家") && companyDetailStatus == "正式" && strings.Contains(activityInfo.CustomerTypeIds, "4") {
- havePower = true
- } else if activityInfo.ActivityTypeId == 3 && strings.Contains(permissionStr, "专家") && companyDetailStatus == "试用" && strings.Contains(activityInfo.CustomerTypeIds, "5") {
- havePower = true
- } else if (activityInfo.ActivityTypeId == 1 || activityInfo.ActivityTypeId == 3 || activityInfo.ActivityTypeId == 4 || activityInfo.ActivityTypeId == 5) && strings.Contains(permissionStr, "专家") {
- havePower = true
- }
- if strings.Contains(activityInfo.ChartPermissionName, "研选") || activityInfo.ChartPermissionName == "策略" {
- if strings.Contains(activityInfo.CustomerTypeIds, "5") {
- if strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- } else {
- if strings.Contains(permissionStrZhengShi, activityInfo.ChartPermissionName) {
- havePower = true
- return
- }
- }
- }
- permissionShengji, errs := cygx.GetCompanyPermissionByUserTrip(user.CompanyId)
- if errs != nil {
- err = errs
- return
- }
- //fmt.Println("主客观2", havePower)
- //if strings.Contains(permissionStr, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) {
- // havePower = true
- //}
- //fmt.Println("主客观3", havePower)
- //处理升级权限以及用户身份的 双重判断
- if activityInfo.CustomerTypeIds != "" {
- if !strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) && userTypeStr != "8" {
- havePower = false
- if strings.Contains(permissionShengji, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- }
- }
- }
- if havePower && activityInfo.IsLimitPeople > 0 {
- //对于一些特殊的活动,即使权限满足也不给产看
- noPower, e := GetShareNoPowe(activityInfo, permissionStr, userType)
- if e != nil {
- err = errors.New("GetShareNoPowe, Err: " + e.Error())
- return
- }
- if noPower {
- havePower = false
- }
- }
- return
- }
- // 校验被分享的用户是否有查看详情的权限
- func GetShareNoPoweNew(activityInfo *cygx.ActivityDetail, permissionStr string, userType int, user *models.WxUser) (noPower bool, err error) {
- //如果是弘则的就不进行可见权限校验
- if user.CompanyId == utils.HZ_COMPANY_ID {
- return
- }
- //var noPower bool
- //if !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(userType)) {
- // noPower = true
- //}
- //1、永续客户 //2、大套餐客户(4个行业全开通的正式客户) //3、分行业套餐客户(开通对应行业的正式客户) //4、仅开通专家套餐的正式客户 //5、开通对应行业套餐或专家套餐的试用客户
- //if userType == 2 && strings.Contains(permissionStr, "专家") && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(2)) && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(3)) && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(4)) {
- // noPower = true
- //}
- //if userType == 2 && !strings.Contains(permissionStr, "专家") && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(2)) && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(3)) {
- // noPower = true
- //}
- //if userType == 3 && strings.Contains(permissionStr, "专家") && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(3)) && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(4)) {
- // noPower = true
- //}
- //if userType == 3 && !strings.Contains(permissionStr, "专家") && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(3)) {
- // noPower = true
- //}
- if userType == 8 {
- permissionShengji, errs := cygx.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
- if errs != nil {
- err = errs
- return
- }
- if !strings.Contains(permissionShengji, activityInfo.ChartPermissionName) {
- noPower = true
- return
- }
- }
- if !noPower {
- noPower, err = CheckUserPowerByActivityChoose(user, activityInfo)
- }
- return
- }
- // 处理活动本组们是否决策人权限
- func CheckUserPowerByActivityChoose(user *models.WxUser, activityInfo *cygx.ActivityDetail) (noPower bool, err error) {
- //处理 见范围 1,仅本组可见 、2,全部客户可见
- if activityInfo.VisibleRange == 1 {
- adminIds, errAdmin := system.GetSelleridWhichGroup(user.CompanyId, 2)
- if errAdmin != nil {
- err = errAdmin
- return
- }
- sliceAdminIds := strings.Split(adminIds, ",")
- var haveAdminId bool
- for _, v := range sliceAdminIds {
- if v == strconv.Itoa(activityInfo.AdminId) {
- haveAdminId = true
- }
- }
- if !haveAdminId {
- noPower = true
- }
- }
- //处理 是否仅决策人可见 0,否 、1,是
- if activityInfo.IsMakerShow == 1 {
- if user.IsMaker == 0 {
- noPower = true
- }
- }
- return
- }
- // GetSpecialDetailUserPower 处理用户查看专项调研详情的权限
- func GetSpecialDetailUserPower(user *models.WxUser, activityInfo *cygx.ActivitySpecialDetail) (havePower bool, err error) {
- if user.CompanyId == utils.HZ_COMPANY_ID {
- havePower = true
- return
- }
- userType, _, permissionStr, _, e := GetUserType(user.CompanyId)
- if e != nil {
- err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
- return
- }
- if userType == 0 {
- return
- }
- mapUserType, e := GetActivityCcustomerTypeList()
- if e != nil {
- err = e
- return
- }
- var userTypeStr string
- userTypeStr = mapUserType[userType]
- // 永续客户、大套餐客户可以查看行业升级套餐客户 权限
- if userTypeStr == "1" || userTypeStr == "2" {
- if strings.Contains(activityInfo.CustomerTypeIds, userTypeStr) || strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- return
- }
- }
- permissionShengji, errs := cygx.GetCompanyPermissionByUserTrip(user.CompanyId)
- if errs != nil {
- err = errs
- return
- }
- //如果有升级权限的自动添加策略、固收的升级权限
- if permissionStr != "" {
- if activityInfo.ChartPermissionName == utils.CE_LUE_NAME {
- permissionShengji += "," + utils.CE_LUE_NAME
- }
- if activityInfo.ChartPermissionName == utils.GU_SHOU_NAME {
- permissionShengji += "," + utils.GU_SHOU_NAME
- }
- }
- //如果没有对应的升级权限,则返回
- if !strings.Contains(permissionShengji, activityInfo.ChartPermissionName) {
- return
- }
- var pars []interface{}
- var condition string
- var userTypes string
- condition += ` AND art.publish_status = 1 AND art.is_offline = 0 `
- userTypes = "%" + userTypeStr + "%"
- condition += ` AND art.customer_type_ids LIKE ? `
- pars = append(pars, userTypes)
- condition += ` AND art.activity_id = ? `
- pars = append(pars, activityInfo.ActivityId)
- total, e := cygx.GetActivitySpecialCount(condition, pars)
- if e != nil {
- err = errors.New("GetSpecialUserType, Err: " + e.Error())
- return
- }
- if total == 1 {
- havePower = true
- return
- }
- if strings.Contains(permissionShengji, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
- havePower = true
- return
- }
- return
- }
|