洪城义警-正式版后台
zengh
2022-05-26 4c19ddd36bdfb43b5ef4e8df3c9a98cd4d356d6c
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
@@ -18,6 +18,36 @@
        <if test="article.endTime!=null and article.endTime!=''">
            and create_time&lt;=#{article.endTime}
        </if>
        <if test="article.publish!=null and article.publish!=''">
            and publish = #{article.publish}
        </if>
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type like concat('%',#{article.articleType},'%')
        </if>
        <if test="article.keyword!=null and article.keyword!=''">
            AND CONCAT(title,source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        and iswords = "0"
        order by create_time desc
    </select>
    <!--查询资讯敏感词预警-->
    <select id="pageWords" resultType="org.springblade.modules.article.entity.Article">
        select * from sys_article
        where 1=1
        <if test="article.title!=null and article.title!=''">
            and title like concat('%',#{article.title},'%')
        </if>
        <if test="article.sourceName!=null and article.sourceName!=''">
            and source_name like concat('%',#{article.sourceName},'%')
        </if>
        <if test="article.startTime!=null and article.startTime!=''">
            and create_time&gt;=#{article.startTime}
        </if>
        <if test="article.endTime!=null and article.endTime!=''">
            and create_time&lt;=#{article.endTime}
        </if>
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type = #{article.articleType}
        </if>
@@ -25,6 +55,7 @@
            AND CONCAT(title,source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        and iswords = "1"
        order by create_time desc
    </select>
@@ -42,6 +73,30 @@
        <if test="(article.rolename==null and article.rolename=='') or (article.rolename!='administrator' and article.rolename!='policeAdmin')">
            AND publish = 1
        </if>
        and iswords = "0"
        order by create_time desc
    </select>
    <!--查询收藏资讯分页列表信息-->
    <select id="pageCollectList" resultType="org.springblade.modules.article.entity.Article">
        SELECT
        art.*
        FROM
        sys_collect col
        LEFT JOIN sys_article art on art.id = col.collect_article
        WHERE
        1 = 1 AND collect_user =  #{article.userid}
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type LIKE CONCAT ('%', #{article.articleType},'%')
        </if>
        <if test="article.keyword!=null and article.keyword!=''">
            AND CONCAT(title,source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        <if test="(article.rolename==null and article.rolename=='') or (article.rolename!='administrator' and article.rolename!='policeAdmin')">
            AND publish = 1
        </if>
        and iswords = "0"
        order by create_time desc
    </select>
@@ -67,6 +122,24 @@
        likes_article,
        b.islikes
        ) likes ON art.id = likes.likes_article
        LEFT JOIN (
        SELECT
        a.collect_article,
        COUNT( * ) AS collectcount,
        b.iscollect
        FROM
        sys_collect a
        LEFT JOIN ( SELECT collect_article, COUNT( * ) AS iscollect FROM sys_collect WHERE 1 = 1
        <if test="article.userid!=null and article.userid!=''">
            and collect_user = #{article.userid}
        </if>
        GROUP BY collect_article ) b ON a.collect_article = b.collect_article
        GROUP BY
        collect_article,
        b.iscollect
        ) collect ON art.id = collect.collect_article
        LEFT JOIN (
        SELECT
        article,
@@ -87,6 +160,72 @@
        <if test="(article.rolename==null and article.rolename=='') or (article.rolename!='administrator' and article.rolename!='policeAdmin')">
            AND publish = 1
        </if>
        and iswords = "0"
        order by create_time desc
    </select>
    <!--查询资讯分页列表信息-->
    <select id="pageCollect" resultType="org.springblade.modules.article.vo.ArticleVo">
        SELECT
        *
        FROM
        sys_article art
        LEFT JOIN (
        SELECT
        a.likes_article,
        COUNT( * ) AS count,
        b.islikes
        FROM
        sys_likes a
        LEFT JOIN ( SELECT likes_article, COUNT( * ) AS islikes FROM sys_likes WHERE 1 = 1
        <if test="article.userid!=null and article.userid!=''">
            and likes_user = #{article.userid}
        </if>
        GROUP BY likes_article ) b ON a.likes_article = b.likes_article
        GROUP BY
        likes_article,
        b.islikes
        ) likes ON art.id = likes.likes_article
        LEFT JOIN (
        SELECT
        a.collect_article,
        COUNT( * ) AS collectcount,
        b.iscollect
        FROM
        sys_collect a
        LEFT JOIN ( SELECT collect_article, COUNT( * ) AS iscollect FROM sys_collect WHERE 1 = 1
        <if test="article.userid!=null and article.userid!=''">
            and collect_user = #{article.userid}
        </if>
        GROUP BY collect_article ) b ON a.collect_article = b.collect_article
        GROUP BY
        collect_article,
        b.iscollect
        ) collect ON art.id = collect.collect_article
        LEFT JOIN (
        SELECT
        article,
        COUNT(*) as comments
        FROM
        sys_comment
        GROUP BY article
        ) com on com.article = art.id
        WHERE
        1 = 1
        AND iscollect = 1
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type LIKE CONCAT ('%', #{article.articleType},'%')
        </if>
        <if test="article.keyword!=null and article.keyword!=''">
            AND CONCAT(title,source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        <if test="(article.rolename==null and article.rolename=='') or (article.rolename!='administrator' and article.rolename!='policeAdmin')">
            AND publish = 1
        </if>
        and iswords = "0"
        order by create_time desc
    </select>
@@ -94,4 +233,34 @@
        update sys_article set iscomment = #{type}
        where id in(${ids})
    </update>
    <!--个人资讯-->
    <select id="selectArticleG" resultType="org.springblade.modules.article.entity.Article">
        select * from sys_article
        where 1=1
        <if test="article.title!=null and article.title!=''">
            and title like concat('%',#{article.title},'%')
        </if>
        <if test="article.sourceName!=null and article.sourceName!=''">
            and source_name like concat('%',#{article.sourceName},'%')
        </if>
        <if test="article.startTime!=null and article.startTime!=''">
            and create_time&gt;=#{article.startTime}
        </if>
        <if test="article.endTime!=null and article.endTime!=''">
            and create_time&lt;=#{article.endTime}
        </if>
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type = #{article.articleType}
        </if>
        <if test="article.keyword!=null and article.keyword!=''">
            AND CONCAT(title,source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        <if test="(article.rolename==null and article.rolename=='') or (article.rolename!='administrator' and article.rolename!='policeAdmin')">
            AND publish = 1
        </if>
        and iswords = "0" and type!=1
        order by create_time desc
    </select>
</mapper>