|
@@ -67,6 +67,10 @@ func ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState string) (
|
|
|
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) + " '"
|
|
|
//}
|
|
@@ -77,34 +81,76 @@ func ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState string) (
|
|
|
condition += ` AND art.label != '' AND art.is_offline = 0 `
|
|
|
|
|
|
if activeState == "1" {
|
|
|
- //conditionor := " OR ( art.days = 0 " + condition + " ) "
|
|
|
- conditionor := ""
|
|
|
- condition = condition + ` AND ( art.days > 0 AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " ' OR ( art.days = 0 ) )" + conditionor
|
|
|
+ condition = condition + ` AND art.days > 0 AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
|
|
|
}
|
|
|
|
|
|
return
|
|
|
}
|
|
|
|
|
|
-// 处理专项调研的展示
|
|
|
-func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpecial string) (item *models.ActivityTypeHome, err error) {
|
|
|
- itemList := new(models.ActivityTypeHome)
|
|
|
- if user.CompanyId <= 1 {
|
|
|
- itemList.List = make([]*models.CygxActivityLabelList, 0)
|
|
|
- item = itemList
|
|
|
+// ActivityLabelSpecialUserSql 专项产业调研用户权限查询数据预处理
|
|
|
+func ActivityLabelSpecialUserSql(user *models.WxUserItem) (conditionShengji, conditionZhengshi, conditionHangYe string, err error) {
|
|
|
+ _, userType, e := HandleActivityLabelSpecialTripPermission(user)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
+ // 8: 行业升级套餐客户:该活动对应行业为升级权限的客户
|
|
|
+ permissionShengji, errs := models.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
|
|
|
+ if errs != nil {
|
|
|
+ err = errs
|
|
|
return
|
|
|
}
|
|
|
- if userType == 0 {
|
|
|
+ if permissionShengji != "" {
|
|
|
+ slicePerShengji := strings.Split(permissionShengji, ",")
|
|
|
+ permissionShengji = ""
|
|
|
+ for _, v := range slicePerShengji {
|
|
|
+ permissionShengji += "'" + v + "',"
|
|
|
+ }
|
|
|
+ permissionShengji = strings.TrimRight(permissionShengji, ",")
|
|
|
+ conditionShengji = ` art.customer_type_ids LIKE '%8%' AND art.chart_permission_name IN (` + permissionShengji + `)`
|
|
|
+ }
|
|
|
+ //9:其他行业正式客户:前述所有正式客户以外的正式客户 查询处理
|
|
|
+ permissionZhengShiStr, errs := models.GetCompanyPermissionByUserZhengShi(user.CompanyId)
|
|
|
+ if errs != nil {
|
|
|
+ err = errs
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if permissionZhengShiStr != "" {
|
|
|
+ slicePerZhengshi := strings.Split(permissionZhengShiStr, ",")
|
|
|
+ permissionZhengShiStr = ""
|
|
|
+ for _, v := range slicePerZhengshi {
|
|
|
+ if userType == 1 {
|
|
|
+ //研选权限处理(永续客户无法查看研选)
|
|
|
+ if !strings.Contains(v, utils.CHART_PERMISSION_NAME_YANXUAN) {
|
|
|
+ permissionZhengShiStr += "'" + v + "',"
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ permissionZhengShiStr += "'" + v + "',"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ permissionZhengShiStr = strings.Replace(permissionZhengShiStr, "(主观)", "", -1)
|
|
|
+ permissionZhengShiStr = strings.Replace(permissionZhengShiStr, "(客观)", "", -1)
|
|
|
+ permissionZhengShiStr = strings.TrimRight(permissionZhengShiStr, ",")
|
|
|
+ permissionZhengShiStr += `, '宏观'`
|
|
|
+ if userType != 1 && userType != 2 && userType != 10 {
|
|
|
+ conditionHangYe = ` art.customer_type_ids LIKE '%3%' AND art.chart_permission_name IN (` + permissionZhengShiStr + `)`
|
|
|
+ }
|
|
|
+ if userType == 3 {
|
|
|
+ conditionZhengshi = ` art.customer_type_ids LIKE '%9%' AND art.chart_permission_name NOT IN (` + permissionZhengShiStr + `)`
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
+// 处理专项调研的展示
|
|
|
+func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpecial string) (item *models.ActivityTypeHome, err error) {
|
|
|
+ itemList := new(models.ActivityTypeHome)
|
|
|
+ if user.CompanyId <= 1 {
|
|
|
itemList.List = make([]*models.CygxActivityLabelList, 0)
|
|
|
item = itemList
|
|
|
return
|
|
|
}
|
|
|
companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
|
|
|
- fmt.Println(e)
|
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
|
|
|
return
|
|
@@ -114,14 +160,16 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
}
|
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
|
var condition string
|
|
|
+ var conditionUser string
|
|
|
+ //var userType int
|
|
|
if companyDetail.Status == "永续" {
|
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
} else {
|
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
@@ -129,31 +177,82 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
}
|
|
|
var pars []interface{}
|
|
|
condition += ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 ` + conditionActivitySpecial
|
|
|
-
|
|
|
- ////行业名称
|
|
|
- //if isPower == 1 {
|
|
|
- // condition += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
|
|
|
- //}
|
|
|
- //if chartPermissionIds != "" {
|
|
|
- // condition += ` AND art.chart_permission_id IN (` + chartPermissionIds + `) `
|
|
|
- //}
|
|
|
conditionTrip := condition
|
|
|
- conditionTrip += ` AND art.days > 0 ORDER BY art.activity_time ASC `
|
|
|
- specialList, err := models.GetActivityLabelSpecialListAll(conditionTrip, pars, 0, 8)
|
|
|
+ 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 += ` AND art.days > 0 AND art.activity_time_end > '` + time.Now().Format(utils.FormatDateTime) + ` '`
|
|
|
+
|
|
|
+ var conditionZhengshiTrip string
|
|
|
+ var conditionShengjiTrip string
|
|
|
+ var conditionHangYeTrip string
|
|
|
+
|
|
|
+ //处理专项调研确认行程的其它正式客户权限查询
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiTrip = ` OR ( ` + conditionZhengshi + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ //处理升级权限查询
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiTrip = ` OR ( ` + conditionShengji + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ //处理行业套餐客户权限查询
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionHangYeTrip = ` OR ( ` + conditionHangYe + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionTrip += conditionZhengshiTrip
|
|
|
+ }
|
|
|
+ if conditionShengjiTrip != "" {
|
|
|
+ conditionTrip += conditionShengjiTrip
|
|
|
+ }
|
|
|
+ if conditionHangYeTrip != "" {
|
|
|
+ conditionTrip += conditionHangYeTrip
|
|
|
+ }
|
|
|
+
|
|
|
+ conditionTripSql += conditionUser + conditionTrip + ` ORDER BY art.activity_time ASC `
|
|
|
+ specialList, err := models.GetActivityLabelSpecialListAll(conditionTripSql, pars, 0, 80)
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
- if len(specialList) < 8 {
|
|
|
- condition += ` AND art.days = 0 ORDER BY art.last_updated_time DESC`
|
|
|
- specialListNotrip, e := models.GetActivityLabelSpecialListAll(condition, pars, 0, 20)
|
|
|
- if e != nil {
|
|
|
- err = e
|
|
|
- return
|
|
|
- }
|
|
|
- for _, v := range specialListNotrip {
|
|
|
- specialList = append(specialList, v)
|
|
|
- }
|
|
|
+ //if len(specialList) < 80 {
|
|
|
+ conditionNoTrip += ` AND art.days = 0 `
|
|
|
+ var conditionShengjiNoTrip string
|
|
|
+ var conditionZhengshiNoTrip string
|
|
|
+ var conditionHangYeNoTrip string
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiNoTrip = ` OR ( ` + conditionShengji + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiNoTrip = ` OR ( ` + conditionZhengshi + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionHangYeNoTrip = ` OR ( ` + conditionHangYe + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionNoTrip += conditionShengjiNoTrip
|
|
|
}
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionNoTrip += conditionZhengshiNoTrip
|
|
|
+ }
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionNoTrip += conditionHangYeNoTrip
|
|
|
+ }
|
|
|
+ conditionNoTripSql += conditionUser + conditionNoTrip + ` ORDER BY art.last_updated_time DESC`
|
|
|
+ specialListNotrip, e := models.GetActivityLabelSpecialListAll(conditionNoTripSql, pars, 0, 200)
|
|
|
+ if e != nil {
|
|
|
+ err = e
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, v := range specialListNotrip {
|
|
|
+ specialList = append(specialList, v)
|
|
|
+ }
|
|
|
+ //}
|
|
|
for k2, v2 := range specialList {
|
|
|
v2.Resource = 2
|
|
|
if v2.Days == 0 {
|
|
@@ -200,25 +299,35 @@ func HandleActivityLabelSpecialPermission(user *models.WxUserItem) (condition st
|
|
|
}
|
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
|
condition = ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
|
- if permissionSqlStr != "" {
|
|
|
- condition += ` AND art.chart_permission_name IN (` + permissionSqlStr + `) `
|
|
|
- }
|
|
|
+ //if permissionSqlStr != "" {
|
|
|
+ // condition += ` AND art.chart_permission_name IN (` + permissionSqlStr + `) `
|
|
|
+ //}
|
|
|
condition += ` AND art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' `
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// HandleActivityLabelSpecialPermisseion 处理专项产业调研的查询权限sql
|
|
|
-func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (condition string, err error) {
|
|
|
+// HandleActivityLabelSpecialPermisseion 处理专项产业调研的查询权限sql
|
|
|
+func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (condition string, userType int, err error) {
|
|
|
permissionStr, e := GetCompanyPermission(user.CompanyId)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetCompanyPermission, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
+ userType, _, e = GetUserType(user.CompanyId)
|
|
|
+ //userType, e := GetSpecialUserType(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
+ mapUserType, e := GetActivityCcustomerTypeList()
|
|
|
+ if e != nil {
|
|
|
+ err = e
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var userTypeStr string
|
|
|
+ userTypeStr = mapUserType[userType]
|
|
|
+ //fmt.Println(userType)
|
|
|
slicePer := strings.Split(permissionStr, ",")
|
|
|
var permissionSqlStr string
|
|
|
for _, v := range slicePer {
|
|
@@ -232,10 +341,13 @@ func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (conditio
|
|
|
}
|
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
|
condition = ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
|
- if permissionSqlStr != "" {
|
|
|
+ if permissionSqlStr != "" && userType == 3 {
|
|
|
condition += ` AND art.chart_permission_name IN (` + permissionSqlStr + `) `
|
|
|
}
|
|
|
- condition += ` AND art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' `
|
|
|
+ condition += ` AND art.customer_type_ids LIKE '%` + userTypeStr + `%' `
|
|
|
+
|
|
|
+ //if userType != 2 {
|
|
|
+
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -251,14 +363,15 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
|
}
|
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
|
var condition string
|
|
|
+ var conditionUser string
|
|
|
if companyDetail.Status == "永续" {
|
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
} else {
|
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
@@ -268,16 +381,45 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
|
condition += ` AND art.days = 0 AND art.publish_status = 1 AND art.is_offline = 0 ` + conditionActivity
|
|
|
if keywords != "" {
|
|
|
keywords = "%" + keywords + "%"
|
|
|
- condition += ` AND art.research_theme LIKE ? `
|
|
|
- pars = append(pars, keywords)
|
|
|
+ condition += ` AND art.research_theme LIKE ` + keywords
|
|
|
}
|
|
|
- totalPrepare, e = models.GetActivitySpecialCount(condition, pars)
|
|
|
+ conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ conditionNoTrip := condition
|
|
|
+ var conditionShengjiNoTrip string
|
|
|
+ var conditionZhengshiNoTrip string
|
|
|
+ var conditionHangYeNoTrip string
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiNoTrip = ` OR ( ` + conditionShengji + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiNoTrip = ` OR ( ` + conditionZhengshi + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ //处理行业套餐权限查询
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionHangYeNoTrip = ` OR ( ` + conditionHangYe + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionNoTrip += conditionShengjiNoTrip
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionNoTrip += conditionZhengshiNoTrip
|
|
|
+ }
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionNoTrip += conditionHangYeNoTrip
|
|
|
+ }
|
|
|
+ conditionNoTripSql := conditionUser + conditionNoTrip
|
|
|
+ totalPrepare, e = models.GetActivitySpecialCount(conditionNoTripSql, pars)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
- condition += ` ORDER BY art.last_updated_time DESC `
|
|
|
- list, e = models.GetCygxActivitySpecialDetailList(condition, pars, user.UserId, startSize, pageSize)
|
|
|
+ conditionNoTripSql += ` ORDER BY art.last_updated_time DESC `
|
|
|
+ list, e = models.GetCygxActivitySpecialDetailList(conditionNoTripSql, pars, user.UserId, startSize, pageSize)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
|
return
|
|
@@ -302,14 +444,16 @@ func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, page
|
|
|
|
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
|
var condition string
|
|
|
+ var conditionUser string
|
|
|
+ //var userType int
|
|
|
if companyDetail.Status == "永续" {
|
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
} else {
|
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
@@ -318,35 +462,70 @@ func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, page
|
|
|
var pars []interface{}
|
|
|
condition += ` AND art.days >0 AND art.publish_status =1 AND art.is_offline = 0 ` + conditionActivity
|
|
|
if state == 1 {
|
|
|
- condition += ` AND art.activity_time > ? `
|
|
|
- pars = append(pars, time.Now())
|
|
|
+ condition += ` AND art.activity_time > '` + time.Now().Format(utils.FormatDateTime) + `'`
|
|
|
}
|
|
|
if state == 2 {
|
|
|
- condition += ` AND art.activity_time < ? `
|
|
|
- pars = append(pars, time.Now())
|
|
|
- condition += ` AND art.activity_time_end > ? `
|
|
|
- pars = append(pars, time.Now())
|
|
|
+ condition += ` AND art.activity_time < '` + time.Now().Format(utils.FormatDateTime) + `'`
|
|
|
+ condition += ` AND art.activity_time_end > '` + time.Now().Format(utils.FormatDateTime) + `'`
|
|
|
}
|
|
|
if state == 3 {
|
|
|
- condition += ` AND art.activity_time_end < ? `
|
|
|
- pars = append(pars, time.Now())
|
|
|
+ condition += ` AND art.activity_time_end < '` + time.Now().Format(utils.FormatDateTime) + `'`
|
|
|
}
|
|
|
if state == 4 {
|
|
|
- condition += ` AND art.activity_time_end > ? `
|
|
|
- pars = append(pars, time.Now())
|
|
|
+ condition += ` AND art.activity_time_end > '` + time.Now().Format(utils.FormatDateTime) + `'`
|
|
|
}
|
|
|
if keywords != "" {
|
|
|
keywords = "%" + keywords + "%"
|
|
|
- condition += ` AND art.research_theme LIKE ? `
|
|
|
- pars = append(pars, keywords)
|
|
|
+ condition += ` AND art.research_theme LIKE ` + keywords
|
|
|
+ }
|
|
|
+ //condition += ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 ` + conditionActivitySpecial
|
|
|
+ conditionTrip := condition
|
|
|
+ conditionTripSql := condition
|
|
|
+
|
|
|
+ //condition += conditionUser
|
|
|
+ conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ conditionTrip += ` AND art.days > 0 AND art.activity_time_end > '` + time.Now().Format(utils.FormatDateTime) + ` '`
|
|
|
+
|
|
|
+ var conditionZhengshiTrip string
|
|
|
+ var conditionShengjiTrip string
|
|
|
+ var conditionHangYeTrip string
|
|
|
+
|
|
|
+ //处理专项调研确认行程的其它正式客户权限查询
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiTrip = ` OR ( ` + conditionZhengshi + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ //处理专项调研确认行程的升级权限查询
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiTrip = ` OR ( ` + conditionShengji + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ //处理行业套餐客户权限查询
|
|
|
+ if conditionHangYe != "" {
|
|
|
+ conditionHangYeTrip = ` OR ( ` + conditionHangYe + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionTrip += conditionZhengshiTrip
|
|
|
+ }
|
|
|
+ if conditionShengjiTrip != "" {
|
|
|
+ conditionTrip += conditionShengjiTrip
|
|
|
+ }
|
|
|
+ if conditionHangYeTrip != "" {
|
|
|
+ conditionTrip += conditionHangYeTrip
|
|
|
}
|
|
|
- totalConfirm, e = models.GetActivitySpecialCount(condition, pars)
|
|
|
+ conditionTripSql += conditionUser + conditionTrip + ` ORDER BY art.activity_time ASC `
|
|
|
+
|
|
|
+ //condition += conditionUser + conditionOr
|
|
|
+ totalConfirm, e = models.GetActivitySpecialCount(conditionTripSql, pars)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
condition += ` ORDER BY art.activity_time ASC `
|
|
|
- list, e = models.GetCygxActivitySpecialDetailList(condition, pars, user.UserId, startSize, pageSize)
|
|
|
+ list, e = models.GetCygxActivitySpecialDetailList(conditionTripSql, pars, user.UserId, startSize, pageSize)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
|
return
|
|
@@ -735,29 +914,49 @@ func GetSpecialUserType(user *models.WxUserItem) (userType int, err error) {
|
|
|
|
|
|
// GetSpecialDetailUserPower 处理用户查看专项调研详情的权限
|
|
|
func GetSpecialDetailUserPower(user *models.WxUserItem, activityInfo *models.CygxActivitySpecialDetail) (havePower bool, err error) {
|
|
|
- permissionStr, e := GetCompanyPermissionUpgrade(user.CompanyId)
|
|
|
+ if user.CompanyId == utils.HZ_COMPANY_ID {
|
|
|
+ havePower = true
|
|
|
+ return
|
|
|
+ }
|
|
|
+ userType, _, e := GetUserType(user.CompanyId)
|
|
|
if e != nil {
|
|
|
- err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
|
|
|
+ err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
- fmt.Println(permissionStr)
|
|
|
- //如果没有对应的升级权限,则返回
|
|
|
- if !strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
|
|
|
+ if userType == 0 {
|
|
|
return
|
|
|
}
|
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
+ mapUserType, e := GetActivityCcustomerTypeList()
|
|
|
if e != nil {
|
|
|
- err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
+ err = e
|
|
|
return
|
|
|
}
|
|
|
- if userType == 0 {
|
|
|
+ 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
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ permissionStr, e := GetCompanyPermissionUpgrade(user.CompanyId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
+ //如果没有对应的升级权限,则返回
|
|
|
+ if !strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //userType, e := GetSpecialUserType(user)
|
|
|
+
|
|
|
var pars []interface{}
|
|
|
var condition string
|
|
|
var userTypes string
|
|
|
condition += ` AND art.publish_status = 1 AND art.is_offline = 0 `
|
|
|
- userTypes = "%" + strconv.Itoa(userType) + "%"
|
|
|
+ userTypes = "%" + userTypeStr + "%"
|
|
|
condition += ` AND art.customer_type_ids LIKE ? `
|
|
|
pars = append(pars, userTypes)
|
|
|
|
|
@@ -771,6 +970,15 @@ func GetSpecialDetailUserPower(user *models.WxUserItem, activityInfo *models.Cyg
|
|
|
}
|
|
|
if total == 1 {
|
|
|
havePower = true
|
|
|
+ return
|
|
|
+ }
|
|
|
+ fmt.Println(userType)
|
|
|
+ fmt.Println(permissionStr)
|
|
|
+ fmt.Println(activityInfo.ChartPermissionName)
|
|
|
+ fmt.Println(activityInfo.CustomerTypeIds)
|
|
|
+ if strings.Contains(permissionStr, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
|
|
|
+ havePower = true
|
|
|
+ return
|
|
|
}
|
|
|
return
|
|
|
}
|