From 1384e6b0f8161d133a6767788f10347f33629d8f Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Mon, 24 Oct 2022 16:05:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E7=AB=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/controller/ArticleController.java | 21 ++++++ .../service/ArticleOperateRecordService.java | 8 +++ .../com/epmet/service/ArticleService.java | 15 +++++ .../service/ArticleVisitRecordService.java | 2 + .../impl/ArticleOperateRecordServiceImpl.java | 21 ++++-- .../service/impl/ArticleServiceImpl.java | 67 +++++++++++++++++++ .../impl/ArticleVisitRecordServiceImpl.java | 12 ++++ 7 files changed, 142 insertions(+), 4 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java index d640fb464d..611c9d2b79 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java @@ -37,6 +37,7 @@ import com.epmet.service.ArticleOperateRecordService; import com.epmet.service.ArticleService; import com.epmet.service.DraftService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; @@ -485,5 +486,25 @@ public class ArticleController { return new Result(); } + /** + * 删除文章,所有相关表都删除吧 + * article 文章表 + * article_content 文章内容表 + * article_cover 文章封面表 + * article_operate_record 文章操作记录表 + * article_publish_range 文章发布范围表 + * article_tags 文章标签表 + * article_visit_record 文章访问记录表 + * @param tokenDto + * @param articleIds + * @return + */ + @PostMapping("delete") + public Result delete(@LoginUser TokenDto tokenDto, @RequestBody List articleIds) { + if (CollectionUtils.isNotEmpty(articleIds)) { + articleService.delete(articleIds, tokenDto.getCustomerId(), tokenDto.getUserId()); + } + return new Result(); + } } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleOperateRecordService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleOperateRecordService.java index 368ecfcef7..ddb1db33e7 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleOperateRecordService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleOperateRecordService.java @@ -103,4 +103,12 @@ public interface ArticleOperateRecordService extends BaseService listOfArticleOperation(String articleId); + + /** + * + * @param articleId + * @param customerId + * @param currentOperUserId + */ + void deleteByArticleId(String articleId, String customerId, String currentOperUserId); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java index 5438ed4bd5..dca18d0bb7 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java @@ -263,4 +263,19 @@ public interface ArticleService extends BaseService { * @param formDTO */ void updateArticle(UpdateArticleFormDTO formDTO); + + /** + * 删除文章 + * article 文章表 + * article_content 文章内容表 + * article_cover 文章封面表 + * article_operate_record 文章操作记录表 + * article_publish_range 文章发布范围表 + * article_tags 文章标签表 + * article_visit_record 文章访问记录表 + * @param articleIds + * @param customerId + * @param currentOperUserId + */ + void delete(List articleIds,String customerId,String currentOperUserId); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleVisitRecordService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleVisitRecordService.java index cdaa50388c..502d0f638a 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleVisitRecordService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleVisitRecordService.java @@ -92,4 +92,6 @@ public interface ArticleVisitRecordService extends BaseService updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(ArticleOperateRecordEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleOperateRecordEntity::getUpdatedBy, currentOperUserId) + .set(ArticleOperateRecordEntity::getUpdatedTime, new Date()); + updateWrapper.eq(ArticleOperateRecordEntity::getArticleId, articleId); + baseDao.update(null,updateWrapper); + } } \ No newline at end of file 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 3ff421c8e6..6f6c6985fb 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 @@ -19,6 +19,7 @@ package com.epmet.service.impl; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.constant.FieldConstant; @@ -1924,4 +1925,70 @@ public class ArticleServiceImpl extends BaseServiceImpl articleIds, String customerId, String currentOperUserId) { + Date now=new Date(); + for(String articleId:articleIds){ + //文章表 + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(ArticleEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleEntity::getUpdatedBy, currentOperUserId) + .set(ArticleEntity::getUpdatedTime, now); + updateWrapper.eq(ArticleEntity::getId, articleId); + baseDao.update(null, updateWrapper); + + //文章内容表 + LambdaUpdateWrapper articleContentUpdate = new LambdaUpdateWrapper<>(); + articleContentUpdate.set(ArticleContentEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleContentEntity::getUpdatedBy, currentOperUserId) + .set(ArticleContentEntity::getUpdatedTime, now); + articleContentUpdate.eq(ArticleContentEntity::getArticleId, articleId); + articleContentDao.update(null,articleContentUpdate); + //文章封面表 + LambdaUpdateWrapper articleCoverUpdate = new LambdaUpdateWrapper<>(); + articleCoverUpdate.set(ArticleCoverEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleCoverEntity::getUpdatedBy, currentOperUserId) + .set(ArticleCoverEntity::getUpdatedTime, now); + articleCoverUpdate.eq(ArticleCoverEntity::getArticleId, articleId); + articleCoverDao.update(null,articleCoverUpdate); + //文章操作记录表 + articleOperateRecordService.deleteByArticleId(articleId,customerId,currentOperUserId); + + //文章发布范围表 + LambdaUpdateWrapper publishRangeUpdate = new LambdaUpdateWrapper<>(); + publishRangeUpdate.set(ArticlePublishRangeEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticlePublishRangeEntity::getUpdatedBy, currentOperUserId) + .set(ArticlePublishRangeEntity::getUpdatedTime, now); + publishRangeUpdate.eq(ArticlePublishRangeEntity::getArticleId, articleId); + articlePublishRangeDao.update(null,publishRangeUpdate); + //文章标签表 + LambdaUpdateWrapper articleTagsUpdate = new LambdaUpdateWrapper<>(); + articleTagsUpdate.set(ArticleTagsEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleTagsEntity::getUpdatedBy, currentOperUserId) + .set(ArticleTagsEntity::getUpdatedTime, now); + articleTagsUpdate.eq(ArticleTagsEntity::getArticleId, articleId); + articleTagsDao.update(null,articleTagsUpdate); + //文章访问记录表 + articleVisitRecordService.deleteByArticleId(articleId,customerId,currentOperUserId); + } + } + + } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleVisitRecordServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleVisitRecordServiceImpl.java index 8b4ce81966..93f631b14d 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleVisitRecordServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleVisitRecordServiceImpl.java @@ -18,9 +18,11 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.ArticleVisitRecordDao; @@ -33,6 +35,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; @@ -105,4 +108,13 @@ public class ArticleVisitRecordServiceImpl extends BaseServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(ArticleVisitRecordEntity::getDelFlag, NumConstant.ONE_STR) + .set(ArticleVisitRecordEntity::getUpdatedBy, currentOperUserId) + .set(ArticleVisitRecordEntity::getUpdatedTime, new Date()); + updateWrapper.eq(ArticleVisitRecordEntity::getArticleId, articleId); + baseDao.update(null,updateWrapper); + } } \ No newline at end of file