Bladeren bron

产品列表

kobe6258 4 maanden geleden
bovenliggende
commit
ab530a051c

+ 6 - 6
common/exception/exc_enums.go

@@ -127,7 +127,7 @@ const (
 
 	MerchantInfoNotConfig
 
-	GetProductListInfoFailed
+	GetProductListFailed
 )
 const (
 	WebhookErrCode int = iota + 80000
@@ -240,11 +240,11 @@ var ErrorMap = map[int]string{
 	GetAnalystMediaListFailed: "查询研究员媒体列表失败",
 	BindMobileFailed:          "绑定手机号失败",
 	//商户
-	ProductInfoError:         "获取商品信息失败",
-	IllegalProductId:         "非法的产品ID",
-	IllegalProductOrderId:    "非法的产品订单ID",
-	MerchantInfoNotConfig:    "商户信息未配置",
-	GetProductListInfoFailed: "获取产品列表失败",
+	ProductInfoError:      "获取商品信息失败",
+	IllegalProductId:      "非法的产品ID",
+	IllegalProductOrderId: "非法的产品订单ID",
+	MerchantInfoNotConfig: "商户信息未配置",
+	GetProductListFailed:  "获取产品列表失败",
 	//webhook
 	SyncRiskError:               "同步风险等级失败",
 	GetCapTokenFailed:           "获取cap token失败",

+ 31 - 6
controllers/product/product_controller.go

@@ -1,10 +1,12 @@
 package product
 
 import (
+	logger "eta/eta_mini_ht_api/common/component/log"
 	"eta/eta_mini_ht_api/common/exception"
 	"eta/eta_mini_ht_api/common/utils/page"
 	"eta/eta_mini_ht_api/controllers"
 	productService "eta/eta_mini_ht_api/service/product"
+	"eta/eta_mini_ht_api/service/user"
 )
 
 var (
@@ -92,21 +94,36 @@ func (p *ProductController) RelatePackage(productId int) {
 func (p *ProductController) ProductSearch(productType, key string, isSignal bool) {
 	controllers.Wrap(&p.BaseController, func() (result *controllers.WrapData, err error) {
 		result = p.InitWrapData("搜索产品信息失败")
+		userInfo := p.Data["user"].(user.User)
 		if !productMap[productType] {
 			err = exception.New(exception.ProductTypeError)
 			p.FailedResult("搜索产品信息失败", result)
 			return
 		}
+		var productList []productService.ProductDTO
+		pageRes := page.Page{
+			Current:  p.PageInfo.Current,
+			PageSize: p.PageInfo.PageSize,
+		}
+		//pageRes.Total, pageRes.LatestId = productService.RangeProductList(isSignal)
+		if p.PageInfo.LatestId == 0 {
+			p.PageInfo.LatestId = pageRes.LatestId
+			p.PageInfo.Total = pageRes.Total
+		} else {
+			pageRes.LatestId = p.PageInfo.LatestId
+			pageRes.Total = p.PageInfo.Total
+		}
+		pageRes.TotalPage = page.TotalPages(pageRes.Total, pageRes.PageSize)
 		//if isSignal {
-		//	productList, err := productService.ProductSearch(productType, key)
+		//	productList, err = productService.ProductSearch(key, userInfo.Id, p.PageInfo)
 		//} else {
-		//	productList, err := productService.PackageSearch(key)
+		//	productList, err = productService.PackageSearch(key, userInfo.Id)
 		//}
 		if err != nil {
 			p.FailedResult("搜索产品信息失败", result)
 			return
 		}
-		p.SuccessResult("搜索产品信息成功", nil, result)
+		p.SuccessResult("搜索产品信息成功", productList, result)
 		return
 	})
 }
@@ -116,19 +133,27 @@ func (p *ProductController) ProductSearch(productType, key string, isSignal bool
 // @Description  产品列表
 // @Success 200 {object} controllers.BaseResponse
 // @router /ProductList [get]
-func (p *ProductController) ProductList(productType string) {
+func (p *ProductController) ProductList(productType string, permissionIds string) {
 	controllers.Wrap(&p.BaseController, func() (result *controllers.WrapData, err error) {
 		result = p.InitWrapData("分页查询产品列表失败")
+		userInfo := p.Data["user"].(user.User)
 		if !productMap[productType] {
 			err = exception.New(exception.ProductTypeError)
 			p.FailedResult("分页查询产品列表失败", result)
 			return
 		}
+		permissionIdList, err := p.TransPermissionIds(permissionIds)
+		if err != nil {
+			logger.Error("品种列表解析错误:%v", err)
+			p.FailedResult("分页查询产品列表失败", result)
+			err = exception.New(exception.GetProductListFailed)
+			return
+		}
 		pageRes := page.Page{
 			Current:  p.PageInfo.Current,
 			PageSize: p.PageInfo.PageSize,
 		}
-		pageRes.Total, pageRes.LatestId = productService.GetTotalPageCountByProductType(productType)
+		pageRes.Total, pageRes.LatestId = productService.GetTotalPageCountByProductType(productType, permissionIdList, userInfo.Id)
 		if p.PageInfo.LatestId == 0 {
 			p.PageInfo.LatestId = pageRes.LatestId
 			p.PageInfo.Total = pageRes.Total
@@ -140,7 +165,7 @@ func (p *ProductController) ProductList(productType string) {
 		list, err := productService.ProductList(productType, p.PageInfo)
 		if err != nil {
 			p.FailedResult("分页查询产品列表失败", result)
-			err = exception.NewWithException(exception.GetProductListInfoFailed, err.Error())
+			err = exception.NewWithException(exception.GetProductListFailed, err.Error())
 			return
 		}
 		productList := new(page.PageResult)

+ 8 - 22
domian/media/media_service.go

@@ -7,16 +7,15 @@ import (
 	logger "eta/eta_mini_ht_api/common/component/log"
 	"eta/eta_mini_ht_api/common/contants"
 	"eta/eta_mini_ht_api/common/utils/page"
-	configService "eta/eta_mini_ht_api/domian/config"
+	configDomain "eta/eta_mini_ht_api/domian/config"
 	reportService "eta/eta_mini_ht_api/domian/report"
 	"eta/eta_mini_ht_api/models"
 	"eta/eta_mini_ht_api/models/image"
 	mediaDao "eta/eta_mini_ht_api/models/media"
 	productDao "eta/eta_mini_ht_api/models/merchant"
-	"fmt"
+	configService "eta/eta_mini_ht_api/service/config"
 	"sort"
 	"strconv"
-	"strings"
 	"time"
 )
 
@@ -145,7 +144,7 @@ func GetMediaPermissionMappingByPermissionIds(mediaType string, permissionIds []
 				ids = append(ids, mediaId)
 			}
 		}
-		riskNum, parseErr := parseRiskLevel(riskLevel)
+		riskNum, parseErr := configService.ParseRiskLevel(riskLevel)
 		if parseErr != nil {
 			logger.Error("解析风险等级失败:%v", err)
 			return
@@ -154,7 +153,7 @@ func GetMediaPermissionMappingByPermissionIds(mediaType string, permissionIds []
 		for _, mediaId := range ids {
 			for _, product := range productList {
 				if product.SourceID == mediaId {
-					pdRiskNum, pdErr := parseRiskLevel(product.RiskLevel)
+					pdRiskNum, pdErr := configService.ParseRiskLevel(product.RiskLevel)
 					if pdErr != nil {
 						logger.Error("解析产品风险等级失败:%v,产品id:%v", pdErr, product.ID)
 						continue
@@ -175,19 +174,6 @@ func GetMediaPermissionMappingByPermissionIds(mediaType string, permissionIds []
 	return 0, 0, []int{}, riskLevel
 }
 
-func parseRiskLevel(level string) (int, error) {
-	parts := strings.Split(level, "R")
-	if len(parts) < 2 {
-		return 0, fmt.Errorf("无效的风险等级: %s", level)
-	}
-	numberStr := parts[1]
-	number, err := strconv.Atoi(numberStr)
-	if err != nil {
-		return 0, fmt.Errorf("无法将风险等级转换为数字: %s", err)
-	}
-	return number, nil
-}
-
 func GetAnalystMediaPermissionMappingByPermissionIds(mediaType string, permissionIds []int, analystId int, mappingRiskLevel string) (total int64, latestId int64, ids []int, riskLevel string) {
 	ids, err := mediaDao.GetMediaPermissionMappingByPermissionId(mediaType, permissionIds)
 	if err != nil {
@@ -219,7 +205,7 @@ func GetAnalystMediaPermissionMappingByPermissionIds(mediaType string, permissio
 				ids = append(ids, mediaId)
 			}
 		}
-		riskNum, parseErr := parseRiskLevel(mappingRiskLevel)
+		riskNum, parseErr := configService.ParseRiskLevel(mappingRiskLevel)
 		if parseErr != nil {
 			logger.Error("解析风险等级失败:%v", err)
 			return
@@ -228,7 +214,7 @@ func GetAnalystMediaPermissionMappingByPermissionIds(mediaType string, permissio
 		for _, mediaId := range ids {
 			for _, product := range productList {
 				if product.SourceID == mediaId {
-					pdRiskNum, pdErr := parseRiskLevel(product.RiskLevel)
+					pdRiskNum, pdErr := configService.ParseRiskLevel(product.RiskLevel)
 					if pdErr != nil {
 						logger.Error("解析产品风险等级失败:%v,产品id:%v", pdErr, product.ID)
 						continue
@@ -317,10 +303,10 @@ func GetMediaById(mediaType string, mediaId int) (mediaDTO MediaDTO, err error)
 	mediaDTO = convertMediaDTO(media, true)
 	return
 }
-func GetPermissionsByIds(ids []int) (permissionDTOs []configService.PermissionDTO, err error) {
+func GetPermissionsByIds(ids []int) (permissionDTOs []configDomain.PermissionDTO, err error) {
 	return reportService.GetFirstPermissionsByIds(ids)
 }
-func GetSecondPermissionsByIds(ids []int) (permissionDTOs []configService.PermissionDTO, err error) {
+func GetSecondPermissionsByIds(ids []int) (permissionDTOs []configDomain.PermissionDTO, err error) {
 	return reportService.GetPermissionsByPermissionIds(ids)
 }
 func matchAllByCondition(sorts []string, key string, column string, value string) (request *es.ESQueryRequest) {

+ 7 - 15
domian/merchant/merchant_product.go

@@ -101,28 +101,20 @@ func GetProductListBySourceIds(ids []int, productType string) (productDTOS []Mer
 	return
 }
 
-func GetTotalPageCountByProductType(productType string) (total int64, latestId int64) {
-	return merchantDao.GetTotalPageCountByProductType(typeKindTransfer[productType])
-}
-
-func GetProductPageByProductType(productType string, info page.PageInfo) (dtoList []MerchantProductDTO, err error) {
-	offset := page.StartIndex(info.Current, info.PageSize)
-	productList, err := merchantDao.GetProductPageByProductType(typeKindTransfer[productType], info.LatestId, offset, info.PageSize)
-	if err != nil {
-		logger.Error("获取商品列表失败[productType:%v,pageInfo:%v],err:%v", productType, info, err)
-		return
-	}
+func GetProductListByProductType(productType string) (list []MerchantProductDTO, err error) {
+	productList, err := merchantDao.GetProductListByProductType(typeKindTransfer[productType], true)
 	for _, product := range productList {
 		productDTO := convertToDTO(product)
-		dtoList = append(dtoList, productDTO)
+		list = append(list, productDTO)
 	}
 	return
 }
 
-func GetProductListByProductType(productType string) (dtoList []MerchantProductDTO, err error) {
-	productList, err := merchantDao.GetProductListByProductType(typeKindTransfer[productType], false)
+func GetProductPageByProductType(productType string, info page.PageInfo) (dtoList []MerchantProductDTO, err error) {
+	offset := page.StartIndex(info.Current, info.PageSize)
+	productList, err := merchantDao.GetProductPageByProductType(typeKindTransfer[productType], info.LatestId, offset, info.PageSize)
 	if err != nil {
-		logger.Error("获取商品列表失败[productType:%v,pageInfo:%v],err:%v", productType, err)
+		logger.Error("获取商品列表失败[productType:%v,pageInfo:%v],err:%v", productType, info, err)
 		return
 	}
 	for _, product := range productList {

+ 1 - 1
domian/order/product_order.go

@@ -129,7 +129,7 @@ func convertProductOrderDetailDTO(order orderDao.ProductOrder) (orderDetailDTO P
 		Remark:           order.Remark,
 	}
 	if order.Status == orderDao.OrderStatusRefund {
-		orderDetailDTO.Status = string(order.RefundStatus)
+		//orderDetailDTO.Status = string(order.RefundStatus)
 		orderDetailDTO.StatusCN = transRefundStatusMap[order.RefundStatus]
 	}
 	if order.Status == orderDao.OrderStatusPending {

+ 3 - 2
domian/report/eta_report_service.go

@@ -5,6 +5,7 @@ import (
 	"eta/eta_mini_ht_api/models/eta"
 	productDao "eta/eta_mini_ht_api/models/merchant"
 	reportDao "eta/eta_mini_ht_api/models/report"
+	"eta/eta_mini_ht_api/service/config"
 	"fmt"
 	"html"
 	"sync"
@@ -96,7 +97,7 @@ func GetETAReportIdsByPermissionIdsWithRiskLevel(permissionIds []int, riskLevel
 		}
 
 	}
-	riskNum, err := parseRiskLevel(riskLevel)
+	riskNum, err := config.ParseRiskLevel(riskLevel)
 	if err != nil {
 		logger.Error("解析风险等级失败:%v", err)
 		return
@@ -106,7 +107,7 @@ func GetETAReportIdsByPermissionIdsWithRiskLevel(permissionIds []int, riskLevel
 	for _, report := range reports {
 		for _, product := range productList {
 			if product.SourceID == report.ID {
-				pdRiskNum, pdErr := parseRiskLevel(product.RiskLevel)
+				pdRiskNum, pdErr := config.ParseRiskLevel(product.RiskLevel)
 				if pdErr != nil {
 					logger.Error("解析产品风险等级失败:%v,产品id:%v", pdErr, product.ID)
 					continue

+ 0 - 16
domian/report/ht_report_service.go

@@ -5,9 +5,6 @@ import (
 	"eta/eta_mini_ht_api/models/ht"
 	productDao "eta/eta_mini_ht_api/models/merchant"
 	reportDao "eta/eta_mini_ht_api/models/report"
-	"fmt"
-	"strconv"
-	"strings"
 )
 
 func GetHTReportIdsByPermissionIds(permissionIds []int) (ids []int, err error) {
@@ -87,16 +84,3 @@ func GetHTReportIdsByPermissionIdsWithRiskLevel(permissionIds []int, riskLevel s
 func GetHtReport(id int) (pdf string, err error) {
 	return ht.GetPDFUrl(id)
 }
-
-func parseRiskLevel(level string) (int, error) {
-	parts := strings.Split(level, "R")
-	if len(parts) < 2 {
-		return 0, fmt.Errorf("无效的风险等级: %s", level)
-	}
-	numberStr := parts[1]
-	number, err := strconv.Atoi(numberStr)
-	if err != nil {
-		return 0, fmt.Errorf("无法将风险等级转换为数字: %s", err)
-	}
-	return number, nil
-}

+ 14 - 1
models/merchant/merchant_product.go

@@ -132,6 +132,19 @@ func GetProductListByProductType(productType MerchantProductType, detail bool) (
 		err = errors.New("productType参数不能为空")
 		return
 	}
-	err = db.Select(columns).Where("id <= ? and type = ? and deleted =? order by created_time desc limit ?,? ", productType, false).Find(&list).Error
+	err = db.Select(columns).Where("id <= ? and type = ? and deleted =? order by created_time desc", productType, false).Find(&list).Error
+	return
+}
+func CountProductList(isSignal bool) (total, latestId int64, ids []int) {
+	db := models.Main()
+	var condition string
+	if isSignal {
+		condition = "type !=?"
+	} else {
+		condition = "type =?"
+	}
+	_ = db.Select("count(*)").Where(" ? and deleted =? order by id desc ", condition, Package, false).Scan(&total).Error
+	_ = db.Select("max(id)").Where(" ? and deleted =? order by id desc ", condition, Package, false).Scan(&total).Error
+	_ = db.Select("id").Where(" ? and deleted =? order by id desc ", condition, Package, false).Scan(&ids).Error
 	return
 }

+ 76 - 10
service/product/product_service.go

@@ -15,6 +15,7 @@ import (
 	"eta/eta_mini_ht_api/service/order"
 	reportService "eta/eta_mini_ht_api/service/report"
 	"fmt"
+	"sync"
 	"time"
 )
 
@@ -24,6 +25,7 @@ type ProductDTO struct {
 	Abstract        string   `json:"abstract"`
 	Src             string   `json:"src"`
 	PermissionNames []string `json:"permissionNames"`
+	PermissionIds   []int    `json:"-"`
 	Description     string   `json:"description"`
 	Price           string   `json:"price"`
 	CoverSrc        int      `json:"coverSrc"`
@@ -37,11 +39,12 @@ type ProductDTO struct {
 	MediaId         int      `json:"mediaId"`
 }
 
-func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel, sourceTitle, sourceAbsract, coverSrc, sourceSrc string, permissionNames []string, err error) {
+func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel, sourceTitle, sourceAbsract, coverSrc, sourceSrc string, permissionNames []string, permissionIds []int, err error) {
 	switch product.Type {
 	case "package":
 		permissionRisk, permissionErr := config.PermissionsByPermissionId(product.SourceId)
 		permissionNames = []string{permissionRisk.Name}
+		permissionIds = []int{product.SourceId}
 		if permissionErr != nil {
 			logger.Error("获取权限信息失败[permissionId:%d]", product.SourceId)
 		} else {
@@ -54,7 +57,7 @@ func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel,
 		if mediaErr != nil {
 			logger.Error("获取媒体信息失败[mediaType:%s,mediaId:%d]", product.Type, product.SourceId)
 		}
-		permissionIds, mediaErr := media.GetMediaPermissionMappingByMedia(product.Type, product.SourceId)
+		permissionIds, mediaErr = media.GetMediaPermissionMappingByMedia(product.Type, product.SourceId)
 		if mediaErr != nil {
 			logger.Error("获取媒体权限失败[mediaType:%s,mediaId:%d]", product.Type, product.SourceId)
 		} else {
@@ -63,7 +66,6 @@ func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel,
 				logger.Error("获取权限信息失败[permissionIds:%v]", permissionIds)
 			}
 			permissionNames = mediaService.GetMediaPermissionNames(permissionIds)
-			//permissionNames = strings.Join(permissionNamesList, ",")
 			riskNum := configService.GetHighestRiskLevel(permissions)
 			riskLevel = fmt.Sprintf("R%d", riskNum)
 		}
@@ -90,6 +92,7 @@ func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel,
 					logger.Error("获取板块权限失败[plateName:%s]", report.PlateName)
 				} else {
 					riskLevel = permission.RiskLevel
+					permissionIds = []int{permission.PermissionId}
 				}
 			case reportDomain.SourceETA:
 				permissions, permissionErr := configService.GetSecondPermissionsByClassifyId(report.ClassifyId)
@@ -97,6 +100,9 @@ func GetProductRiskLevel(product merchantService.MerchantProductDTO) (riskLevel,
 					logger.Error("获取板块权限失败[plateName:%s]", report.PlateName)
 				} else {
 					riskNum := configService.GetHighestRiskLevel(permissions)
+					for _, permission := range permissions {
+						permissionIds = append(permissionIds, permission.PermissionId)
+					}
 					riskLevel = fmt.Sprintf("R%d", riskNum)
 				}
 			}
@@ -115,7 +121,7 @@ func GetProductInfoById(productId int) (product ProductDTO, err error) {
 		return
 	}
 	product = convertToProductDTO(merchantProduct)
-	product.RiskLevel, product.SourceTile, product.Abstract, product.CoverUrl, product.Src, product.PermissionNames, err = GetProductRiskLevel(merchantProduct)
+	product.RiskLevel, product.SourceTile, product.Abstract, product.CoverUrl, product.Src, product.PermissionNames, _, err = GetProductRiskLevel(merchantProduct)
 	if err != nil {
 		logger.Error("获取风险等级失败[productId:%d]", productId)
 	}
@@ -224,25 +230,85 @@ func GetRelatePackage(info ProductDTO) (prodList []ProductDTO, err error) {
 	}
 }
 
-func GetTotalPageCountByProductType(productType string) (total int64, latestId int64) {
-	return merchantService.GetTotalPageCountByProductType(productType)
+func GetTotalPageCountByProductType(productType string, permissionIds []int, templateUserId int) (total int64, latestId int64) {
+	filterPermissionIds, riskLevel, err := reportService.CheckUserRisk(permissionIds, true, templateUserId)
+	if err != nil {
+		return 0, 0
+	}
+	productList, err := merchantService.GetProductListByProductType(productType)
+	var dtoList []*ProductDTO
+	var wg sync.WaitGroup
+	wg.Add(len(productList))
+	for i := 0; i < len(productList); i++ {
+		go func(merchantProduct merchantService.MerchantProductDTO) {
+			defer wg.Done()
+			product := convertToProductDTO(merchantProduct)
+			product.RiskLevel, product.SourceTile, product.Abstract, product.CoverUrl, product.Src, product.PermissionNames, product.PermissionIds, err = GetProductRiskLevel(merchantProduct)
+			if !compare(product.RiskLevel, riskLevel) {
+				return
+			}
+			match := false
+			for _, pdPermissionId := range product.PermissionIds {
+				for _, permissionId := range filterPermissionIds {
+					if pdPermissionId == permissionId {
+						match = true
+						break
+					}
+				}
+			}
 
+			if !match {
+				return
+			}
+			dtoList = append(dtoList, &product)
+		}(productList[i])
+	}
+	wg.Wait()
+	return
 }
 
+func compare(riskLevel, MatchRiskLevel string) bool {
+	pRiskNum, riskErr := configService.ParseRiskLevel(riskLevel)
+	if riskErr != nil {
+		return false
+	}
+	riskLevelNum, riskErr := configService.ParseRiskLevel(MatchRiskLevel)
+	if riskErr != nil {
+		return false
+	}
+	if pRiskNum > riskLevelNum {
+		return true
+	}
+	return false
+}
 func ProductList(productType string, info page.PageInfo) (dtoList []ProductDTO, err error) {
 	var merchantProductList []merchantService.MerchantProductDTO
 	merchantProductList, err = merchantService.GetProductPageByProductType(productType, info)
 	for _, product := range merchantProductList {
 		productDTO := convertToProductDTO(product)
-		productDTO.RiskLevel, productDTO.SourceTile, productDTO.Abstract, productDTO.CoverUrl, productDTO.Src, productDTO.PermissionNames, err = GetProductRiskLevel(product)
+		productDTO.RiskLevel, productDTO.SourceTile, productDTO.Abstract, productDTO.CoverUrl, productDTO.Src, productDTO.PermissionNames, _, err = GetProductRiskLevel(product)
 		dtoList = append(dtoList, productDTO)
 	}
 	return
 }
-
-func ProductSearch(productType string, key string) (list []ProductDTO, err error) {
+func RangeProductList(isSignal bool) (total, latestId int64, ids []int) {
+	//return merchantService.CountProductListByProductType(isSignal)
+	return 0, 0, nil
+}
+func ProductSearch(productType string, key string, templateUserId int, pageInfo page.PageInfo) (list []ProductDTO, err error) {
 	var merchantProductList []merchantService.MerchantProductDTO
 	merchantProductList, err = merchantService.GetProductListByProductType(productType)
+	var sourceIds []int
+	var maxId int
+	for _, product := range merchantProductList {
+		if product.SourceId > maxId {
+			maxId = product.SourceId
+		}
+		sourceIds = append(sourceIds, product.SourceId)
+	}
+	//reportList, err := reportDomain.SearchReportList(key, sourceIds, 1, len(sourceIds), int64(maxId))
+	//mediaList, err := mediaDomain.SearchMediaList(key)
+
 	for _, product := range merchantProductList {
 		productDTO := convertToProductDTO(product)
 		list = append(list, productDTO)
@@ -250,6 +316,6 @@ func ProductSearch(productType string, key string) (list []ProductDTO, err error
 	return
 }
 
-func PackageSearch(key string) (interface{}, interface{}) {
+func PackageSearch(key string, templateUserId int) (list []ProductDTO, err error) {
 	return nil, nil
 }

+ 3 - 3
service/product/subscribe_servcie.go

@@ -37,11 +37,11 @@ func SubscribeList(templateUserId int, productType string, pageInfo page.PageInf
 			}
 			switch product.Type {
 			case "audio", "video":
-				subscribe.RiskLevel, subscribe.SourceTitle, _, subscribe.CoverUrl, subscribe.SourceSrc, subscribe.PermissionNames, err = GetProductRiskLevel(product)
+				subscribe.RiskLevel, subscribe.SourceTitle, _, subscribe.CoverUrl, subscribe.SourceSrc, subscribe.PermissionNames, _, err = GetProductRiskLevel(product)
 			case "report":
-				subscribe.RiskLevel, subscribe.SourceTitle, subscribe.SourceAbstract, subscribe.CoverUrl, _, subscribe.PermissionNames, err = GetProductRiskLevel(product)
+				subscribe.RiskLevel, subscribe.SourceTitle, subscribe.SourceAbstract, subscribe.CoverUrl, _, subscribe.PermissionNames, _, err = GetProductRiskLevel(product)
 			case "package":
-				subscribe.RiskLevel, _, _, subscribe.CoverUrl, _, subscribe.PermissionNames, err = GetProductRiskLevel(product)
+				subscribe.RiskLevel, _, _, subscribe.CoverUrl, _, subscribe.PermissionNames, _, err = GetProductRiskLevel(product)
 			default:
 				logger.Error("未知产品类型[productType:%s]", product.Type)
 				return

+ 1 - 1
service/report/report_service.go

@@ -613,7 +613,7 @@ func CheckUserRisk(permissionIds []int, isLogin bool, userId int) (filterPermiss
 			} else {
 				err = exception.New(exception.TemplateUserFoundFailed)
 			}
-			logger.Error("分页查询报告列表失败:%v", err)
+			logger.Error("分页查询列表失败:%v", err)
 			return
 		}
 		//获取产品风险等级