From aae48957ba971ed0a1bfbfa182701cd22bbe8694 Mon Sep 17 00:00:00 2001 From: inleft <inleft@qq.com> Date: Wed, 31 Aug 2022 18:12:16 +0800 Subject: [PATCH] 新增编辑页 查询接口 --- snowy-main/src/main/java/vip/xiaonuo/modular/blogarticle/mapper/mapping/BlogArticleMapper.xml | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 173 insertions(+), 0 deletions(-) diff --git a/snowy-main/src/main/java/vip/xiaonuo/modular/blogarticle/mapper/mapping/BlogArticleMapper.xml b/snowy-main/src/main/java/vip/xiaonuo/modular/blogarticle/mapper/mapping/BlogArticleMapper.xml index ad494aa..ce497d4 100644 --- a/snowy-main/src/main/java/vip/xiaonuo/modular/blogarticle/mapper/mapping/BlogArticleMapper.xml +++ b/snowy-main/src/main/java/vip/xiaonuo/modular/blogarticle/mapper/mapping/BlogArticleMapper.xml @@ -2,4 +2,177 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="vip.xiaonuo.modular.blogarticle.mapper.BlogArticleMapper"> + + <!-- 通用查询结果列 --> + <sql id="Base_Column"> + id,title,article_file_id,article_file_type, + article_type_id,introduce,cover_file_id,last_editor_date,publish_date, + is_top,top_value,auth_status,auth_password,editor_status, + separate_year,separate_month,separate_day,is_enable,update_date,create_date + </sql> + + <sql id="Base_Column_List"> + a.id, + a.title, + a.article_file_type, + a.article_type_id, + a.introduce, + a.cover_file_id, + a.auth_status, + a.last_editor_date, + a.publish_date, + a.is_top, + a.editor_status, + a.is_allowed_comment, + a.jump_url as jumpURL, + a.update_date, + a.create_date, + a.video_ids, + a.picture_ids + </sql> + + <!--首页通用的条件查询--> + <sql id="queryListCondition"> + <trim prefix="WHERE" prefixOverrides="AND | OR"> + a.is_enable=1 + and a.editor_status=1 + and a.publish_date < now() + <choose> + <when test="param.typeId != null"> + AND a.article_type_id = #{param.typeId} + order by a.is_top desc,a.top_value asc , a.publish_date desc + </when> + + <otherwise> + <!-- 首页不出现视频等文件类型--> + <if test="param.faceExcludeFile != null"> + and a.article_file_type not in + <foreach collection="param.faceExcludeFile" item="obj" separator="," open="(" close=")"> + #{obj} + </foreach> + </if> + order by a.is_top desc,a.top_value asc , a.update_date desc + </otherwise> + </choose> + </trim> + + </sql> + + <!-- 首页查询--> + <select id="searchList" resultType="vip.xiaonuo.modular.blogarticle.entity.BlogArticleVo"> + select + <include refid="Base_Column_List"/> + ,IF(a.cover_file_id is not null,CONCAT("/",f2.file_bucket,"/",f2.file_object_name),"") as coverFileURL + ,t.type_name as articleTypeName + from + blog_article a + inner join blog_article_type t + on t.id =a.article_type_id + + <!-- 排除首页不查询的分类--> + <if test="param.typeId == null"> + and t.is_show_face = 1 + </if> + + left join sys_file_info f2 + on f2.id=a.cover_file_id + + <include refid="queryListCondition"/> + + limit #{param.pageNo},#{param.pageSize} + </select> + + <!-- 首页查询个数统计--> + <select id="searchListCount" resultType="java.lang.Long"> + select + count(0) + from + blog_article a + <include refid="queryListCondition"/> + + </select> + + <!-- 月份归档统计--> + <select id="searchMonthCount" resultType="vip.xiaonuo.modular.blogStatistics.vo.BlogArchiveDetailVo"> + SELECT + separate_month AS `month`, + count(1) AS `count` + FROM + blog_article + WHERE + ( + is_enable = 1 + AND editor_status = 1 + AND separate_year = #{separateYear} + AND publish_date < now() + ) + GROUP BY + separate_month + ORDER BY separate_month desc + + </select> + + <!-- 上下篇查询--> + <select id="getAdjoiningRecord" resultType="vip.xiaonuo.modular.blogarticle.entity.BlogArticleVo"> + select + a.id, + a.title + from + blog_article a + <include refid="queryListCondition"/> + limit #{param.pageNo},#{param.pageSize} + </select> + + <sql id="queryPlatformCondition"> + <trim prefix="WHERE" prefixOverrides="AND | OR"> + a.is_enable=1 + and a.editor_status=1 + and a.publish_date < now() + + <if test="param.id != null"> + and a.id = #{param.id} + </if> + + <if test="param.fileType != null"> + and a.article_file_type = #{param.fileType} + </if> + + AND a.article_type_id in + <foreach collection="param.typeIds" item="obj" separator="," open="(" close=")"> + #{obj} + </foreach> + + order by a.is_top desc,a.top_value asc , a.publish_date desc + </trim> + + </sql> + + <!--月台列表查询--> + <select id="searchPlatformList" resultType="vip.xiaonuo.modular.blogarticle.entity.BlogArticleVo"> + select + <include refid="Base_Column_List"/> + ,IF(a.cover_file_id is not null,CONCAT("/",f2.file_bucket,"/",f2.file_object_name),"") as coverFileURL + ,t.type_name as articleTypeName + from + blog_article a + inner join blog_article_type t + on t.id =a.article_type_id + + left join sys_file_info f2 + on f2.id=a.cover_file_id + + <include refid="queryPlatformCondition"/> + + limit #{param.pageNo},#{param.pageSize} + </select> + + <select id="searchPlatformListCount" resultType="java.lang.Long"> + select + count(0) + from + blog_article a + <include refid="queryPlatformCondition"/> + </select> + + </mapper> -- Gitblit v1.9.1