1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- package controllers
- import (
- "hongze/hongze_cygx/models"
- "hongze/hongze_cygx/services"
- "hongze/hongze_cygx/utils"
- "html"
- "rdluck_tools/paging"
- "strconv"
- "strings"
- )
- //策略
- type TacticsController struct {
- BaseAuthController
- }
- type TacticsCommonController struct {
- BaseCommonController
- }
- // @Title 策略列表接口
- // @Description 获取策略列表接口
- // @Param PageSize query int true "每页数据条数"
- // @Param CurrentIndex query int true "当前页页码,从1开始"
- // @Param CategoryId query int true "分类ID"
- // @Success 200 {object} models.TacticsListResp
- // @router /list [get]
- func (this *TacticsController) List() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- pageSize, _ := this.GetInt("PageSize")
- currentIndex, _ := this.GetInt("CurrentIndex")
- categoryId, _ := this.GetInt("CategoryId")
- var startSize int
- if pageSize <= 0 {
- pageSize = utils.PageSize20
- }
- if currentIndex <= 0 {
- currentIndex = 1
- }
- startSize = paging.StartIndex(currentIndex, pageSize)
- var condition string
- var listTacticsSrt string
- var pars []interface{}
- var total int
- resp := new(models.TacticsListResp)
- page := paging.GetPaging(currentIndex, pageSize, total)
- if categoryId < 1 {
- listTactics, err := models.GetReportMappingStrategyAll()
- if err != nil && err.Error() != utils.ErrNoRow() {
- br.Msg = "获取信息失败"
- br.ErrMsg = "获取分类权限信息失败,Err:" + err.Error()
- return
- }
- for _, v := range listTactics {
- listTacticsSrt = listTacticsSrt + strconv.Itoa(v.CategoryId) + `,`
- }
- listTacticsSrt = strings.TrimRight(listTacticsSrt, ",")
- condition = ` AND category_id IN(` + listTacticsSrt + `)`
- } else {
- condition = ` AND category_id IN(` + strconv.Itoa(categoryId) + `)`
- }
- total, err := models.GetHomeCount(condition, pars)
- if err != nil {
- br.Msg = "获取信息失败"
- br.Msg = "获取帖子总数失败,Err:" + err.Error()
- return
- }
- page = paging.GetPaging(currentIndex, pageSize, total)
- list, err := models.GetReportTacticsList(condition, pars, startSize, pageSize)
- if err != nil {
- br.Msg = "获取信息失败"
- br.Msg = "获取帖子数据失败,Err:" + err.Error()
- return
- }
- lenList := len(list)
- for i := 0; i < lenList; i++ {
- item := list[i]
- list[i].Body, _ = services.GetReportContentTextSub(item.Body)
- list[i].Abstract = html.UnescapeString(item.Abstract)
- }
- resp.List = list
- resp.Paging = page
- br.Ret = 200
- br.Success = true
- br.Msg = "获取成功"
- br.Data = resp
- }
|