|
@@ -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,14 +81,61 @@ 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
|
|
|
}
|
|
|
|
|
|
+// ActivityLabelSpecialUserSql 专项产业调研用户权限查询数据预处理
|
|
|
+func ActivityLabelSpecialUserSql(user *models.WxUserItem) (conditionShengji, conditionZhengshi 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 != "" && userType == 9 {
|
|
|
+ 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, ",")
|
|
|
+ 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)
|
|
@@ -93,16 +144,6 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
item = itemList
|
|
|
return
|
|
|
}
|
|
|
- //userType, e := GetSpecialUserType(user)
|
|
|
- //if e != nil {
|
|
|
- // err = errors.New("GetSpecialUserType, Err: " + e.Error())
|
|
|
- // return
|
|
|
- //}
|
|
|
- //if userType == 0 {
|
|
|
- // itemList.List = make([]*models.CygxActivityLabelList, 0)
|
|
|
- // item = itemList
|
|
|
- // return
|
|
|
- //}
|
|
|
companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
|
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
|
|
@@ -114,7 +155,7 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
|
|
|
var condition string
|
|
|
var conditionUser string
|
|
|
- var userType int
|
|
|
+ //var userType int
|
|
|
if companyDetail.Status == "永续" {
|
|
|
conditionUser, e = HandleActivityLabelSpecialPermission(user)
|
|
|
if e != nil {
|
|
@@ -122,7 +163,7 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
return
|
|
|
}
|
|
|
} else {
|
|
|
- conditionUser, userType, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
+ conditionUser, _, e = HandleActivityLabelSpecialTripPermission(user)
|
|
|
if e != nil {
|
|
|
err = errors.New("HandleActivityLabelSpecialPermission, Err: " + e.Error())
|
|
|
return
|
|
@@ -130,42 +171,55 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpeci
|
|
|
}
|
|
|
var pars []interface{}
|
|
|
condition += ` AND art.publish_status = 1 AND art.label != '' AND art.is_offline = 0 ` + conditionActivitySpecial
|
|
|
- // 8: 行业升级套餐客户:该活动对应行业为升级权限的客户
|
|
|
- permissionShengji, errs := models.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
|
|
|
- if errs != nil {
|
|
|
- err = errs
|
|
|
- return
|
|
|
+ conditionTrip := condition
|
|
|
+ conditionTripSql := condition
|
|
|
+ conditionNoTrip := condition
|
|
|
+ conditionNoTripSql := condition
|
|
|
+ //condition += conditionUser
|
|
|
+ conditionShengji, conditionZhengshi, e := ActivityLabelSpecialUserSql(user)
|
|
|
+ conditionTrip += ` AND art.days > 0 AND art.activity_time_end > '` + time.Now().Format(utils.FormatDateTime) + ` '`
|
|
|
+
|
|
|
+ var conditionZhengshiTrip string
|
|
|
+ var conditionShengjiTrip string
|
|
|
+
|
|
|
+ //处理专项调研确认行程的其它正式客户权限查询
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiTrip = ` OR ( ` + conditionZhengshi + conditionTrip + ` )`
|
|
|
}
|
|
|
- var conditionOr string
|
|
|
- if permissionShengji != "" && userType != 2 {
|
|
|
- slicePerShengji := strings.Split(permissionShengji, ",")
|
|
|
- permissionShengji = ""
|
|
|
- for _, v := range slicePerShengji {
|
|
|
- permissionShengji += "'" + v + "',"
|
|
|
- }
|
|
|
- permissionShengji = strings.TrimRight(permissionShengji, ",")
|
|
|
- conditionOr += ` OR ( art.customer_type_ids LIKE '%8%' AND art.chart_permission_name IN (` + permissionShengji + `)` + condition + `) `
|
|
|
- pars = append(pars, pars)
|
|
|
+ //处理专项调研确认行程的升级权限查询
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiTrip = ` OR ( ` + conditionShengji + conditionTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionTrip += conditionZhengshiTrip
|
|
|
+ }
|
|
|
+ if conditionShengjiTrip != "" {
|
|
|
+ conditionTrip += conditionShengjiTrip
|
|
|
}
|
|
|
|
|
|
- condition += conditionUser + conditionOr
|
|
|
- ////行业名称
|
|
|
- //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 += 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 len(specialList) < 80 {
|
|
|
+ conditionNoTrip += ` AND art.days = 0 `
|
|
|
+ var conditionShengjiNoTrip string
|
|
|
+ var conditionZhengshiNoTrip string
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionShengjiNoTrip = ` OR ( ` + conditionShengji + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionZhengshiNoTrip = ` OR ( ` + conditionZhengshi + conditionNoTrip + ` )`
|
|
|
+ }
|
|
|
+ if conditionShengji != "" {
|
|
|
+ conditionNoTrip += conditionShengjiNoTrip
|
|
|
+ }
|
|
|
+ if conditionZhengshi != "" {
|
|
|
+ conditionNoTrip += conditionZhengshiNoTrip
|
|
|
+ }
|
|
|
+ conditionNoTripSql += conditionUser + conditionNoTrip + ` ORDER BY art.last_updated_time DESC`
|
|
|
+ specialListNotrip, e := models.GetActivityLabelSpecialListAll(conditionNoTripSql, pars, 0, 200)
|
|
|
if e != nil {
|
|
|
err = e
|
|
|
return
|
|
@@ -286,16 +340,16 @@ 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
|
|
|
}
|
|
|
+ // 8: 行业升级套餐客户:该活动对应行业为升级权限的客户
|
|
|
permissionShengji, errs := models.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
|
|
|
if errs != nil {
|
|
|
err = errs
|
|
|
return
|
|
|
}
|
|
|
var conditionOr string
|
|
|
- if permissionShengji != "" && userType != 2 {
|
|
|
+ if permissionShengji != "" {
|
|
|
slicePerShengji := strings.Split(permissionShengji, ",")
|
|
|
permissionShengji = ""
|
|
|
for _, v := range slicePerShengji {
|
|
@@ -303,7 +357,30 @@ func GetActivitySpecialPrepareList(user *models.WxUserItem, startSize, pageSize
|
|
|
}
|
|
|
permissionShengji = strings.TrimRight(permissionShengji, ",")
|
|
|
conditionOr += ` OR ( art.customer_type_ids LIKE '%8%' AND art.chart_permission_name IN (` + permissionShengji + `)` + condition + `) `
|
|
|
- pars = append(pars, pars)
|
|
|
+ }
|
|
|
+ //9:其他行业正式客户:前述所有正式客户以外的正式客户 查询处理
|
|
|
+ permissionZhengShiStr, errs := models.GetCompanyPermissionByUserZhengShi(user.CompanyId)
|
|
|
+ if errs != nil {
|
|
|
+ err = errs
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if permissionZhengShiStr != "" && userType == 9 {
|
|
|
+ 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, ",")
|
|
|
+ conditionOr += ` OR ( art.customer_type_ids LIKE '%9%' AND art.chart_permission_name NOT IN (` + permissionZhengShiStr + `)` + condition + `) `
|
|
|
}
|
|
|
condition += conditionUser + conditionOr
|
|
|
totalPrepare, e = models.GetActivitySpecialCount(condition, pars)
|
|
@@ -360,27 +437,21 @@ 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
|
|
|
}
|
|
|
// 8: 行业升级套餐客户:该活动对应行业为升级权限的客户
|
|
|
permissionShengji, errs := models.GetCompanyPermissionByUserZhengShiTrip(user.CompanyId)
|
|
@@ -397,7 +468,6 @@ func GetActivityLabelSpecialConfirmList(user *models.WxUserItem, startSize, page
|
|
|
}
|
|
|
permissionShengji = strings.TrimRight(permissionShengji, ",")
|
|
|
conditionOr += ` OR ( art.customer_type_ids LIKE '%8%' AND art.chart_permission_name IN (` + permissionShengji + `)` + condition + `) `
|
|
|
- pars = append(pars, pars)
|
|
|
}
|
|
|
|
|
|
condition += conditionUser + conditionOr
|