Browse Source

周度思考与产业透视处理

xingzai 2 years ago
parent
commit
5439b8f3f3
3 changed files with 31 additions and 7 deletions
  1. 12 1
      controllers/tactics.go
  2. 13 0
      models/report_mapping.go
  3. 6 6
      services/article.go

+ 12 - 1
controllers/tactics.go

@@ -118,7 +118,18 @@ func (this *TacticsController) List() {
 		listTacticsSrt = strings.TrimRight(listTacticsSrt, ",")
 		condition = ` AND category_id IN(` + listTacticsSrt + `)`
 	} else {
-		condition = ` AND category_id IN(` + strconv.Itoa(categoryId) + `)`
+		categoryIdSet, errCategory := models.GetdetailByCategoryIdSet(categoryId)
+		if errCategory != nil {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "获取信息失败,Err:" + errCategory.Error() + "categoryID 不存在:" + strconv.Itoa(categoryId)
+			return
+		}
+		if categoryIdSet != "" {
+			condition = ` AND category_id IN(` + categoryIdSet + `)`
+		} else {
+			condition = ` AND category_id IN(` + strconv.Itoa(categoryId) + `)`
+		}
+
 	}
 	total, err = models.GetHomeCount(condition, pars)
 	if err != nil {

+ 13 - 0
models/report_mapping.go

@@ -115,6 +115,19 @@ func GetdetailByCategoryId(categoryId int) (item *ReportMapping, err error) {
 	return
 }
 
+//通过分类ID获取详情
+func GetdetailByCategoryIdSet(categoryId int) (ids string, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT
+		GROUP_CONCAT( DISTINCT category_id SEPARATOR ',' ) AS ids 
+	FROM
+		cygx_report_mapping 
+	WHERE
+		category_id_set = ? `
+	err = o.Raw(sql, categoryId).QueryRow(&ids)
+	return
+}
+
 //通过分类ID获取详情
 func GetdetailByCategoryIdPush(categoryId int) (item *ReportMapping, err error) {
 	o := orm.NewOrm()

+ 6 - 6
services/article.go

@@ -822,10 +822,10 @@ func HandleArticleListByApi(artcleId int) (err error) {
 		fmt.Println("GetTacticsList Err:", errMatch.Error())
 		return err
 	}
-	mapCategoryIdSet := make(map[int]int)
-	for _, vMatch := range listGetMatchTypeName {
-		mapCategoryIdSet[vMatch.CategoryId] = vMatch.CategoryIdSet
-	}
+	//mapCategoryIdSet := make(map[int]int)
+	//for _, vMatch := range listGetMatchTypeName {
+	//	mapCategoryIdSet[vMatch.CategoryId] = vMatch.CategoryIdSet
+	//}
 	fmt.Println("list len:", len(list))
 	noSummaryArticleIds := "3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470" //非纪要库类型的文章ID
 	listNoSummaryArticleIds := strings.Split(noSummaryArticleIds, ",")
@@ -917,7 +917,7 @@ func HandleArticleListByApi(artcleId int) (err error) {
 				}
 			}
 			if isCustom == false {
-				updateParams["CategoryId"] = mapCategoryIdSet[v.CategoryId]
+				updateParams["CategoryId"] = v.CategoryId
 				updateParams["MatchTypeName"] = matchTypeName
 				updateParams["IsSummary"] = v.IsSummary
 				updateParams["IsReport"] = v.IsReport
@@ -958,7 +958,7 @@ func HandleArticleListByApi(artcleId int) (err error) {
 			item.Abstract = html.EscapeString(v.Abstract)
 			item.CategoryName = v.CategoryName
 			item.SubCategoryName = v.SubCategoryName
-			item.CategoryId = mapCategoryIdSet[v.CategoryId]
+			item.CategoryId = v.CategoryId
 			item.CategoryIdTwo = v.CategoryId
 			item.PublishStatus = 1
 			item.ExpertBackground = expertContentStr