|
@@ -15,6 +15,61 @@ import (
|
|
// UpdateCygxActivitySpecialSignupNum()
|
|
// UpdateCygxActivitySpecialSignupNum()
|
|
//}
|
|
//}
|
|
|
|
|
|
|
|
+// 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
|
|
|
|
+ }
|
|
|
|
+ // 8: 行业升级套餐客户:该活动对应行业为升级权限的客户
|
|
|
|
+ permissionShengji, errs := models.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
|
|
|
|
+ if errs != nil {
|
|
|
|
+ err = errs
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ 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 UpdateCygxActivitySpecialSignupNum(cont context.Context) (err error) {
|
|
func UpdateCygxActivitySpecialSignupNum(cont context.Context) (err error) {
|
|
defer func() {
|
|
defer func() {
|
|
@@ -79,7 +134,8 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
|
|
item = itemList
|
|
item = itemList
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
|
|
|
+ //userType, e := GetSpecialUserType(user)
|
|
|
|
+ userType, _, e := GetUserType(user.CompanyId)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -96,14 +152,15 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
|
|
}
|
|
}
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
var condition string
|
|
var condition string
|
|
|
|
+ var conditionUser string
|
|
if companyDetail.Status == "永续" {
|
|
if companyDetail.Status == "永续" {
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -111,7 +168,6 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
|
|
}
|
|
}
|
|
var pars []interface{}
|
|
var pars []interface{}
|
|
condition += ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
condition += ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
-
|
|
|
|
//行业名称
|
|
//行业名称
|
|
if isPower == 1 {
|
|
if isPower == 1 {
|
|
condition += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
|
|
condition += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
|
|
@@ -119,18 +175,84 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
|
|
if chartPermissionIds != "" {
|
|
if chartPermissionIds != "" {
|
|
condition += ` AND art.chart_permission_id IN (` + chartPermissionIds + `) `
|
|
condition += ` AND art.chart_permission_id IN (` + chartPermissionIds + `) `
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //condition += conditionUser
|
|
|
|
+ conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
conditionTrip := condition
|
|
conditionTrip := condition
|
|
- conditionTrip += ` AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
|
|
|
|
- conditionTrip += ` AND art.days > 0 ORDER BY art.activity_time ASC `
|
|
|
|
- specialList, err := models.GetActivityLabelSpecialListAll(conditionTrip, pars, 0, 8)
|
|
|
|
|
|
+ conditionNoTrip := condition
|
|
|
|
+ conditionTripSql := condition
|
|
|
|
+ conditionNoTripSql := condition
|
|
|
|
+ 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
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //行业套餐客户勾选项单独处理
|
|
|
|
+ if userType == 3 {
|
|
|
|
+ conditionTripSql += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ conditionTripSql += conditionUser + conditionTrip + ` ORDER BY art.activity_time ASC `
|
|
|
|
+ specialList, err := models.GetActivityLabelSpecialListAll(conditionTripSql, pars, 0, 80)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- //if len(specialList) < 8 {
|
|
|
|
- // conditionTrip += ` AND art.days = 0 ORDER BY art.last_updated_time DESC`
|
|
|
|
-
|
|
|
|
- condition += ` AND art.days = 0 ORDER BY art.last_updated_time DESC`
|
|
|
|
- specialListNotrip, e := models.GetActivityLabelSpecialListAll(condition, pars, 0, 20)
|
|
|
|
|
|
+ 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
|
|
|
|
+ }
|
|
|
|
+ //行业套餐客户勾选项单独处理
|
|
|
|
+ if userType == 3 {
|
|
|
|
+ conditionNoTripSql += ` AND art.chart_permission_name IN (` + permissionNameStr + `) `
|
|
|
|
+ }
|
|
|
|
+ conditionNoTripSql += conditionUser + conditionNoTrip + ` ORDER BY art.last_updated_time DESC`
|
|
|
|
+ specialListNotrip, e := models.GetActivityLabelSpecialListAll(conditionNoTripSql, pars, 0, 200)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = e
|
|
err = e
|
|
return
|
|
return
|
|
@@ -184,25 +306,34 @@ func HandleActivityLabelSpecialPermission(user *models.WxUserItem) (condition st
|
|
}
|
|
}
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
condition = ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
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) + `%' `
|
|
condition += ` AND art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' `
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
// HandleActivityLabelSpecialPermisseion 处理专项产业调研的查询权限sql
|
|
// HandleActivityLabelSpecialPermisseion 处理专项产业调研的查询权限sql
|
|
-func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (condition string, err error) {
|
|
|
|
|
|
+func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (condition string, userType int, err error) {
|
|
permissionStr, e := GetCompanyPermission(user.CompanyId)
|
|
permissionStr, e := GetCompanyPermission(user.CompanyId)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetCompanyPermission, Err: " + e.Error())
|
|
err = errors.New("GetCompanyPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
|
|
|
+ userType, _, e = GetUserType(user.CompanyId)
|
|
|
|
+ //userType, e := GetSpecialUserType(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+ mapUserType, e := GetActivityCcustomerTypeList()
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = e
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ var userTypeStr string
|
|
|
|
+ userTypeStr = mapUserType[userType]
|
|
|
|
+ //fmt.Println(userType)
|
|
slicePer := strings.Split(permissionStr, ",")
|
|
slicePer := strings.Split(permissionStr, ",")
|
|
var permissionSqlStr string
|
|
var permissionSqlStr string
|
|
for _, v := range slicePer {
|
|
for _, v := range slicePer {
|
|
@@ -216,10 +347,13 @@ func HandleActivityLabelSpecialTripPermission(user *models.WxUserItem) (conditio
|
|
}
|
|
}
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
permissionSqlStr = strings.TrimRight(permissionSqlStr, ",")
|
|
condition = ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 `
|
|
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.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
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
@@ -232,14 +366,15 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
}
|
|
}
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
var condition string
|
|
var condition string
|
|
|
|
+ var conditionUser string
|
|
if companyDetail.Status == "永续" {
|
|
if companyDetail.Status == "永续" {
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -252,13 +387,46 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
condition += ` AND art.research_theme LIKE ? `
|
|
condition += ` AND art.research_theme LIKE ? `
|
|
pars = append(pars, keywords)
|
|
pars = append(pars, 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
|
|
|
|
+ //condition += conditionUser + conditionOr
|
|
|
|
+ totalPrepare, e = models.GetActivitySpecialCount(conditionNoTripSql, pars)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
return
|
|
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 {
|
|
if e != nil {
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -271,7 +439,6 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
state 进行状态 1:未开始,2:进行中,3:已结束,4:未开始、进行中 不传默认查询全部items []*CygxActivitySpecialDetail
|
|
state 进行状态 1:未开始,2:进行中,3:已结束,4:未开始、进行中 不传默认查询全部items []*CygxActivitySpecialDetail
|
|
*/
|
|
*/
|
|
func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, pageSize, state int, keywords string) (list []*models.CygxActivitySpecialDetail, totalConfirm int, err error) {
|
|
func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, pageSize, state int, keywords string) (list []*models.CygxActivitySpecialDetail, totalConfirm int, err error) {
|
|
- //var condition string
|
|
|
|
companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
|
|
companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
|
|
err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
|
|
@@ -282,14 +449,16 @@ func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, page
|
|
}
|
|
}
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
var condition string
|
|
var condition string
|
|
|
|
+ var conditionUser string
|
|
|
|
+ //var userType int
|
|
if companyDetail.Status == "永续" {
|
|
if companyDetail.Status == "永续" {
|
|
- condition, e = HandleActivityLabelSpecialPermission(user)
|
|
|
|
|
|
+ conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- condition, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -298,35 +467,68 @@ func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, page
|
|
var pars []interface{}
|
|
var pars []interface{}
|
|
condition += ` AND art.days >0 AND art.publish_status =1 AND art.is_offline = 0 `
|
|
condition += ` AND art.days >0 AND art.publish_status =1 AND art.is_offline = 0 `
|
|
if state == 1 {
|
|
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 {
|
|
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 {
|
|
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 {
|
|
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 != "" {
|
|
if keywords != "" {
|
|
keywords = "%" + keywords + "%"
|
|
keywords = "%" + keywords + "%"
|
|
- condition += ` AND art.research_theme LIKE ? `
|
|
|
|
- pars = append(pars, keywords)
|
|
|
|
|
|
+ condition += ` AND art.research_theme LIKE ` + keywords
|
|
|
|
+ //pars = append(pars, keywords)
|
|
|
|
+ }
|
|
|
|
+ conditionTrip := condition
|
|
|
|
+ conditionTripSql := condition
|
|
|
|
+
|
|
|
|
+ conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
|
|
|
|
+ return
|
|
}
|
|
}
|
|
- totalConfirm, e = models.GetActivitySpecialCount(condition, pars)
|
|
|
|
|
|
+ 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 `
|
|
|
|
+
|
|
|
|
+ totalConfirm, e = models.GetActivitySpecialCount(conditionTripSql, pars)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
err = errors.New("GetActivitySpecialCount, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
condition += ` ORDER BY art.activity_time ASC `
|
|
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 {
|
|
if e != nil {
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
err = errors.New("GetCygxActivitySpecialDetailList, Err: " + e.Error())
|
|
return
|
|
return
|
|
@@ -409,9 +611,9 @@ func GetActivitySpecialList(user *models.WxUserItem, currentIndex, pageSize int,
|
|
err = errors.New("GetActivityLabelSpecialConfirmList11, Err: " + e.Error())
|
|
err = errors.New("GetActivityLabelSpecialConfirmList11, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- if totalConfirm == 0 {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
|
|
+ //if totalConfirm == 0 {
|
|
|
|
+ // return
|
|
|
|
+ //}
|
|
if currentIndex == 1 && len(listConfirm) > 0 {
|
|
if currentIndex == 1 && len(listConfirm) > 0 {
|
|
listConfirm[0].Explain = utils.ACtIVITY_SPECIAL_TRIP_EXPLAIN
|
|
listConfirm[0].Explain = utils.ACtIVITY_SPECIAL_TRIP_EXPLAIN
|
|
}
|
|
}
|
|
@@ -445,7 +647,6 @@ func GetActivitySpecialList(user *models.WxUserItem, currentIndex, pageSize int,
|
|
}
|
|
}
|
|
}
|
|
}
|
|
total = totalConfirm + totalPrepare
|
|
total = totalConfirm + totalPrepare
|
|
-
|
|
|
|
//处理封面图片
|
|
//处理封面图片
|
|
detail, e := models.GetConfigByCode("city_img_url")
|
|
detail, e := models.GetConfigByCode("city_img_url")
|
|
if e != nil {
|
|
if e != nil {
|
|
@@ -699,29 +900,49 @@ func GetSpecialUserType(user *models.WxUserItem) (userType int, err error) {
|
|
|
|
|
|
// GetSpecialDetailUserPower 处理用户查看专项调研详情的权限
|
|
// GetSpecialDetailUserPower 处理用户查看专项调研详情的权限
|
|
func GetSpecialDetailUserPower(user *models.WxUserItem, activityInfo *models.CygxActivitySpecialDetail) (havePower bool, err error) {
|
|
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 {
|
|
if e != nil {
|
|
- err = errors.New("GetCompanyPermissionUpgrade, Err: " + e.Error())
|
|
|
|
|
|
+ err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- fmt.Println(permissionStr)
|
|
|
|
- //如果没有对应的升级权限,则返回
|
|
|
|
- if !strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
|
|
|
|
|
|
+ if userType == 0 {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- userType, e := GetSpecialUserType(user)
|
|
|
|
|
|
+ mapUserType, e := GetActivityCcustomerTypeList()
|
|
if e != nil {
|
|
if e != nil {
|
|
- err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
|
|
|
+ err = e
|
|
return
|
|
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
|
|
return
|
|
}
|
|
}
|
|
|
|
+ //userType, e := GetSpecialUserType(user)
|
|
|
|
+
|
|
var pars []interface{}
|
|
var pars []interface{}
|
|
var condition string
|
|
var condition string
|
|
var userTypes string
|
|
var userTypes string
|
|
condition += ` AND art.publish_status = 1 AND art.is_offline = 0 `
|
|
condition += ` AND art.publish_status = 1 AND art.is_offline = 0 `
|
|
- userTypes = "%" + strconv.Itoa(userType) + "%"
|
|
|
|
|
|
+ userTypes = "%" + userTypeStr + "%"
|
|
condition += ` AND art.customer_type_ids LIKE ? `
|
|
condition += ` AND art.customer_type_ids LIKE ? `
|
|
pars = append(pars, userTypes)
|
|
pars = append(pars, userTypes)
|
|
|
|
|
|
@@ -735,6 +956,12 @@ func GetSpecialDetailUserPower(user *models.WxUserItem, activityInfo *models.Cyg
|
|
}
|
|
}
|
|
if total == 1 {
|
|
if total == 1 {
|
|
havePower = true
|
|
havePower = true
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if strings.Contains(permissionStr, activityInfo.ChartPermissionName) && strings.Contains(activityInfo.CustomerTypeIds, "8") {
|
|
|
|
+ havePower = true
|
|
|
|
+ return
|
|
}
|
|
}
|
|
return
|
|
return
|
|
}
|
|
}
|