linwei
2024-02-22 7bcd0d2d7510cb2ba67099cd768e1b2b6d047dc2
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
@@ -23,24 +23,12 @@
        <result column="update_user" property="updateUser"/>
        <result column="create_user" property="createUser"/>
        <result column="is_deleted" property="isDeleted"/>
        <!--        <collection property="lickFlag" javaType="int"-->
        <!--                    column="id" select="selectStlLick">-->
        <!--        </collection>-->
        <result property="articleRange" column="article_range"/>
        <collection property="countNumber" column="id" javaType="int" select="selectStlCount">
        </collection>
    </resultMap>
    <!--    <select id="selectStlLick" parameterType="Long" resultType="int">-->
    <!--        select IFNULL(jnl.id, 0) lickFlag-->
    <!--        FROM jczz_notice jn-->
    <!--                 LEFT JOIN jczz_notice_like jnl ON jn.id = jnl.notice_id-->
    <!--        WHERE jnl.notice_user_id = #{notice.userId}-->
    <!--          and jn.is_deleted = 0-->
    <!--          and jn.id = #{id}-->
    <!--    </select>-->
    <select id="selectStlCount" resultType="int">
        select count(1) countNumber
@@ -51,62 +39,212 @@
          and jn.id = #{id}
    </select>
    <sql id="selectArticle">
        select
            id,
            title,
            type,
            content,
            url,
            video_url,
            source_id,
            source_name,
            article_type,
            recommend,
            publish,
            iscomment,
            view_number,
            create_time,
            update_time,
            update_user,
            create_user,
            is_deleted,
            article_range,
            building,
            unit
        from
            jczz_article
    </sql>
    <select id="selectArticlePageByApp" resultMap="noticeResultMap">
        select ja.id,
        ja.title,
        ja.type,
        ja.url,
        ja.video_url,
        ja.source_id,
        ja.source_name,
        ja.article_type,
        ja.recommend,
        ja.publish,
        ja.iscomment,
        ja.view_number,
        ja.create_time,
        ja.update_time,
        ja.update_user,
        ja.create_user,
        ja.is_deleted,
        bdb.dict_value dictValue
        from jczz_article ja LEFT JOIN blade_dict_biz bdb on ja.article_type = bdb.dict_key
        where ja.is_deleted = 0
        and ja.publish = 1
        and bdb.parent_id = '1722966265111248897'
        <if test="article.articleType != null and article.articleType != ''">
          and  ja.article_type = #{article.articleType}
        <!-- 查询报名和议事 -->
        <if test="article.eventType != null">
            select ja.id,
            ja.title,
            ja.type,
            ja.url,
            ja.video_url,
            ja.source_id,
            ja.source_name,
            ja.article_type,
            ja.recommend,
            ja.publish,
            ja.iscomment,
            ja.view_number,
            ja.create_time,
            ja.update_time,
            ja.update_user,
            ja.create_user,
            ja.is_deleted,
            (select bdb.dict_value from blade_dict_biz bdb where bdb.parent_id='1740566650527752194' and ja.article_type
            = bdb.dict_key) dictValue,
            jpd.id pdId
            from jczz_article ja
            LEFT JOIN jczz_public_discuss jpd on jpd.article_id=ja.id
            where ja.is_deleted = 0
            and ja.publish = 1
            <if test="article.articleType != null and article.articleType != ''">
                and ja.article_type = #{article.articleType}
            </if>
            <if test="article.eventType != null">
                and jpd.event_type = #{article.eventType}
            </if>
            <if test="article.type != null">
                and ja.type = #{article.type}
            </if>
            <if test="article.type == null">
                and ja.type = 0
            </if>
            <if test="article.districtId != null and article.districtId != ''">
                and (ja.article_range like concat('%',#{article.districtId},'%')
                or ja.article_range is null)
            </if>
            <if test="article.userId != null">
                and (jpd.appoint_user like concat('%',#{article.userId},'%')
                or ja.appoint_user is null)
            </if>
            <if test="article.building != null and article.building != ''">
                and (ja.building = #{article.building}
                or ja.building is null)
            </if>
            <if test="article.unit != null and article.unit != ''">
                and (ja.unit = #{article.unit}
                or ja.unit is null)
            </if>
        </if>
        <!-- 查询文章 -->
        <if test="article.eventType == null">
            select ja.id,
            ja.title,
            ja.type,
            ja.url,
            ja.video_url,
            ja.source_id,
            ja.source_name,
            ja.article_type,
            ja.recommend,
            ja.publish,
            ja.iscomment,
            ja.view_number,
            ja.create_time,
            ja.update_time,
            ja.update_user,
            ja.create_user,
            (select bdb.dict_value from blade_dict_biz bdb where bdb.parent_id='1722966265111248897' and ja.article_type
            = bdb.dict_key) dictValue,
            ja.is_deleted
            from jczz_article ja
            where ja.is_deleted = 0
            and ja.publish = 1
            <if test="article.articleType != null and article.articleType != ''">
                and ja.article_type = #{article.articleType}
            </if>
            <if test="article.type != null">
                and ja.type = #{article.type}
            </if>
            <if test="article.type == null">
                and ja.type = 0
            </if>
            <if test="article.districtId != null and article.districtId != ''">
                and (ja.article_range like concat('%',#{article.districtId},'%')
                or ja.article_range is null)
            </if>
            <if test="article.building != null and article.building != ''">
                and (ja.building = #{article.building}
                or ja.building is null)
            </if>
            <if test="article.unit != null and article.unit != ''">
                and (ja.unit = #{article.unit}
                or ja.unit is null)
            </if>
        </if>
        order by ja.create_time desc
    </select>
    <!--查询资讯分页列表信息-->
    <select id="selectArticlePage" resultType="org.springblade.modules.article.entity.Article">
        select * from jczz_article
    <select id="selectArticlePage" resultType="org.springblade.modules.article.vo.ArticleVO">
        SELECT
        ja.*,
        br.`village_name` communityName,
        br.town_name streetName
        FROM
        jczz_article ja
        LEFT JOIN jczz_district jd ON ja.district_id = jd.id
        LEFT JOIN blade_region br on br.`code` = jd.community_code
        where 1=1
        and ja.is_deleted = 0
        <if test="article.propertyFlag!=null ">
            and ja.district_id IS NOT NULL
            <if test="article.communityName!=null and article.communityName!=''">
                and br.`village_name` like concat('%',#{article.communityName},'%')
            </if>
            <if test="article.streetName!=null and article.streetName!=''">
                and br.town_name like concat('%',#{article.streetName},'%')
            </if>
        </if>
        <if test="article.title!=null and article.title!=''">
            and title like concat('%',#{article.title},'%')
            and ja.title like concat('%',#{article.title},'%')
        </if>
        <if test="article.sourceName!=null and article.sourceName!=''">
            and source_name like concat('%',#{article.sourceName},'%')
            and ja.source_name like concat('%',#{article.sourceName},'%')
        </if>
        <if test="article.startTime!=null and article.startTime!=''">
            and create_time&gt;=#{article.startTime}
            and ja.create_time&gt;=#{article.startTime}
        </if>
        <if test="article.endTime!=null and article.endTime!=''">
            and create_time&lt;=#{article.endTime}
            and ja.create_time&lt;=#{article.endTime}
        </if>
        <if test="article.publish!=null and article.publish!=''">
            and publish = #{article.publish}
            and ja.publish = #{article.publish}
        </if>
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type like concat('%',#{article.articleType},'%')
            and ja.article_type like concat('%',#{article.articleType},'%')
        </if>
        <if test="article.type != null ">and ja.type = #{article.type}</if>
        <if test="article.keyword!=null and article.keyword!=''">
            AND CONCAT(title,source_name)
            AND CONCAT(ja.title,ja.source_name)
            LIKE CONCAT ('%', #{article.keyword},'%')
        </if>
        order by id desc
        <if test="article.districtIdList != null and article.districtIdList.size() > 0 ">
            and (ja.article_range like
            <foreach collection="article.districtIdList" separator=" or article_range like" item="id">'%${id}%'
            </foreach>
            )
            and ja.district_id in
            <foreach collection="article.districtIdList" index="index" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
        order by ja.create_time desc
    </select>
    <!--查询资讯敏感词预警-->
@@ -162,7 +300,7 @@
        sys_collect col
        LEFT JOIN jczz_article art on art.id = col.collect_article
        WHERE
        1 = 1 AND collect_user =  #{article.userid}
        1 = 1 AND collect_user = #{article.userid}
        <if test="article.articleType!=null and article.articleType!=''">
            and article_type LIKE CONCAT ('%', #{article.articleType},'%')
        </if>
@@ -340,4 +478,62 @@
        and iswords = "0" and type!=1
        order by id desc
    </select>
    <select id="getArticleOne" parameterType="org.springblade.modules.article.vo.ArticleVO" resultMap="noticeResultMap">
        select ja.id,
        ja.title,
        ja.type,
        ja.url,
        ja.video_url,
        ja.source_id,
        ja.content,
        ja.source_name,
        ja.article_type,
        ja.recommend,
        ja.publish,
        ja.iscomment,
        ja.view_number,
        ja.create_time,
        ja.update_time,
        ja.update_user,
        ja.create_user,
        ja.is_deleted,
        ja.article_range,
        ((select bdb.dict_value from blade_dict_biz bdb where bdb.parent_id=#{parentId} and ja.article_type
        = bdb.dict_key)) dictValue
        from jczz_article ja
        <where>
            <if test="id != null ">and ja.id = #{id}</if>
            <if test="title != null  and title != ''">and ja.title = #{title}</if>
            <if test="type != null ">and ja.type = #{type}</if>
            <if test="content != null  and content != ''">and ja.content = #{content}</if>
            <if test="url != null  and url != ''">and ja.url = #{url}</if>
            <if test="videoUrl != null  and videoUrl != ''">and ja.video_url = #{videoUrl}</if>
            <if test="sourceId != null  and sourceId != ''">and ja.source_id = #{sourceId}</if>
            <if test="sourceName != null  and sourceName != ''">and ja.source_name = #{sourceName}</if>
            <if test="articleType != null  and articleType != ''">and ja.article_type = #{articleType}</if>
            <if test="recommend != null ">and ja.recommend = #{recommend}</if>
            <if test="publish != null  and publish != ''">and ja.publish = #{publish}</if>
            <if test="iscomment != null  and iscomment != ''">and ja.iscomment = #{iscomment}</if>
            <if test="viewNumber != null ">and ja.view_number = #{viewNumber}</if>
            <if test="createTime != null ">and ja.create_time = #{createTime}</if>
            <if test="updateTime != null ">and ja.update_time = #{updateTime}</if>
            <if test="updateUser != null ">and ja.update_user = #{updateUser}</if>
            <if test="createUser != null ">and ja.create_user = #{createUser}</if>
            <if test="isDeleted != null ">and ja.is_deleted = #{isDeleted}</if>
            <if test="articleRange != null  and articleRange != ''">and article_range = #{articleRange}</if>
        </where>
        and ja.is_deleted = 0
        order by ja.create_time desc
    </select>
    <select id="getDistrictId" resultType="java.lang.String">
        SELECT jd.id
        FROM jczz_doorplate_address jda
                 LEFT JOIN jczz_district jd ON jda.aoi_code = jd.aoi_code
        WHERE jda.address_code = #{houseCode}
    </select>
</mapper>