inleft
2022-02-21 a9c4c99791e4d43971afd863946a2b0c4db44708
snowy-main/src/main/java/vip/xiaonuo/modular/blogStatistics/BlogStatisticsController.java
@@ -30,17 +30,17 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import vip.xiaonuo.core.annotion.BusinessLog;
import vip.xiaonuo.core.consts.MyConstant;
import vip.xiaonuo.core.enums.LogAnnotionOpTypeEnum;
import vip.xiaonuo.core.pojo.response.ResponseData;
import vip.xiaonuo.core.pojo.response.SuccessResponseData;
import vip.xiaonuo.modular.blogStatistics.vo.BlogArchiveVo;
import vip.xiaonuo.modular.blogStatistics.vo.BlogStatisticsVo;
import vip.xiaonuo.modular.blogarticle.entity.BlogArticle;
import vip.xiaonuo.modular.blogarticle.service.BlogArticleService;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.*;
/**
 * blog文章控制器 (提供给外部blog系统查询)
@@ -79,8 +79,8 @@
        res.add(new BlogStatisticsVo.simpleVo().setName(startFrom));
        res.add(new BlogStatisticsVo.simpleVo().setName(aliveDayCount));
        res.add(new BlogStatisticsVo.simpleVo().setName(lastUpdateDate));
        res.add(new BlogStatisticsVo.simpleVo().setName(visitCount));
        res.add(new BlogStatisticsVo.simpleVo().setName(visitorCount));
//        res.add(new BlogStatisticsVo.simpleVo().setName(visitCount));
//        res.add(new BlogStatisticsVo.simpleVo().setName(visitorCount));
        BlogStatisticsVo statisticsVo = new BlogStatisticsVo();
        statisticsVo.setList(res);
@@ -89,5 +89,39 @@
    }
    /**
     * 查询blog归档
     *
     * @author inleft
     * @date 2022-02-09 18:20:22
     */
    @GetMapping("/blog/archive")
    @BusinessLog(title = "外部blog系统_blog归档_查询", opType = LogAnnotionOpTypeEnum.QUERY)
    public ResponseData archive(Integer year, Integer month) {
        //不考虑数据太多的情况,这里应该可以把数据全部捞出来
        List<BlogArticle> articleList = blogArticleService.lambdaQuery()
                .eq(BlogArticle::getIsEnable, MyConstant.Yes)
                .eq(BlogArticle::getEditorStatus, MyConstant.Yes)
//                .eq(year != null,BlogArticle::getSeparateYear, year)
//                .eq(month != null, BlogArticle::getSeparateMonth, month)
                .orderByDesc(BlogArticle::getSeparateYear)
                .groupBy(BlogArticle::getSeparateYear)
                .select(BlogArticle::getSeparateYear)
                .list();
        List<BlogArchiveVo> res = new ArrayList<>(articleList.size());
        BlogArchiveVo blogArchiveVo;
        for (BlogArticle blogArticle : articleList) {
            blogArchiveVo = new BlogArchiveVo();
            blogArchiveVo.setYear(blogArticle.getSeparateYear().toString());
            blogArchiveVo.setList(blogArticleService.searchMonthCount(blogArticle.getSeparateYear()));
            res.add(blogArchiveVo);
        }
        return new SuccessResponseData(res);
    }
}