|
@@ -408,6 +408,7 @@ func (this *ReportController) IndustryList() {
|
|
|
// @Title 产业下所关联的文章分类列表
|
|
|
// @Description 产业下所关联的文章分类列表接口
|
|
|
// @Param IndustrialManagementId query int true "产业ID"
|
|
|
+// @Param ShowTimeLine query int true "是否展示时间线 0不展示,1展示"
|
|
|
// @Success 200 {object} models.IndustrialToArticleCategoryListRep
|
|
|
// @router /toArticleCategoryList [get]
|
|
|
func (this *ReportController) ArticleCategoryList() {
|
|
@@ -428,6 +429,7 @@ func (this *ReportController) ArticleCategoryList() {
|
|
|
br.Msg = "请输入分类ID"
|
|
|
return
|
|
|
}
|
|
|
+ showTimeLine, _ := this.GetInt("ShowTimeLine", 0)
|
|
|
|
|
|
detail, err := models.GetIndustrialManagementDetail(industrialManagementId)
|
|
|
if err != nil {
|
|
@@ -516,6 +518,24 @@ func (this *ReportController) ArticleCategoryList() {
|
|
|
videoSimple.ResourceUrl = ""
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ //detail, err := models.GetIndustrialManagementDetail(industrialManagementId)
|
|
|
+ //if err != nil {
|
|
|
+ // br.Msg = "获取信息失败"
|
|
|
+ // br.ErrMsg = "获取信息失败,Err:" + err.Error()
|
|
|
+ // return
|
|
|
+ //}
|
|
|
+
|
|
|
+ //时间线
|
|
|
+ if showTimeLine == 1 {
|
|
|
+ timeLineItem := models.IndustrialToArticleCategoryRep{
|
|
|
+ CategoryId: 99999,
|
|
|
+ MatchTypeName: "时间线",
|
|
|
+ }
|
|
|
+
|
|
|
+ list = append([]*models.IndustrialToArticleCategoryRep{&timeLineItem}, list...)
|
|
|
+ }
|
|
|
+
|
|
|
resp := new(models.IndustrialToArticleCategoryListRep)
|
|
|
resp.List = list
|
|
|
resp.LayoutTime = utils.TimeRemoveHms(detail.LayoutTime)
|
|
@@ -568,7 +588,7 @@ func (this *ReportController) List() {
|
|
|
startSize = paging.StartIndex(currentIndex, pageSize)
|
|
|
var pars []interface{}
|
|
|
var total int
|
|
|
- resp := new(models.TacticsListResp)
|
|
|
+
|
|
|
page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
|
|
|
if categoryId < 1 {
|
|
@@ -579,93 +599,205 @@ func (this *ReportController) List() {
|
|
|
br.Msg = "请输入产业ID"
|
|
|
return
|
|
|
}
|
|
|
- //获取该产业下所对应的行业图片
|
|
|
- detail, errCategory := models.GetdetailByCategoryIdOne(categoryId)
|
|
|
- if errCategory != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取信息失败,Err:" + errCategory.Error() + "categoryID 不存在:" + strconv.Itoa(categoryId)
|
|
|
- return
|
|
|
- }
|
|
|
- //对应行业的图片
|
|
|
- detailChartPermissionUrl, err := models.GetConfigByCode("category_chart_permissionimg_url")
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取数据失败"
|
|
|
- br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- chartPermissionUrlList := strings.Split(detailChartPermissionUrl.ConfigValue, "{|}")
|
|
|
- mapChartPermission := make(map[string]string)
|
|
|
- var permissionName string
|
|
|
- var imgUrlChartPermission string
|
|
|
- for _, v := range chartPermissionUrlList {
|
|
|
- vslice := strings.Split(v, "_")
|
|
|
- permissionName = vslice[0]
|
|
|
- imgUrlChartPermission = vslice[len(vslice)-1]
|
|
|
- mapChartPermission[permissionName] = imgUrlChartPermission
|
|
|
- }
|
|
|
+ if categoryId != 99999 {
|
|
|
+ resp := new(models.TacticsListResp)
|
|
|
+ //获取该产业下所对应的行业图片
|
|
|
+ detail, errCategory := models.GetdetailByCategoryIdOne(categoryId)
|
|
|
+ if errCategory != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取信息失败,Err:" + errCategory.Error() + "categoryID 不存在:" + strconv.Itoa(categoryId)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //对应行业的图片
|
|
|
+ detailChartPermissionUrl, err := models.GetConfigByCode("category_chart_permissionimg_url")
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败"
|
|
|
+ br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ chartPermissionUrlList := strings.Split(detailChartPermissionUrl.ConfigValue, "{|}")
|
|
|
+ mapChartPermission := make(map[string]string)
|
|
|
+ var permissionName string
|
|
|
+ var imgUrlChartPermission string
|
|
|
+ for _, v := range chartPermissionUrlList {
|
|
|
+ vslice := strings.Split(v, "_")
|
|
|
+ permissionName = vslice[0]
|
|
|
+ imgUrlChartPermission = vslice[len(vslice)-1]
|
|
|
+ mapChartPermission[permissionName] = imgUrlChartPermission
|
|
|
+ }
|
|
|
|
|
|
- total, err = models.GetReportIndustrialCount(categoryId, industrialManagementId)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取帖子总数失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- page = paging.GetPaging(currentIndex, pageSize, total)
|
|
|
- list, err := models.GetReportIndustrialList(pars, categoryId, industrialManagementId, uid, startSize, pageSize)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取信息失败"
|
|
|
- br.ErrMsg = "获取帖子数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- //对应分类的所图片
|
|
|
- detailCategoryUrl, err := models.GetConfigByCode("category_map_img_url")
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取数据失败"
|
|
|
- br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- categoryUrlList := strings.Split(detailCategoryUrl.ConfigValue, "{|}")
|
|
|
- mapCategoryUrl := make(map[string]string)
|
|
|
- var categoryIdStr string
|
|
|
- var imgUrlChart string
|
|
|
- for _, v := range categoryUrlList {
|
|
|
- vslice := strings.Split(v, "_")
|
|
|
- categoryIdStr = vslice[0]
|
|
|
- imgUrlChart = vslice[len(vslice)-1]
|
|
|
- mapCategoryUrl[categoryIdStr] = imgUrlChart
|
|
|
- }
|
|
|
- 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)
|
|
|
- list[i].Abstract, _ = services.GetReportContentTextSub(item.Abstract)
|
|
|
- }
|
|
|
+ total, err = models.GetReportIndustrialCount(categoryId, industrialManagementId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取帖子总数失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ page = paging.GetPaging(currentIndex, pageSize, total)
|
|
|
+ list, err := models.GetReportIndustrialList(pars, categoryId, industrialManagementId, uid, startSize, pageSize)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取帖子数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //对应分类的所图片
|
|
|
+ detailCategoryUrl, err := models.GetConfigByCode("category_map_img_url")
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败"
|
|
|
+ br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ categoryUrlList := strings.Split(detailCategoryUrl.ConfigValue, "{|}")
|
|
|
+ mapCategoryUrl := make(map[string]string)
|
|
|
+ var categoryIdStr string
|
|
|
+ var imgUrlChart string
|
|
|
+ for _, v := range categoryUrlList {
|
|
|
+ vslice := strings.Split(v, "_")
|
|
|
+ categoryIdStr = vslice[0]
|
|
|
+ imgUrlChart = vslice[len(vslice)-1]
|
|
|
+ mapCategoryUrl[categoryIdStr] = imgUrlChart
|
|
|
+ }
|
|
|
+ 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)
|
|
|
+ list[i].Abstract, _ = services.GetReportContentTextSub(item.Abstract)
|
|
|
+ }
|
|
|
+
|
|
|
+ for k, v := range list {
|
|
|
+ if v.Readnum == 0 && user.CreatedTime.Before(utils.StrTimeToTime(v.PublishDate)) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(v.PublishDate)) {
|
|
|
+ list[k].IsRed = true
|
|
|
+ }
|
|
|
+ if v.VideoUrl != "" {
|
|
|
+ list[k].IsHaveVideo = true
|
|
|
+ }
|
|
|
+ list[k].ImgUrlPc = mapCategoryUrl[v.CategoryId]
|
|
|
|
|
|
- for k, v := range list {
|
|
|
- if v.Readnum == 0 && user.CreatedTime.Before(utils.StrTimeToTime(v.PublishDate)) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(v.PublishDate)) {
|
|
|
- list[k].IsRed = true
|
|
|
+ if mapCategoryUrl[v.CategoryId] == "" {
|
|
|
+ if detail.ChartPermissionId == utils.YI_YAO_ID {
|
|
|
+ list[k].ImgUrlPc = utils.YI_YAO_QI_TA
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ resp.CategoryImgUrlPc = mapChartPermission[detail.ChartPermissionName]
|
|
|
+ resp.ChartPermissionId = detail.ChartPermissionId
|
|
|
+ resp.List = list
|
|
|
+ resp.Paging = page
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = resp
|
|
|
+ } else {
|
|
|
+ //获取该产业下所对应的行业图片
|
|
|
+ //因为时间线不属于数据表里的二级分类,所以图片Id用产业id查到的list中的任意一个categoryId取到的图片替代
|
|
|
+ categoryList, err := models.IndustrialToArticleCategoryNew(industrialManagementId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取品种信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
}
|
|
|
- if v.VideoUrl != "" {
|
|
|
- list[k].IsHaveVideo = true
|
|
|
+ var timeLineCategoryId int
|
|
|
+ if len(categoryList) > 0 {
|
|
|
+ timeLineCategoryId = categoryList[0].CategoryId
|
|
|
}
|
|
|
- list[k].ImgUrlPc = mapCategoryUrl[v.CategoryId]
|
|
|
|
|
|
- if mapCategoryUrl[v.CategoryId] == "" {
|
|
|
- if detail.ChartPermissionId == utils.YI_YAO_ID {
|
|
|
- list[k].ImgUrlPc = utils.YI_YAO_QI_TA
|
|
|
+ var detail *models.ReportMapping
|
|
|
+ var errCategory error
|
|
|
+
|
|
|
+ if timeLineCategoryId > 0 {
|
|
|
+ detail, errCategory = models.GetdetailByCategoryIdOne(timeLineCategoryId)
|
|
|
+ if errCategory != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取信息失败,Err:" + errCategory.Error() + "categoryID 不存在:" + strconv.Itoa(categoryId)
|
|
|
+ return
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- resp.CategoryImgUrlPc = mapChartPermission[detail.ChartPermissionName]
|
|
|
- resp.ChartPermissionId = detail.ChartPermissionId
|
|
|
- resp.List = list
|
|
|
- resp.Paging = page
|
|
|
- br.Ret = 200
|
|
|
- br.Success = true
|
|
|
- br.Msg = "获取成功"
|
|
|
- br.Data = resp
|
|
|
+ //对应行业的图片
|
|
|
+ detailChartPermissionUrl, err := models.GetConfigByCode("category_chart_permissionimg_url")
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败"
|
|
|
+ br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ chartPermissionUrlList := strings.Split(detailChartPermissionUrl.ConfigValue, "{|}")
|
|
|
+ mapChartPermission := make(map[string]string)
|
|
|
+ var permissionName string
|
|
|
+ var imgUrlChartPermission string
|
|
|
+ for _, v := range chartPermissionUrlList {
|
|
|
+ vslice := strings.Split(v, "_")
|
|
|
+ permissionName = vslice[0]
|
|
|
+ imgUrlChartPermission = vslice[len(vslice)-1]
|
|
|
+ mapChartPermission[permissionName] = imgUrlChartPermission
|
|
|
+ }
|
|
|
+
|
|
|
+ total, err := models.GetTimeLineReportIndustrialCount(industrialManagementId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取帖子总数失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ page = paging.GetPaging(currentIndex, pageSize, total)
|
|
|
+ list, err := models.GetTimeLineReportIndustrialList(industrialManagementId, startSize, pageSize)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取帖子数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //对应分类的所图片
|
|
|
+ detailCategoryUrl, err := models.GetConfigByCode("category_map_img_url")
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败"
|
|
|
+ br.ErrMsg = "行业配置信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ categoryUrlList := strings.Split(detailCategoryUrl.ConfigValue, "{|}")
|
|
|
+ mapCategoryUrl := make(map[string]string)
|
|
|
+ var categoryIdStr string
|
|
|
+ var imgUrlChart string
|
|
|
+ for _, v := range categoryUrlList {
|
|
|
+ vslice := strings.Split(v, "_")
|
|
|
+ categoryIdStr = vslice[0]
|
|
|
+ imgUrlChart = vslice[len(vslice)-1]
|
|
|
+ mapCategoryUrl[categoryIdStr] = imgUrlChart
|
|
|
+ }
|
|
|
+
|
|
|
+ //lenList := len(list)
|
|
|
+ //for i := 0; i < lenList; i++ {
|
|
|
+ // item := list[i]
|
|
|
+ // list[i].Content, _ = services.GetReportContentTextSub(item.Content)
|
|
|
+ // //list[i].Abstract = html.UnescapeString(item.Abstract)
|
|
|
+ // //list[i].Abstract, _ = services.GetReportContentTextSub(item.Abstract)
|
|
|
+ //}
|
|
|
+
|
|
|
+ for k, v := range list {
|
|
|
+ //if v.Readnum == 0 && user.CreatedTime.Before(utils.StrTimeToTime(v.PublishDate)) && utils.StrTimeToTime(utils.OnlineTime).Before(utils.StrTimeToTime(v.PublishDate)) {
|
|
|
+ // list[k].IsRed = true
|
|
|
+ //}
|
|
|
+ if v.VideoUrl != "" {
|
|
|
+ list[k].IsHaveVideo = true
|
|
|
+ }
|
|
|
+ id := strconv.Itoa(timeLineCategoryId)
|
|
|
+ list[k].ImgUrlPc = mapCategoryUrl[id]
|
|
|
+
|
|
|
+ if mapCategoryUrl[id] == "" {
|
|
|
+ if detail.ChartPermissionId == utils.YI_YAO_ID {
|
|
|
+ list[k].ImgUrlPc = utils.YI_YAO_QI_TA
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ resp := new(models.TimeLineReportListResp)
|
|
|
+ resp.CategoryImgUrlPc = mapChartPermission[detail.ChartPermissionName]
|
|
|
+
|
|
|
+ resp.List = list
|
|
|
+ resp.Paging = page
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = resp
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// @Title 置顶/取消置顶
|
|
@@ -2903,3 +3035,66 @@ func (this *ReportController) SearchReportAndResource() {
|
|
|
br.Msg = "获取成功"
|
|
|
br.Data = resp
|
|
|
}
|
|
|
+
|
|
|
+// @Title 产业报告公司列表
|
|
|
+// @Description 获取产业报告公司列表接口
|
|
|
+// @Param ChartPermissionId query int true "行业id"
|
|
|
+// @Success 200 {object} models.IndustrialManagementList
|
|
|
+// @router /home/stockName [get]
|
|
|
+func (this *ReportController) StockNameList() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ user := this.User
|
|
|
+ if user == nil {
|
|
|
+ br.Msg = "请重新登录"
|
|
|
+ br.Ret = 408
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //uid := user.UserId
|
|
|
+ chartPermissionId, _ := this.GetInt("ChartPermissionId")
|
|
|
+
|
|
|
+ list, err := models.GetSummaryArticle(chartPermissionId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取综述报告公司名称失败"
|
|
|
+ br.ErrMsg = "获取综述报告公司名称失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for _, item := range list {
|
|
|
+ sliceSubjects := strings.Split(item.Stock, "/")
|
|
|
+ if len(sliceSubjects) > 0 {
|
|
|
+ for i, vSubject := range sliceSubjects {
|
|
|
+ sliceKuohao := strings.Split(vSubject, "(") //过滤括号
|
|
|
+ sliceXiahuaxian := strings.Split(sliceKuohao[0], "-") //过滤下划线
|
|
|
+ subject := sliceXiahuaxian[0]
|
|
|
+ if i > 0 {
|
|
|
+ newItem := models.SummaryArticleStock{
|
|
|
+ Id: item.Id,
|
|
|
+ ArticleId: item.ArticleId,
|
|
|
+ Stock: subject,
|
|
|
+ }
|
|
|
+ list = append(list, &newItem)
|
|
|
+ } else {
|
|
|
+ item.Stock = subject
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //index := strings.Index(item.Stock, "(")
|
|
|
+ //item.Stock = item.Stock[:index]
|
|
|
+ //if strings.Contains(item.Stock, "-B"){
|
|
|
+ // item.Stock = strings.Replace(item.Stock, "-B", "", -1)
|
|
|
+ //}
|
|
|
+ //if strings.Contains(item.Stock, "-W"){
|
|
|
+ // item.Stock = strings.Replace(item.Stock, "-W", "", -1)
|
|
|
+ //}
|
|
|
+ }
|
|
|
+ resp := new(models.SummaryArticleStockResp)
|
|
|
+ resp.List = list
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = resp
|
|
|
+}
|