From 8b7258c9427882bb1798f1502eaa35184c6e374e Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 09 Aug 2024 14:29:18 +0800
Subject: [PATCH] 短信指定楼栋发送

---
 src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml |  125 +++++++++++++++++++++++++++--------------
 1 files changed, 81 insertions(+), 44 deletions(-)

diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml b/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
index be346dd..1cf62e9 100644
--- a/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
@@ -41,30 +41,28 @@
 
 
     <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
+        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>
 
 
@@ -113,12 +111,22 @@
 
             <if test="article.districtId != null and article.districtId != ''">
                 and (ja.article_range like concat('%',#{article.districtId},'%')
-                or ja.article_range is null or ja.article_range  = '')
+                or ja.article_range is null or ja.article_range = '')
+            </if>
+            <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>
+                ) or ja.article_range is null
             </if>
 
-            <if test="article.userId != null">
-                and (jpd.user_ids like concat('%',#{article.userId},'%')
-                OR jpd.user_ids IS NULL or jpd.user_ids  = '')
+            <if test="article.districtId == null ">
+                and ja.article_range is  null
+            </if>
+
+            <if test="article.householdId != null">
+                and (FIND_IN_SET ( #{article.householdId}, jpd.user_ids )
+                OR jpd.user_ids IS NULL or jpd.user_ids = '')
             </if>
 
             <if test="article.building != null and article.building != ''">
@@ -172,6 +180,13 @@
                 or ja.article_range is null)
             </if>
 
+            <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>
+                ) 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)
@@ -198,16 +213,13 @@
         LEFT JOIN blade_region br on br.`code` = jd.community_code
         where 1=1
         and ja.is_deleted = 0
-        <if test="article.propertyFlag!=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 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 test="article.title!=null and article.title!=''">
             and ja.title like concat('%',#{article.title},'%')
@@ -238,10 +250,10 @@
             <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>-->
+            <!--            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>
@@ -444,8 +456,9 @@
     </select>
 
     <update id="upcomment">
-        update jczz_article set iscomment = #{type}
-        where id in(${ids})
+        update jczz_article
+        set iscomment = #{type}
+        where id in (${ids})
     </update>
 
     <!--个人资讯-->
@@ -552,7 +565,6 @@
         <if test="article.eventType != null">
             and jpd.event_type = #{article.eventType}
             and jpd.end_time is not null
-            and jpd.end_time &lt;= SYSDATE()
         </if>
 
         <if test="article.propertyFlag!=null ">
@@ -583,7 +595,9 @@
         <if test="article.articleType!=null and 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.type != null ">
+          and ja.type = #{article.type}
+          </if>
 
         <if test="article.keyword!=null and article.keyword!=''">
             AND CONCAT(ja.title,ja.source_name)
@@ -598,4 +612,27 @@
         order by ja.create_time desc
 
     </select>
+
+    <select id="getAllList" resultType="org.springblade.modules.article.entity.Article">
+        SELECT
+        ja.*
+        FROM
+        jczz_article ja
+        where 1=1
+        and ja.is_deleted = 0
+        and ja.publish = 1
+        and ja.type = 0
+        limit #{i},#{size}
+    </select>
+
+    <select id="getAllListTotal" resultType="java.lang.Integer">
+        SELECT
+        count(*)
+        FROM
+        jczz_article ja
+        where 1=1
+        and ja.is_deleted = 0
+        and ja.publish = 1
+        and ja.type = 0
+    </select>
 </mapper>

--
Gitblit v1.9.3