From 19b6f6bd18bd5080b3debef107c5fe8345c1eee8 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 01 Dec 2023 13:57:30 +0800
Subject: [PATCH] 文章通过范围查询
---
src/main/java/org/springblade/modules/article/vo/ArticleVO.java | 5 +
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml | 148 +++++++++++++++++++++++++++++++++----------------
src/main/java/org/springblade/modules/circle/mapper/CircleMapper.xml | 4
src/main/java/org/springblade/modules/article/mapper/ArticleMapper.java | 2
src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java | 9 ++
5 files changed, 116 insertions(+), 52 deletions(-)
diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.java b/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.java
index 6d5b16b..4383617 100644
--- a/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.java
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.java
@@ -55,4 +55,6 @@
Boolean upcomment(String ids, String type);
ArticleVO getArticleOne(ArticleVO article);
+
+ String getDistrictId(String houseCode);
}
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 4fc94c1..d3c19cc 100644
--- a/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleMapper.xml
@@ -68,37 +68,78 @@
<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,
- jpd.id pdId,
- jpd.event_type
- from jczz_article ja LEFT JOIN blade_dict_biz bdb on ja.article_type = bdb.dict_key
- LEFT JOIN jczz_public_discuss jpd on jpd.article_id=ja.id
- 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>
+ <!-- 查询报名和议事 -->
<if test="article.eventType != null">
- and jpd.event_type = #{article.eventType}
+ 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,
+ jpd.id pdId,
+ (select bdb.dict_value from blade_dict_biz bdb where bdb.parent_id='1722966265111248897' and ja.article_type = bdb.dict_key) dictValue,
+ jpd.event_type
+ 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.districtId != null and article.districtId != ''">
+ and (ja.article_range like concat('%',#{article.districtId},'%')
+ or ja.article_range 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.districtId != null and article.districtId != ''">
+ and ja.article_range like concat('%',#{article.districtId},'%')
+ or ja.article_range is null
+ </if>
+ </if>
+
order by ja.create_time desc
</select>
@@ -389,29 +430,38 @@
bdb.dict_value dictValue
from jczz_article ja LEFT JOIN blade_dict_biz bdb on ja.article_type = bdb.dict_key
<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>
+ <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
+ and ja.is_deleted = 0
and ja.publish = 1
and bdb.parent_id = '1722966265111248897'
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>
diff --git a/src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java b/src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java
index ee2ebf0..b305a62 100644
--- a/src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java
+++ b/src/main/java/org/springblade/modules/article/service/impl/ArticleServiceImpl.java
@@ -8,6 +8,8 @@
import org.springblade.modules.article.vo.ArticleVO;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
* @author zhongrj
* @title 资讯服务实现层
@@ -15,6 +17,7 @@
@Service
public class ArticleServiceImpl extends ServiceImpl<ArticleMapper, Article> implements ArticleService {
+
/**
* 查询资讯分页信息
@@ -35,7 +38,11 @@
*/
@Override
public IPage<ArticleVO> selectArticlePageByApp(IPage<ArticleVO> page, ArticleVO article) {
- return page.setRecords(baseMapper.selectArticlePageByApp(page,article));
+ // 查询用户小区的id
+ String districId = baseMapper.getDistrictId(article.getHouseCode());
+ article.setDistrictId(districId);
+ List<ArticleVO> articleVOS = baseMapper.selectArticlePageByApp(page, article);
+ return page.setRecords(articleVOS);
}
@Override
diff --git a/src/main/java/org/springblade/modules/article/vo/ArticleVO.java b/src/main/java/org/springblade/modules/article/vo/ArticleVO.java
index 225ece2..894329a 100644
--- a/src/main/java/org/springblade/modules/article/vo/ArticleVO.java
+++ b/src/main/java/org/springblade/modules/article/vo/ArticleVO.java
@@ -71,4 +71,9 @@
private List<List<String>> articleList;
+
+ private String houseCode;
+
+ private String districtId;
+
}
diff --git a/src/main/java/org/springblade/modules/circle/mapper/CircleMapper.xml b/src/main/java/org/springblade/modules/circle/mapper/CircleMapper.xml
index e95699f..9f02f39 100644
--- a/src/main/java/org/springblade/modules/circle/mapper/CircleMapper.xml
+++ b/src/main/java/org/springblade/modules/circle/mapper/CircleMapper.xml
@@ -58,8 +58,8 @@
jc.deleted_falg,
bu.name,
bu.avatar,
- jc.circle_type
- (selelct count(1) from jczz_circle_like jcl where jcl.circle_id = jc.id and user_id = #{userId} ) likeFlag
+ jc.circle_type,
+ (select count(1) from jczz_circle_like jcl where jcl.circle_id = jc.id and jcl.user_id = #{circle.userId} ) likeFlag
from jczz_circle jc left join blade_user bu on jc.user_id = bu.id
<where>
<if test="circle.id != null "> and id = #{circle.id}</if>
--
Gitblit v1.9.3