mitao
2025-02-21 31573d6180d15ef65ed0df9c2732495f40b12663
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
<?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.panzhihua.service_community.dao.ComPropertyPublicityDAO">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.panzhihua.service_community.model.dos.ComPropertyPublicityDO">
                <id column="id" property="id" />
                <id column="title" property="title" />
                <id column="publicity_type" property="publicityType" />
                <id column="other" property="other" />
                <id column="cover" property="cover" />
                <id column="content_type" property="contentType" />
                <id column="article_url" property="articleUrl" />
                <id column="diy_content" property="diyContent" />
                <id column="property_id" property="propertyId" />
                <id column="community_id" property="communityId" />
                <id column="view_num" property="viewNum" />
                <id column="created_at" property="createdAt" />
                <id column="updated_at" property="updatedAt" />
    </resultMap>
    <update id="incrView">
        UPDATE com_property_publicity SET view_num = view_num + 1 WHERE id = #{id}
    </update>
    <select id="retrieveUserMenuList" resultType="java.lang.String">
        SELECT m.menu_name FROM sys_user u
        INNER JOIN sys_user_role ur ON u.user_id = ur.user_id
        LEFT JOIN sys_role r ON ur.role_id = r.role_id
        LEFT JOIN sys_role_menu rm ON r.role_id = rm.role_id
        LEFT JOIN sys_menu m ON rm.menu_id = m.menu_id
        WHERE u.user_id = #{userId}
    </select>
    <select id="pageComPropertyPublicity"
            resultType="com.panzhihua.common.model.vos.community.ComPropertyPublicityVO">
        SELECT pp.*, p.`name` AS propertyName, v.`name` AS villageName
        FROM com_property_publicity pp
        INNER JOIN com_property p ON pp.property_id = p.id
        LEFT JOIN com_mng_village v ON p.area_id = v.village_id
        WHERE pp.community_id = ${pageComPropertyPublicityDTO.communityId}
        <if test="pageComPropertyPublicityDTO.propertyId != null">
            AND pp.property_id = #{pageComPropertyPublicityDTO.propertyId}
        </if>
        <if test="pageComPropertyPublicityDTO.villageId != null">
            AND p.area_id = #{pageComPropertyPublicityDTO.villageId}
        </if>
        <if test="pageComPropertyPublicityDTO.publicityType != null">
            AND pp.publicity_type = #{pageComPropertyPublicityDTO.publicityType}
        </if>
        <if test="pageComPropertyPublicityDTO.keyword != null and pageComPropertyPublicityDTO.keyword != &quot;&quot;">
            AND pp.title LIKE CONCAT(#{pageComPropertyPublicityDTO.keyword}, '%')
        </if>
        ORDER BY pp.id DESC
    </select>
    <select id="selectDetail" resultType="com.panzhihua.common.model.vos.community.ComPropertyPublicityVO">
        SELECT pp.*, p.`name` AS propertyName, v.`name` AS villageName FROM com_property_publicity pp
        INNER JOIN com_property p ON pp.property_id = p.id
        LEFT JOIN com_mng_village v ON p.area_id = v.village_id
        WHERE pp.id = #{id}
    </select>
    <select id="pageComPropertyPublicityApplet"
            resultType="com.panzhihua.common.model.vos.community.ComPropertyPublicityVO">
        SELECT pp.*, p.`name` AS propertyName, v.`name` AS villageName FROM com_property_publicity pp
        INNER JOIN com_property p ON pp.property_id = p.id
        LEFT JOIN com_mng_village v ON p.area_id = v.village_id
        WHERE pp.community_id = ${pageComPropertyPublicityDTO.communityId}
        <if test="pageComPropertyPublicityDTO.villageId != null">
            AND p.area_id = #{pageComPropertyPublicityDTO.villageId}
        </if>
    </select>
</mapper>