|
@@ -74,9 +74,9 @@ func GetLatestClassReport(permissionIds []int, userId uint64) (purchaseList []*p
|
|
// 有权限的二级分类
|
|
// 有权限的二级分类
|
|
var reports []*report.Report
|
|
var reports []*report.Report
|
|
var classifyIdSeconds []int
|
|
var classifyIdSeconds []int
|
|
|
|
+ classifyIdSecondMap := make(map[int]bool)
|
|
// 获取晨报和周报以外的其他报告
|
|
// 获取晨报和周报以外的其他报告
|
|
// 获取有权限的二级分类
|
|
// 获取有权限的二级分类
|
|
-
|
|
|
|
chartPermissions, err := chart_permission_search_key_word_mapping.GetChartPermissionByFrom("rddp")
|
|
chartPermissions, err := chart_permission_search_key_word_mapping.GetChartPermissionByFrom("rddp")
|
|
if err != nil {
|
|
if err != nil {
|
|
errMsg = err.Error()
|
|
errMsg = err.Error()
|
|
@@ -87,8 +87,11 @@ func GetLatestClassReport(permissionIds []int, userId uint64) (purchaseList []*p
|
|
for _, v := range chartPermissions {
|
|
for _, v := range chartPermissions {
|
|
for _, myPerId := range permissionIds {
|
|
for _, myPerId := range permissionIds {
|
|
if v.ChartPermissionId == myPerId {
|
|
if v.ChartPermissionId == myPerId {
|
|
- if classifyNameSecond, ok := classifySecondNameMap[v.KeyWord]; ok{
|
|
|
|
- classifyIdSeconds = append(classifyIdSeconds, classifyNameSecond)
|
|
|
|
|
|
+ if classifyIdSecond, ok := classifySecondNameMap[v.KeyWord]; ok {
|
|
|
|
+ if _, ok2 := classifyIdSecondMap[classifyIdSecond]; !ok2 {
|
|
|
|
+ classifyIdSeconds = append(classifyIdSeconds, classifyIdSecond)
|
|
|
|
+ classifyIdSecondMap[classifyIdSecond] = true
|
|
|
|
+ }
|
|
}
|
|
}
|
|
break
|
|
break
|
|
}
|
|
}
|
|
@@ -114,6 +117,27 @@ func GetLatestClassReport(permissionIds []int, userId uint64) (purchaseList []*p
|
|
return
|
|
return
|
|
}
|
|
}
|
|
if len(reports) > 0 {
|
|
if len(reports) > 0 {
|
|
|
|
+ otherLatestItem := new(purchase.PurchaseListItem)
|
|
|
|
+ // 处理其他报告()
|
|
|
|
+ for _, v := range reports {
|
|
|
|
+ temp := new(purchase.PurchaseListItem)
|
|
|
|
+ temp.ReportId = v.Id
|
|
|
|
+ temp.ClassifyIdFirst = v.ClassifyIdFirst
|
|
|
|
+ temp.ClassifyNameFirst = v.ClassifyNameFirst
|
|
|
|
+ temp.Stage = v.Stage
|
|
|
|
+ temp.Title = v.Title
|
|
|
|
+ temp.ClassifyIdSecond = v.ClassifyIdSecond
|
|
|
|
+ temp.ClassifyNameSecond = v.ClassifyNameSecond
|
|
|
|
+ temp.Time = v.PublishTime
|
|
|
|
+ if temp.ClassifyNameFirst == "大事点评" || temp.ClassifyNameFirst == "会议纪要" || temp.ClassifyNameFirst == "年报合集"{
|
|
|
|
+ if otherLatestItem.Time.Format(utils.FormatDateTime) > v.PublishTime.Format(utils.FormatDateTime) {
|
|
|
|
+ continue
|
|
|
|
+ }
|
|
|
|
+ temp.Unread = unReadItem["大事点评"] + unReadItem["会议纪要"] + unReadItem["年报合集"]
|
|
|
|
+ temp.Content = fmt.Sprintf("【第%d期|FICC】%s", temp.Stage, temp.ClassifyNameFirst)
|
|
|
|
+ otherLatestItem = temp
|
|
|
|
+ }
|
|
|
|
+ }
|
|
for _, v := range reports {
|
|
for _, v := range reports {
|
|
temp := new(purchase.PurchaseListItem)
|
|
temp := new(purchase.PurchaseListItem)
|
|
temp.ReportId = v.Id
|
|
temp.ReportId = v.Id
|
|
@@ -123,11 +147,15 @@ func GetLatestClassReport(permissionIds []int, userId uint64) (purchaseList []*p
|
|
temp.Title = v.Title
|
|
temp.Title = v.Title
|
|
temp.ClassifyIdSecond = v.ClassifyIdSecond
|
|
temp.ClassifyIdSecond = v.ClassifyIdSecond
|
|
temp.ClassifyNameSecond = v.ClassifyNameSecond
|
|
temp.ClassifyNameSecond = v.ClassifyNameSecond
|
|
|
|
+ temp.Time = v.PublishTime
|
|
|
|
+ temp.Unread = unReadItem[temp.ClassifyNameFirst]
|
|
if imgUrl, ok := classifyFirstIconMap[temp.ClassifyIdFirst]; ok {
|
|
if imgUrl, ok := classifyFirstIconMap[temp.ClassifyIdFirst]; ok {
|
|
temp.ImgUrl = imgUrl
|
|
temp.ImgUrl = imgUrl
|
|
}
|
|
}
|
|
if temp.ClassifyNameFirst == "晨报" || temp.ClassifyNameFirst == "周报" { //晨报或者周报,查询最新的章节信息
|
|
if temp.ClassifyNameFirst == "晨报" || temp.ClassifyNameFirst == "周报" { //晨报或者周报,查询最新的章节信息
|
|
temp.Content = fmt.Sprintf("【第%d期|FICC】%s", temp.Stage, temp.Title)
|
|
temp.Content = fmt.Sprintf("【第%d期|FICC】%s", temp.Stage, temp.Title)
|
|
|
|
+ }else if temp.ClassifyNameFirst == "大事点评" || temp.ClassifyNameFirst == "会议纪要" || temp.ClassifyNameFirst == "年报合集"{
|
|
|
|
+ continue
|
|
}else{
|
|
}else{
|
|
if temp.ClassifyIdSecond > 0 { //包含二级分类
|
|
if temp.ClassifyIdSecond > 0 { //包含二级分类
|
|
temp.Content = fmt.Sprintf("【第%d期|FICC| %s】%s", temp.Stage, temp.ClassifyNameSecond, temp.ClassifyNameFirst)
|
|
temp.Content = fmt.Sprintf("【第%d期|FICC| %s】%s", temp.Stage, temp.ClassifyNameSecond, temp.ClassifyNameFirst)
|
|
@@ -136,14 +164,15 @@ func GetLatestClassReport(permissionIds []int, userId uint64) (purchaseList []*p
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- temp.Time = v.PublishTime
|
|
|
|
- temp.Unread = unReadItem[temp.ClassifyNameFirst]
|
|
|
|
purchaseList = append(purchaseList, temp)
|
|
purchaseList = append(purchaseList, temp)
|
|
}
|
|
}
|
|
|
|
+ purchaseList = append(purchaseList, otherLatestItem)
|
|
}
|
|
}
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+
|
|
// GetPurchaseDetail 已购详情页面
|
|
// GetPurchaseDetail 已购详情页面
|
|
func GetPurchaseDetail(permissionIds []int, userId uint64, classifyIdFirst int, pageIndex, pageSize int) (ret *purchase.DetailResp, err error) {
|
|
func GetPurchaseDetail(permissionIds []int, userId uint64, classifyIdFirst int, pageIndex, pageSize int) (ret *purchase.DetailResp, err error) {
|
|
var errMsg string
|
|
var errMsg string
|
|
@@ -166,6 +195,8 @@ func GetPurchaseDetail(permissionIds []int, userId uint64, classifyIdFirst int,
|
|
err = errors.New("分类不存在")
|
|
err = errors.New("分类不存在")
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
classifyNameFirst := classifyInfo.ClassifyName
|
|
classifyNameFirst := classifyInfo.ClassifyName
|
|
offset := (pageIndex - 1) * pageSize
|
|
offset := (pageIndex - 1) * pageSize
|
|
var total int64
|
|
var total int64
|
|
@@ -216,14 +247,25 @@ func GetPurchaseDetail(permissionIds []int, userId uint64, classifyIdFirst int,
|
|
for _, v := range chartPermissions {
|
|
for _, v := range chartPermissions {
|
|
for _, myPerId := range permissionIds {
|
|
for _, myPerId := range permissionIds {
|
|
if v.ChartPermissionId == myPerId {
|
|
if v.ChartPermissionId == myPerId {
|
|
- classifyNameSeconds = append(classifyNameSeconds, v.KeyWord)
|
|
|
|
|
|
+ if classifyNameFirst == "大事点评" || classifyNameFirst == "会议纪要" || classifyNameFirst == "年报合集" {
|
|
|
|
+ if v.KeyWord == "大事点评" || v.KeyWord == "会议纪要" || v.KeyWord == "年报合集" { //筛选出用户有权限的二级分类ID
|
|
|
|
+ classifyNameSeconds = append(classifyNameSeconds, v.KeyWord)
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ classifyNameSeconds = append(classifyNameSeconds, v.KeyWord)
|
|
|
|
+ }
|
|
break
|
|
break
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
//获取所有二级分类的id
|
|
//获取所有二级分类的id
|
|
- classifyIdSeconds, tErr = classify.GetIdsByClassifyNameAndParentId(classifyNameSeconds, classifyIdFirst)
|
|
|
|
|
|
+ if classifyNameFirst == "大事点评" || classifyNameFirst == "会议纪要" || classifyNameFirst == "年报合集" {
|
|
|
|
+ classifyIdSeconds, tErr = classify.GetOtherIdsByClassifyNames(classifyNameSeconds)
|
|
|
|
+ }else{
|
|
|
|
+ classifyIdSeconds, tErr = classify.GetIdsByClassifyNameAndParentId(classifyNameSeconds, classifyIdFirst)
|
|
|
|
+ }
|
|
|
|
+
|
|
if tErr != nil {
|
|
if tErr != nil {
|
|
errMsg = tErr.Error()
|
|
errMsg = tErr.Error()
|
|
err = errors.New("二级分类查询出错")
|
|
err = errors.New("二级分类查询出错")
|
|
@@ -231,11 +273,11 @@ func GetPurchaseDetail(permissionIds []int, userId uint64, classifyIdFirst int,
|
|
}
|
|
}
|
|
if len(classifyIdSeconds) > 0 {
|
|
if len(classifyIdSeconds) > 0 {
|
|
//分类获取
|
|
//分类获取
|
|
- reports, err = report.GetListByClassifyIdSecondsAndClassifyIdFirst(classifyIdSeconds, classifyIdFirst, offset, pageSize)
|
|
|
|
|
|
+ reports, err = report.GetListByClassifyIdSeconds(classifyIdSeconds, offset, pageSize)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- total, err = report.GetListCountByClassifyIdSecondsAndClassifyIdFirst(classifyIdSeconds, classifyIdFirst)
|
|
|
|
|
|
+ total, err = report.GetListCountByClassifyIdSeconds(classifyIdSeconds)
|
|
if err != nil {
|
|
if err != nil {
|
|
errMsg = err.Error()
|
|
errMsg = err.Error()
|
|
err = errors.New("查询报告总数出错")
|
|
err = errors.New("查询报告总数出错")
|