inleft
2022-08-25 d807fd2490a86bc99bb5abbe9566a63af63a6131
snowy-main/src/main/java/vip/xiaonuo/modular/blogStatistics/BlogStatisticsController.java
@@ -24,6 +24,7 @@
 */
package vip.xiaonuo.modular.blogStatistics;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import org.springframework.web.bind.annotation.GetMapping;
@@ -47,6 +48,7 @@
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
 * blog文章控制器 (提供给外部blog系统查询)
@@ -83,10 +85,10 @@
                .eq(BlogArticleComment::getVisitorNickName, MyConstant.inleft)
                .orderByDesc(BlogArticleComment::getCreateDate)
                .last(MyConstant.limit)
                .select(BlogArticleComment::getId,BlogArticleComment::getCreateDate)
                .select(BlogArticleComment::getId, BlogArticleComment::getCreateDate)
                .one();
        if (comment != null && comment.getUpdateDate() != null
        if (comment != null && comment.getCreateDate() != null
                && lastUpdateBlog != null
                && lastUpdateBlog.getCreateDate().before(comment.getCreateDate())) {
            updateDate = DateUtil.formatDate(comment.getCreateDate());
@@ -123,26 +125,29 @@
    public ResponseData archive() {
        //不考虑数据太多的情况,这里应该可以把数据全部捞出来
        List<BlogArticle> articleList = blogArticleService.lambdaQuery()
                .eq(BlogArticle::getIsEnable, MyConstant.Yes)
                .eq(BlogArticle::getEditorStatus, MyConstant.Yes)
                .orderByDesc(BlogArticle::getSeparateYear)
                .groupBy(BlogArticle::getSeparateYear)
                .select(BlogArticle::getSeparateYear)
                .list();
        Integer thisYear = DateUtil.thisYear();
        Integer startYear = blogArticleService.lambdaQuery().orderByAsc(BlogArticle::getSeparateYear).last(MyConstant.limit).one().getSeparateYear();
        List<Integer> yearList = Stream.iterate(thisYear, n -> n - 1).limit(thisYear - startYear + 1).collect(Collectors.toList());
        List<BlogArchiveVo> res = new ArrayList<>(articleList.size());
        List<BlogArchiveVo> res = new ArrayList<>(yearList.size());
        BlogArchiveVo blogArchiveVo;
        for (BlogArticle blogArticle : articleList) {
        List<BlogArchiveDetailVo> tempVoList;
        for (Integer year : yearList) {
            tempVoList = blogArticleService.searchMonthCount(year);
            if (CollUtil.isEmpty(tempVoList)) {
                continue;
            }
            blogArchiveVo = new BlogArchiveVo();
            blogArchiveVo.setYear(blogArticle.getSeparateYear().toString());
            blogArchiveVo.setList(blogArticleService.searchMonthCount(blogArticle.getSeparateYear()));
            blogArchiveVo.setYear(year.toString());
            blogArchiveVo.setList(tempVoList);
            res.add(blogArchiveVo);
        }
        return new SuccessResponseData(res);
    }
    @GetMapping("/blog/archiveGroup")
    @BusinessLog(title = "外部blog系统_blog归档组列表_查询", opType = LogAnnotionOpTypeEnum.QUERY)
@@ -153,6 +158,7 @@
                .eq(BlogArticle::getEditorStatus, MyConstant.Yes)
                .eq(year != null, BlogArticle::getSeparateYear, year)
                .eq(month != null, BlogArticle::getSeparateMonth, month)
                .le(BlogArticle::getPublishDate, DateUtil.date())
                .orderByDesc(BlogArticle::getSeparateYear)
                .orderByDesc(BlogArticle::getSeparateMonth)
                .select(BlogArticle::getId, BlogArticle::getTitle,