diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CommonArticleListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CommonArticleListFormDTO.java index 5602cabf48..e86357966e 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CommonArticleListFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/CommonArticleListFormDTO.java @@ -31,4 +31,13 @@ public class CommonArticleListFormDTO implements Serializable { * */ private Integer num; + /** + * 标签名称(高级配置里的参数) + * */ + private String tagName; + /** + * 排除的标签名称(高级配置里的参数) + * */ + private String excludeTagName; + } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java index 39109fbc0b..b0c4af6252 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java @@ -23,7 +23,6 @@ import com.epmet.dto.result.GovArticleDetailResultDTO; import com.epmet.dto.result.ArticleBannerResultDTO; import com.epmet.dto.result.ArticleDetailResultDTO; import com.epmet.dto.result.ArticleLatestResultDTO; -import com.epmet.dto.result.ArticleWithTagsResultDTO; import com.epmet.entity.ArticleEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -41,107 +40,110 @@ import java.util.Set; public interface ArticleDao extends BaseDao { /** - * 政府端查询文章详情 - * - * @param articleId - * 文章id - */ + * 政府端查询文章详情 + * + * @param articleId 文章id + */ GovArticleDetailResultDTO queryGovArticleDetail(String articleId); /** - * 政府端查询文章详情-内容 - * - * @param articleId - * 文章id - */ + * 政府端查询文章详情-内容 + * + * @param articleId 文章id + */ List queryGovArticleContent(String articleId); /** - * @Description - * @param formDto - * @author zxc - */ + * @param formDto + * @Description + * @author zxc + */ Integer checkPublishArticle(ResiTagListFormDTO formDto); /** * 已发布列表---组织工作人员 - * @author zhaoqifeng - * @date 2020/6/2 16:59 + * * @param customerId * @param tagIdList * @return java.util.List + * @author zhaoqifeng + * @date 2020/6/2 16:59 */ @DataFilter(tableAliases = "a", gridIdsArgName = "gridList") List selectArticleListForAgency(@Param("customerId") String customerId, @Param("tagIdList") List tagIdList, Set gridList); /** * 已发布列表---网格工作人员 - * @author zhaoqifeng - * @date 2020/6/5 16:35 + * * @param customerId * @param tagIdList * @param gridList * @return java.util.List + * @author zhaoqifeng + * @date 2020/6/5 16:35 */ List selectArticleListForGrid(@Param("customerId") String customerId, @Param("tagIdList") List tagIdList, - @Param("gridList")Set gridList); + @Param("gridList") Set gridList); /** * 已下线文章列表 - * @author zhaoqifeng - * @date 2020/6/3 15:16 + * * @param gridList * @return java.util.List + * @author zhaoqifeng + * @date 2020/6/3 15:16 */ @DataFilter(tableAliases = "a", gridIdsArgName = "gridList") List selectOfflineList(Set gridList); /** - * @Description 根据网格Id查找置顶文章的相关信息列表 用处:居民端首页轮播 - * @param gridId - * @param num - * @return List - * @author wangc - * @date 2020.06.02 16:04 - **/ - List selectTopArticleMsg (@Param("gridId")String gridId,@Param("num")Integer num); + * @param gridId + * @param num + * @return List + * @Description 根据网格Id查找置顶文章的相关信息列表 用处:居民端首页轮播 + * @author wangc + * @date 2020.06.02 16:04 + **/ + List selectTopArticleMsg(@Param("gridId") String gridId, @Param("num") Integer num); /** - * @Description 根据网格Id查找最新文章的相关信息列表 用处:居民端最新文章列表 - * @param gridId - * @param num - * @return List - * @author wangc - * @date 2020.06.02 16:04 - **/ - List selectLatestArticleMsg(@Param("gridId")String gridId,@Param("num")Integer num); + * @param gridId + * @param tagName + * @param excludeTagName + * @param num + * @return List + * @Description 根据网格Id查找最新文章的相关信息列表 用处:居民端最新文章列表 + * @author wangc + * @date 2020.06.02 16:04 + **/ + List selectLatestArticleMsg(@Param("gridId") String gridId, @Param("tagName") String tagName, @Param("excludeTagName") String excludeTagName, @Param("num") Integer num); /** - * @Description 根据网格Id和标签列表查找文章的相关信息列表 用处:居民端党建声音列表 - * @param gridId - * @param tagIdList - * @return List - * @author wangc - * @date 2020.06.03 14:19 - **/ - List selectArticleList(@Param("gridId") String gridId, @Param("tagIdList")List tagIdList); + * @param gridId + * @param tagIdList + * @return List + * @Description 根据网格Id和标签列表查找文章的相关信息列表 用处:居民端党建声音列表 + * @author wangc + * @date 2020.06.03 14:19 + **/ + List selectArticleList(@Param("gridId") String gridId, @Param("tagIdList") List tagIdList); /** - * @Description 根绝文章Id查询出文章的内容、封面等相关信息,如果居民端传入的网格Id不在该文章的发布范围内,则返回NULL - * @param gridId - * @param articleId - * @return ArticleDetailResultDTO - * @author wangc - * @date 2020.06.03 18:28 - **/ - ArticleDetailResultDTO selectArticleDetail(@Param("gridId")String gridId,@Param("articleId")String articleId); + * @param gridId + * @param articleId + * @return ArticleDetailResultDTO + * @Description 根绝文章Id查询出文章的内容、封面等相关信息,如果居民端传入的网格Id不在该文章的发布范围内,则返回NULL + * @author wangc + * @date 2020.06.03 18:28 + **/ + ArticleDetailResultDTO selectArticleDetail(@Param("gridId") String gridId, @Param("articleId") String articleId); /** - * @Description 根据draftId获取文章id - * @param draftId - * @author zxc - */ - String getArticleIdByDraftId(@Param("draftId")String draftId); -} \ No newline at end of file + * @param draftId + * @Description 根据draftId获取文章id + * @author zxc + */ + String getArticleIdByDraftId(@Param("draftId") String draftId); +} diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index d00baf70d3..d7786573ff 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -688,7 +688,7 @@ public class ArticleServiceImpl extends BaseServiceImpl getLatestArticleList(CommonArticleListFormDTO commonArticleListFormDTO) { - return baseDao.selectLatestArticleMsg(commonArticleListFormDTO.getGridId(), + return baseDao.selectLatestArticleMsg(commonArticleListFormDTO.getGridId(),commonArticleListFormDTO.getTagName(),commonArticleListFormDTO.getExcludeTagName(), null == commonArticleListFormDTO.getNum() || commonArticleListFormDTO.getNum() <= NumConstant.ZERO ? NumConstant.FIVE : commonArticleListFormDTO.getNum()); } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml index da83651e0c..a2d26ca0d7 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml @@ -139,7 +139,7 @@ - + diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml index 924f52a59f..d039eb85d8 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml @@ -193,9 +193,11 @@ art.TITLE AS articleTitle , IFNULL(artcover.IMG_URL,'') AS articleCoverImg, art.PUBLISHER_NAME AS publishName, - art.PUBLISH_DATE AS publishDate + art.PUBLISH_DATE AS publishDate, + group_concat(tag.TAG_NAME) tags #条件筛选用 FROM ARTICLE art + LEFT JOIN article_tags tag ON tag.ARTICLE_ID = art.ID AND tag.DEL_FLAG = '0' LEFT JOIN ( SELECT @@ -222,7 +224,17 @@ art.DEL_FLAG = '0' AND art.STATUS_FLAG = 'published' + + GROUP BY art.ID + HAVING + + FIND_IN_SET(#{tagName},tags) + + + AND !FIND_IN_SET(#{excludeTagName},tags) + + ORDER BY art.PUBLISH_DATE DESC , art.CREATED_TIME DESC LIMIT #{num}