Helius
2022-07-07 9327268d9580007afb8fc3fe5dd2841aee3832a7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xcong.farmer.cms.modules.system.mapper.ArticleMapper">
 
    <select id="selectAdminArticleInPage" resultType="com.xcong.farmer.cms.modules.system.vo.AdminArticleVo">
        SELECT
        a.*,
        b.column_name columnName
        FROM
        t_article a
        left join t_column b on a.column_id = b.id
        <where>
            and a.del_status = 1
            <if test="record != null" >
                <if test="record.columnId != null">
                    and a.column_id = #{record.columnId}
                </if>
                <if test="record.companyId != null">
                    and a.company_id = #{record.companyId}
                </if>
                <if test="record.title!=null">
                    and a.title like concat ('%',#{record.title},'%')
                </if>
                <if test="record.columnIds != null">
                    and a.column_id in
                    <foreach collection="record.columnIds" separator="," close=")" open="(" item="item">
                        #{item}
                    </foreach>
                </if>
            </if>
        </where>
        order by a.is_top desc,a.create_time desc
    </select>
 
    <select id="selectAdminArticleByid" resultType="com.xcong.farmer.cms.modules.system.vo.AdminSeeArticleInfoVo">
        SELECT
        a.*
        FROM
        t_article a where id = #{id}
    </select>
 
    <select id="selectPrevOrNextArticle" resultType="com.xcong.farmer.cms.modules.system.entity.ArticleEntity">
        select *
        from t_article a, t_column b
        where a.id!=#{id} and (a.column_id=b.id or a.column_id=b.parent_id) and a.column_id=#{columnId}
        <!--上一篇-->
        <if test="type == 1">
            order by a.id
        </if>
        <!--下一篇-->
        <if test="type == 2">
            order by a.id desc
        </if>
        limit 1
    </select>
 
    <select id="selectArticleById" resultType="com.xcong.farmer.cms.modules.system.entity.ArticleEntity">
        select a.*, b.column_code, b.column_name, b.path
        from t_article a, t_column b
        where a.column_id=b.id and a.id=#{id}
    </select>
 
    <select id="selectArticleInPage" resultType="com.xcong.farmer.cms.modules.system.entity.ArticleEntity">
        select
            a.*,
            b.column_code,
            b.column_name,
            b.path
        from t_article a
        inner join t_column b on a.column_id=b.id
        inner join t_column c on b.parent_id=c.id or c.id=b.id
        <where>
            a.company_id=#{record.companyId}
            <if test="record.columnCode != null and record.columnCode != ''">
                and c.column_code=#{record.columnCode}
            </if>
            <if test="record.columnIds != null">
                and c.id in
                <foreach collection="record.columnIds" item="item" open="(" close=")" separator=",">
                    ${item}
                </foreach>
            </if>
        </where>
    </select>
</mapper>