|
@@ -4,13 +4,11 @@ import (
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
"github.com/medivhzhan/weapp/v2"
|
|
|
- "github.com/tealeg/xlsx"
|
|
|
"hongze/hongze_cygx/models"
|
|
|
"hongze/hongze_cygx/services"
|
|
|
"hongze/hongze_cygx/utils"
|
|
|
- "os"
|
|
|
- "path/filepath"
|
|
|
"rdluck_tools/paging"
|
|
|
+ "sort"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"time"
|
|
@@ -285,6 +283,10 @@ func (this *ActivityCoAntroller) ActivityList() {
|
|
|
if services.GetShowSustainable() && v.ChartPermissionName == "研选" {
|
|
|
list[k].IsShowSustainable = true
|
|
|
}
|
|
|
+ if v.ChartPermissionName == "研选" && v.ActivityTypeId == 1 {
|
|
|
+ list[k].ActivityTypeName = "研选电话会"
|
|
|
+ }
|
|
|
+ list[k].ImgUrl = "https://hongze.oss-cn-shanghai.aliyuncs.com/static/images/202111/20211104/QbTGTNhD9MxYp24cJ7V5WpCN0oNl.png"
|
|
|
}
|
|
|
page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
resp := new(models.GetCygxActivityListRep)
|
|
@@ -1532,7 +1534,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
this.Data["json"] = br
|
|
|
this.ServeJSON()
|
|
|
}()
|
|
|
-
|
|
|
user := this.User
|
|
|
if user == nil {
|
|
|
br.Msg = "请登录"
|
|
@@ -1540,14 +1541,12 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
return
|
|
|
}
|
|
|
pageSize, _ := this.GetInt("PageSize")
|
|
|
- //currentIndex, _ := this.GetInt("CurrentIndex")
|
|
|
chartPermissionIds := this.GetString("ChartPermissionIds")
|
|
|
activityTypeIds := this.GetString("ActivityTypeIds")
|
|
|
whichDay := this.GetString("WhichDay")
|
|
|
isShowJurisdiction, _ := this.GetInt("IsShowJurisdiction")
|
|
|
activeState := this.GetString("ActiveState")
|
|
|
label := this.GetString("Label")
|
|
|
-
|
|
|
//入参为 undefined 时的处理
|
|
|
if chartPermissionIds == "undefined" {
|
|
|
chartPermissionIds = ""
|
|
@@ -1564,72 +1563,17 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
if label == "undefined" {
|
|
|
label = ""
|
|
|
}
|
|
|
- var userType int
|
|
|
- var permissionStr string
|
|
|
- if user.CompanyId <= 1 {
|
|
|
- userType = 0
|
|
|
- } else {
|
|
|
- total, err := models.GetCountCompanyDetailByIdGroup(user.CompanyId)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if total == 0 {
|
|
|
- userType = 0
|
|
|
- } else {
|
|
|
- companyDetail, err := models.GetCompanyDetailByIdGroup(user.CompanyId)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败!"
|
|
|
- br.ErrMsg = "获取客户详情失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if companyDetail == nil {
|
|
|
- br.Msg = "获取信息失败!"
|
|
|
- br.ErrMsg = "客户不存在,uid:" + strconv.Itoa(user.UserId) + "CompanyId:" + strconv.Itoa(user.CompanyId)
|
|
|
- return
|
|
|
- }
|
|
|
- permissionStr, err = models.GetCompanyPermission(user.CompanyId)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- //1、永续客户
|
|
|
- //2、大套餐客户(4个行业全开通的正式客户)
|
|
|
- //3、分行业套餐客户(开通对应行业的正式客户)
|
|
|
- //4、仅开通专家套餐的正式客户
|
|
|
- //5、开通对应行业套餐或专家套餐的试用客户
|
|
|
- if companyDetail.Status == "永续" {
|
|
|
- userType = 1
|
|
|
- } else if companyDetail.Status == "试用" {
|
|
|
- userType = 5
|
|
|
- } else if companyDetail.Status == "正式" {
|
|
|
- if permissionStr == "专家" {
|
|
|
- userType = 4
|
|
|
- } else if strings.Contains(permissionStr, "医药") && strings.Contains(permissionStr, "消费") && strings.Contains(permissionStr, "科技") && strings.Contains(permissionStr, "智造") {
|
|
|
- userType = 2
|
|
|
- } else {
|
|
|
- userType = 3
|
|
|
- }
|
|
|
- if userType == 3 {
|
|
|
- if !strings.Contains(permissionStr, "医药") && !strings.Contains(permissionStr, "消费") && !strings.Contains(permissionStr, "科技") && !strings.Contains(permissionStr, "智造") {
|
|
|
- userType = 4
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ userType, permissionStr, err := services.GetUserType(user.CompanyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
}
|
|
|
if isShowJurisdiction == 1 && chartPermissionIds == "" && userType == 4 {
|
|
|
activityTypeIds = "1,3"
|
|
|
}
|
|
|
var startSize int
|
|
|
- //if pageSize <= 0 {
|
|
|
- // pageSize = utils.PageSize20
|
|
|
- //}
|
|
|
- //currentIndex = 1
|
|
|
pageSize = 15
|
|
|
- //startSize = utils.StartIndex(currentIndex, pageSize)
|
|
|
var condition string
|
|
|
var sortTime string
|
|
|
var pars []interface{}
|
|
@@ -1637,9 +1581,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
var sqlExport string
|
|
|
slicePer := strings.Split(permissionStr, ",")
|
|
|
var permissionSqlStr string
|
|
|
- //for _, v := range slicePer {
|
|
|
- // permissionSqlStr += "'" + v + "',"
|
|
|
- //}
|
|
|
for _, v := range slicePer {
|
|
|
if userType == 1 {
|
|
|
if v != "研选" {
|
|
@@ -1660,7 +1601,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
}
|
|
|
sqlExport += `) `
|
|
|
condition += ` AND art.publish_status = 1 AND art.label != '' `
|
|
|
- //condition += ` AND art.active_state = 1 `
|
|
|
var conditionOr string
|
|
|
if (userType == 2 || userType == 3 || userType == 4) && strings.Contains(permissionStr, "专家") {
|
|
|
conditionOr += ` OR ( art.is_limit_people = 1 AND art.customer_type_ids LIKE '%4%' ` + condition + `) `
|
|
@@ -1673,10 +1613,13 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
} else {
|
|
|
conditionOr += ` OR ( art.is_limit_people = 0 ` + condition + `) `
|
|
|
}
|
|
|
- //conditionOr += ` OR ( art.is_limit_people = 0 ` + condition + `) `
|
|
|
condition += `AND art.is_limit_people = 1 ` + permissionSqlStr + sqlExport + conditionOr
|
|
|
resp := new(models.GetCygxActivityLabelListRep)
|
|
|
- //conditionLaable := condition
|
|
|
+
|
|
|
+ if label != "" {
|
|
|
+ resp.Label = label
|
|
|
+ resp.ImgUrl = ""
|
|
|
+ }
|
|
|
//主题
|
|
|
if label != "" {
|
|
|
sortTime = ` timesort DESC `
|
|
@@ -1720,7 +1663,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
condition += ` AND art.activity_type_id IN (` + activityTypeIds + `)`
|
|
|
}
|
|
|
var conditionOr string
|
|
|
-
|
|
|
if whichDay != "" {
|
|
|
var startDate string
|
|
|
var endDate string
|
|
@@ -1762,7 +1704,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
br.ErrMsg = "获取失败,Err:" + errList.Error()
|
|
|
return
|
|
|
}
|
|
|
- //resp := new(models.GetCygxActivityLabelListRep)
|
|
|
resp.List = list
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
@@ -1770,160 +1711,6 @@ func (this *ActivityCoAntroller) LabelList() {
|
|
|
br.Data = resp
|
|
|
}
|
|
|
|
|
|
-// @Title 上传公司名称excel
|
|
|
-// @Description 上传参会表格数据
|
|
|
-// @Param File query file true "文件"
|
|
|
-// @Success 200 Ret=200 导入成功
|
|
|
-// @router /activityMeet/import [post]
|
|
|
-func (this *ActivityCoAntroller) Import() {
|
|
|
- br := new(models.BaseResponse).Init()
|
|
|
- defer func() {
|
|
|
- this.Data["json"] = br
|
|
|
- this.ServeJSON()
|
|
|
- }()
|
|
|
- sysUser := this.User
|
|
|
- if sysUser == nil {
|
|
|
- br.Msg = "请重新登录"
|
|
|
- return
|
|
|
- }
|
|
|
- file, h, err := this.GetFile("File")
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取文件失败"
|
|
|
- br.ErrMsg = "获取文件失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- uploadDir := "static/xls"
|
|
|
- err = os.MkdirAll(uploadDir, 766)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "存储目录创建失败"
|
|
|
- br.ErrMsg = "存储目录创建失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- path := uploadDir + "/" + time.Now().Format(utils.FormatDateTimeUnSpace) + h.Filename
|
|
|
- defer file.Close()
|
|
|
- err = this.SaveToFile("File", path)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "文件保存失败"
|
|
|
- br.ErrMsg = "文件保存失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- xlFile, err := xlsx.OpenFile(path)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "文件导入失败"
|
|
|
- br.ErrMsg = "文件导入失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- //允许添加的联系人
|
|
|
- needAddAttendanc := make([]*models.UserWhiteList, 0)
|
|
|
-
|
|
|
- // 遍历sheet页读取
|
|
|
- for _, sheet := range xlFile.Sheets {
|
|
|
- //遍历行读取
|
|
|
- maxRow := sheet.MaxRow
|
|
|
- for i := 0; i < maxRow; i++ {
|
|
|
- if i >= 1 {
|
|
|
- row := sheet.Row(i)
|
|
|
- cells := row.Cells
|
|
|
- var companyName, permission string
|
|
|
- for k, cell := range cells {
|
|
|
- if k == 0 {
|
|
|
- companyName = cell.String()
|
|
|
- }
|
|
|
- if k == 2 {
|
|
|
- permission = cell.String()
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- //这些字段都没有的话,系统认为excel到底了
|
|
|
- if companyName == "" {
|
|
|
- break
|
|
|
- }
|
|
|
- item := new(models.UserWhiteList)
|
|
|
- item.CompanyName = companyName
|
|
|
- item.Permission = permission
|
|
|
- needAddAttendanc = append(needAddAttendanc, item)
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- //var mobileStr string
|
|
|
- var permissionStr string
|
|
|
- for k, v := range needAddAttendanc {
|
|
|
- if k > 0 && v.CompanyName != needAddAttendanc[k-1].CompanyName {
|
|
|
- permissionStr, err = models.GetCompanyPermissionByName(v.CompanyName)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if k == 0 {
|
|
|
- permissionStr, err = models.GetCompanyPermissionByName(v.CompanyName)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- needAddAttendanc[k].Permission = permissionStr
|
|
|
- fmt.Println(permissionStr)
|
|
|
- }
|
|
|
-
|
|
|
- defer func() {
|
|
|
- os.Remove(path)
|
|
|
- }()
|
|
|
-
|
|
|
- //创建excel
|
|
|
- dir, errFile := os.Executable()
|
|
|
- exPath := filepath.Dir(dir)
|
|
|
- downLoadnFilePath := exPath + "/" + time.Now().Format(utils.FormatDateTimeUnSpace) + ".xlsx"
|
|
|
- xlsxFile := xlsx.NewFile()
|
|
|
- if errFile != nil {
|
|
|
- br.Msg = "生成文件失败Err:" + errFile.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- style := xlsx.NewStyle()
|
|
|
- alignment := xlsx.Alignment{
|
|
|
- Horizontal: "center",
|
|
|
- Vertical: "center",
|
|
|
- WrapText: true,
|
|
|
- }
|
|
|
- style.Alignment = alignment
|
|
|
- style.ApplyAlignment = true
|
|
|
- sheet, err := xlsxFile.AddSheet("白名单")
|
|
|
- if err != nil {
|
|
|
- br.Msg = "新增Sheet失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- //标头
|
|
|
- rowTitle := sheet.AddRow()
|
|
|
- cellA := rowTitle.AddCell()
|
|
|
- cellA.Value = ""
|
|
|
- cellB := rowTitle.AddCell()
|
|
|
- cellB.Value = "公司"
|
|
|
- cellC := rowTitle.AddCell()
|
|
|
- cellC.Value = "权限"
|
|
|
- for _, item := range needAddAttendanc {
|
|
|
- row := sheet.AddRow()
|
|
|
- cellA := row.AddCell()
|
|
|
- cellA.Value = item.CompanyName
|
|
|
- cellB := row.AddCell()
|
|
|
- if item.Permission == "" {
|
|
|
- //item.Permission = "专家/医药/智造/消费/研选/科技/策略/路演服务"
|
|
|
- }
|
|
|
- cellB.Value = item.Permission
|
|
|
- }
|
|
|
- errFile = xlsxFile.Save(downLoadnFilePath)
|
|
|
- if errFile != nil {
|
|
|
- br.Msg = "保存文件失败Err:" + errFile.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- br.Msg = "导入成功"
|
|
|
- br.Ret = 200
|
|
|
- br.Success = true
|
|
|
-}
|
|
|
-
|
|
|
// @Title 活动带问
|
|
|
// @Description 新增活动带问接口
|
|
|
// @Param request body models.AddCygxActivityHelpAsk true "type json string"
|
|
@@ -1953,7 +1740,6 @@ func (this *ActivityCoAntroller) AskAdd() {
|
|
|
br.Msg = "建议内容不可为空"
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
content := req.Content
|
|
|
itemToken, err := services.WxGetToken()
|
|
|
if err != nil {
|
|
@@ -1968,7 +1754,6 @@ func (this *ActivityCoAntroller) AskAdd() {
|
|
|
if err != nil {
|
|
|
br.Msg = "内容校验失败!"
|
|
|
br.ErrMsg = "内容校验失败,Err:" + err.Error()
|
|
|
-
|
|
|
return
|
|
|
}
|
|
|
if commerr.ErrCode != 0 {
|
|
@@ -2030,3 +1815,182 @@ func (this *ActivityCoAntroller) AskAdd() {
|
|
|
br.Success = true
|
|
|
br.Msg = "提交成功"
|
|
|
}
|
|
|
+
|
|
|
+// @Title 活动类型下的主题列表
|
|
|
+// @Description 获取活动类型下的主题列表接口
|
|
|
+// @Param ChartPermissionIds query string false "行业id 多个用 , 隔开"
|
|
|
+// @Param ActivityTypeIds query string false "活动类型id 多个用 , 隔开"
|
|
|
+// @Param ActiveState query string false "活动进行状态 未开始:1、进行中2、已结束3"
|
|
|
+// @Param WhichDay query string false "哪一天 今天:1、明天:2,多个用 , 隔开"
|
|
|
+// @Param IsPower query int false "是否选择有权限行业 ,1是 0 否 默认0"
|
|
|
+// @Success 200 {object} models.GetCygxActivityLabelListRep
|
|
|
+// @router /labelTypeList [get]
|
|
|
+func (this *ActivityCoAntroller) LabelTypeList() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ user := this.User
|
|
|
+ if user == nil {
|
|
|
+ br.Msg = "请登录"
|
|
|
+ br.ErrMsg = "请登录,SysUser Is Empty"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ pageSize, _ := this.GetInt("PageSize")
|
|
|
+ isPower, _ := this.GetInt("IsPower")
|
|
|
+ //currentIndex, _ := this.GetInt("CurrentIndex")
|
|
|
+ chartPermissionIds := this.GetString("ChartPermissionIds")
|
|
|
+ //activityTypeIds := this.GetString("ActivityTypeIds")
|
|
|
+ whichDay := this.GetString("WhichDay")
|
|
|
+ activeState := this.GetString("ActiveState")
|
|
|
+ //入参为 undefined 时的处理
|
|
|
+ if chartPermissionIds == "undefined" {
|
|
|
+ chartPermissionIds = ""
|
|
|
+ }
|
|
|
+ if whichDay == "undefined" {
|
|
|
+ whichDay = ""
|
|
|
+ }
|
|
|
+ if activeState == "undefined" || activeState == "" {
|
|
|
+ activeState = "1"
|
|
|
+ }
|
|
|
+ userType, permissionStr, err := services.GetUserType(user.CompanyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var startSize int
|
|
|
+ pageSize = 4
|
|
|
+ var sortTime string
|
|
|
+ var pars []interface{}
|
|
|
+ //活动可见限制
|
|
|
+ slicePer := strings.Split(permissionStr, ",")
|
|
|
+ var permissionSqlStr string
|
|
|
+ var permissionNameStr string
|
|
|
+ for _, v := range slicePer {
|
|
|
+ if userType == 1 {
|
|
|
+ if v != "研选" {
|
|
|
+ permissionNameStr += "'" + v + "',"
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ permissionNameStr += "'" + v + "',"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ permissionNameStr = strings.TrimRight(permissionNameStr, ",")
|
|
|
+ list, err := models.GetActivityTypeHomeList()
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp := new(models.ActivityTypeListHomeResp)
|
|
|
+ for k, v := range list {
|
|
|
+ var sqlExport string
|
|
|
+ var condition string
|
|
|
+ permissionSqlStr = ` AND art.chart_permission_name IN (` + permissionNameStr + `)`
|
|
|
+ sqlExport = ` AND (art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' `
|
|
|
+ if userType == 2 {
|
|
|
+ sqlExport += ` OR art.customer_type_ids LIKE '%3%' `
|
|
|
+ }
|
|
|
+ if (userType == 2 || userType == 3) && strings.Contains(permissionStr, "专家") {
|
|
|
+ sqlExport += ` OR art.customer_type_ids LIKE '%4%' `
|
|
|
+ }
|
|
|
+ sqlExport += `) `
|
|
|
+ condition = ` AND art.publish_status = 1 AND art.label != '' AND art.activity_type_id = ` + strconv.Itoa(v.ActivityTypeId)
|
|
|
+ if isPower == 1 {
|
|
|
+ condition += permissionSqlStr
|
|
|
+ }
|
|
|
+ //行业名称
|
|
|
+ if len(chartPermissionIds) > 0 {
|
|
|
+ condition += ` AND art.chart_permission_id IN (` + chartPermissionIds + `)`
|
|
|
+ }
|
|
|
+ var conditionOr string
|
|
|
+ if whichDay != "" {
|
|
|
+ var startDate string
|
|
|
+ var endDate string
|
|
|
+ if whichDay == "1" {
|
|
|
+ startDate = time.Now().Format(utils.FormatDate)
|
|
|
+ endDate = startDate
|
|
|
+ } else if whichDay == "2" {
|
|
|
+ startDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
|
|
|
+ endDate = startDate
|
|
|
+ } else {
|
|
|
+ startDate = time.Now().Format(utils.FormatDate)
|
|
|
+ endDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
|
|
|
+ }
|
|
|
+ condition += ` AND art.activity_time >= ` + "'" + startDate + " 00:00:00'"
|
|
|
+ condition += ` AND art.activity_time <= ` + "'" + endDate + " 23:59:59'"
|
|
|
+ }
|
|
|
+ if activeState != "" {
|
|
|
+ condition += ` AND art.active_state IN (` + activeState + `)`
|
|
|
+ } else {
|
|
|
+ condition += ` AND art.active_state IN (1)`
|
|
|
+ }
|
|
|
+ if (userType == 2 || userType == 3 || userType == 4) && strings.Contains(permissionStr, "专家") {
|
|
|
+ conditionOr += ` OR ( art.is_limit_people = 1 AND art.customer_type_ids LIKE '%4%' ` + condition + `) `
|
|
|
+ }
|
|
|
+ if (userType == 5) && strings.Contains(permissionStr, "专家") {
|
|
|
+ conditionOr += ` OR ( art.is_limit_people = 1 AND art.customer_type_ids LIKE '%5%' ` + condition + `) `
|
|
|
+ }
|
|
|
+ if userType == 1 {
|
|
|
+ conditionOr += ` OR ( art.is_limit_people = 0 ` + condition + permissionSqlStr + `) `
|
|
|
+ } else {
|
|
|
+ conditionOr += ` OR ( art.is_limit_people = 0 ` + condition + `) `
|
|
|
+ }
|
|
|
+ condition += `AND art.is_limit_people = 1 ` + permissionSqlStr + sqlExport + conditionOr
|
|
|
+
|
|
|
+ sortTime = ` mintimesort ASC `
|
|
|
+ list[k].List, err = models.GetActivityLabelListAll(condition, sortTime, pars, startSize, pageSize)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //获取对应活动的数量并排序
|
|
|
+ intArr := make([]int, 0)
|
|
|
+ var items []*models.ActivityTypeHome
|
|
|
+ for _, v := range list {
|
|
|
+ item := new(models.ActivityTypeHome)
|
|
|
+ if len(v.List) > 0 {
|
|
|
+ item.List = v.List
|
|
|
+ item.ActivityTypeName = v.ActivityTypeName
|
|
|
+ item.ActivityTypeId = v.ActivityTypeId
|
|
|
+ items = append(items, item)
|
|
|
+ intArr = append(intArr, len(v.List))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ sort.Sort(sort.Reverse(sort.IntSlice(intArr)))
|
|
|
+ var itemsNew []*models.ActivityTypeHome
|
|
|
+ activityMap := make(map[int]int)
|
|
|
+ for _, v := range intArr {
|
|
|
+ for _, v2 := range items {
|
|
|
+ item := new(models.ActivityTypeHome)
|
|
|
+ if len(v2.List) > 0 && v == len(v2.List) && activityMap[v2.ActivityTypeId] == 0 {
|
|
|
+ item.List = v2.List
|
|
|
+ item.ActivityTypeName = v2.ActivityTypeName
|
|
|
+ item.ActivityTypeId = v2.ActivityTypeId
|
|
|
+ itemsNew = append(itemsNew, item)
|
|
|
+ activityMap[v2.ActivityTypeId] = len(v2.List)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //如果第三个活动数量比第四个多,则两者调换
|
|
|
+ if len(itemsNew) > 3 {
|
|
|
+ if len(itemsNew[2].List) > len(itemsNew[3].List) {
|
|
|
+ var itemsNewCopy []*models.ActivityTypeHome
|
|
|
+ for _, v := range itemsNew {
|
|
|
+ itemsNewCopy = append(itemsNewCopy, v)
|
|
|
+ }
|
|
|
+ itemsNew[2] = itemsNewCopy[3]
|
|
|
+ itemsNew[3] = itemsNewCopy[2]
|
|
|
+ }
|
|
|
+ }
|
|
|
+ resp.List = itemsNew
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = resp
|
|
|
+}
|