From bef193635a371742eacc885815767a852450cbe0 Mon Sep 17 00:00:00 2001 From: sunflower2014 Date: Sun, 28 Sep 2025 20:43:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E5=AE=A1=E4=BA=BA=E5=91=98=E7=9A=84?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=E8=BF=94=E5=9B=9E=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E4=BA=BA=E5=91=98=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reference/core/mapper/NewsMapper.java | 2 +- .../reference/core/service/NewsService.java | 21 +++++++++++-------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java b/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java index 632cc55..67be89d 100644 --- a/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java +++ b/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java @@ -19,7 +19,7 @@ import com.jinrui.reference.core.typehandler.JsonArrayTypeHandler; public interface NewsMapper { - @Delete("update news set is_delete = 1, update_time = now(), editor_id = #{editorId} where id = #{newsId} and status = 1") + @Delete("update news set is_delete = 1, update_time = now(), editor_id = #{editorId} where id = #{newsId} and status in (-1, 1) ") int deleteNews(@Param("newsId") Long newsId, @Param("editorId") Long editorId); @Delete("update news set is_delete = 0, update_time = now(), editor_id = #{editorId} where id = #{newsId}") diff --git a/core/src/main/java/com/jinrui/reference/core/service/NewsService.java b/core/src/main/java/com/jinrui/reference/core/service/NewsService.java index 3008223..7790841 100644 --- a/core/src/main/java/com/jinrui/reference/core/service/NewsService.java +++ b/core/src/main/java/com/jinrui/reference/core/service/NewsService.java @@ -162,8 +162,8 @@ public class NewsService { Map industryMap = allIndustrys.stream().collect(Collectors.toMap(Industry::getId, Function.identity())); Long draftId = news.getDraftId(); - if (draftId != null) { - NewsDraft newsDraft = newsMapper.getDraftDetail(draftId); + NewsDraft newsDraft = Optional.ofNullable(draftId).map(e -> newsMapper.getDraftDetail(e)).orElse(null); + if (newsDraft != null) { NewsDetailVO newsDetailVO = new NewsDetailVO(newsDraft); newsDetailVO.setId(id); newsDetailVO.setDeleted(news.getDeleted()); @@ -379,12 +379,10 @@ public class NewsService { return llmFlag; } - @Deprecated public ResultObject createPublish(Long editorId, SaveNewsDTO saveNewsDTO, boolean isReviewer) { Long id = saveNewsDTO.getId(); Long newsId = saveNewsDTO.getId(); Integer newStatus = 2; - Integer oldStatus = (isReviewer ? 4: 3); News news; Long draftId = null; String newsInfoId = null; @@ -402,7 +400,7 @@ public class NewsService { // 已发布 saveNewsDTO.setStatus(2); saveNewsDTO.setPublishTime(new Date()); -// saveNewDraft(saveNewsDTO, null, isReviewer); + saveNewDraft(saveNewsDTO, null, isReviewer?"01":"02"); } Long newIdRl = saveNewsDTO.getId(); @@ -412,9 +410,14 @@ public class NewsService { news.setNewsinfoId(newsInfoId); news.setDraftId(isReviewer ? null: draftId); - int count = newsMapper.updateNews(news, oldStatus); + int count = newsMapper.updateNews(news, 4); if (count == 0) { - return ResultObject.failed("该资讯正在审核中,请勿重复操作"); + if (!isReviewer) { + count = newsMapper.updateNews(news, 3); + } + if (count == 0) { + return ResultObject.failed("该资讯正在审核中,请勿重复操作"); + } } // zzp deleteNewsRel(newsId); @@ -558,7 +561,7 @@ public class NewsService { return ResultObject.failed("请先手动下架新闻然后进行删除!"); } - if (status == 3) { + if (status == 3 || status == 4) { return ResultObject.failed("该资讯正在审核中,请勿重复操作"); } @@ -935,7 +938,7 @@ public class NewsService { newsMap.put(newsVO.getId(), newsVO); } resultList.add(newsVO); - if (isReviewer) { + if (isReviewer||isSecondReviewRange) { newsVO.setSubmitter(this.getNewsLastSubmitter(news.getId())); } }