新闻发布

This commit is contained in:
zzpay 2024-12-12 09:36:03 +08:00
parent fbfb5bfc62
commit 2dca3bdb7f
3 changed files with 70 additions and 13 deletions

View File

@ -75,6 +75,8 @@ public interface NewsMapper {
"values (#{draftId}, #{title}, #{summary}, #{picture}, #{type}, #{content}, now(), now(), #{status})") "values (#{draftId}, #{title}, #{summary}, #{picture}, #{type}, #{content}, now(), now(), #{status})")
void saveNews(News news); void saveNews(News news);
@Select("<script>" + @Select("<script>" +
"select " + "select " +
"news.id as id," + "news.id as id," +

View File

@ -3,12 +3,15 @@ package com.jinrui.reference.core.model.dto.news;
import com.jinrui.reference.core.model.vo.news.NewsDetailTag; import com.jinrui.reference.core.model.vo.news.NewsDetailTag;
import com.jinrui.reference.core.model.vo.news.NewsDetailTagItem; import com.jinrui.reference.core.model.vo.news.NewsDetailTagItem;
import java.util.List;
@SuppressWarnings("unused") @SuppressWarnings("unused")
public class SaveDraftTag { public class SaveDraftTag {
private Long source; private Long source;
private Long field; private Long field;
private List<Long> fieldArr;
public SaveDraftTag() {} public SaveDraftTag() {}
@ -38,4 +41,12 @@ public class SaveDraftTag {
public void setField(Long field) { public void setField(Long field) {
this.field = field; this.field = field;
} }
public List<Long> getFieldArr() {
return fieldArr;
}
public void setFieldArr(List<Long> fieldArr) {
this.fieldArr = fieldArr;
}
} }

View File

@ -162,6 +162,25 @@ public class NewsService {
} }
} }
} }
List<NewsTagRel> tagRelListNews = tagMapper.getNewsTagRelList(id);
NewsDetailTag newsDetailTag2 = new NewsDetailTag();
newsDetailVO.setTag(newsDetailTag2);
if (!CollectionUtils.isEmpty(tagRelListNews)) {
for (NewsTagRel rel : tagRelListNews) {
Long tagId = rel.getTagId();
Tag tag = tagMap.get(tagId);
Long parentId = tag.getParentId();
NewsDetailTagItem tagItem = new NewsDetailTagItem();
tagItem.setId(tagId);
tagItem.setName(tag.getName());
if (parentId != null && parentId == 1) {
newsDetailTag2.setSource(tagItem);
} else {
newsDetailTag2.setField(tagItem);
}
}
}
return ResultObject.success(newsDetailVO); return ResultObject.success(newsDetailVO);
} }
@ -217,7 +236,7 @@ public class NewsService {
NewsDetailTagItem tagItem = new NewsDetailTagItem(); NewsDetailTagItem tagItem = new NewsDetailTagItem();
tagItem.setId(tagId); tagItem.setId(tagId);
tagItem.setName(tag.getName()); tagItem.setName(tag.getName());
if (parentId == 1) { if (parentId != null && parentId == 1) {
newsDetailTag.setSource(tagItem); newsDetailTag.setSource(tagItem);
} else { } else {
newsDetailTag.setField(tagItem); newsDetailTag.setField(tagItem);
@ -245,8 +264,16 @@ public class NewsService {
saveNewsDTO.setStatus(2); saveNewsDTO.setStatus(2);
saveNewsDTO.setPublishTime(new Date()); saveNewsDTO.setPublishTime(new Date());
saveNewDraft(saveNewsDTO, null); saveNewDraft(saveNewsDTO, null);
newsId = newsMapper.getLastInsertId(); // newsId = newsMapper.getLastInsertId();
List<News> newList = newsMapper.queryNews(null, null, null, null, "createTime", null, 1, 0);
newsId = newList.get(0).getId();
}
Long newIdRl = null;
if (id == null) {
newIdRl = newsId;
} else {
newIdRl = id;
} }
news = new News(saveNewsDTO); news = new News(saveNewsDTO);
@ -259,12 +286,21 @@ public class NewsService {
if (saveDraftTag != null) { if (saveDraftTag != null) {
Long source = saveDraftTag.getSource(); Long source = saveDraftTag.getSource();
if (source != null) { if (source != null) {
tagMapper.saveNewsTagRel(id, source); tagMapper.saveNewsTagRel(newIdRl, source);
} }
Long field = saveDraftTag.getField(); // 频道标签多个批量插
if (field != null) { List<Long> fieldArr = saveDraftTag.getFieldArr();
tagMapper.saveNewsTagRel(id, field); if (fieldArr != null) {
for (Long item : fieldArr) {
tagMapper.saveNewsTagRel(newIdRl, item);
}
} }
// Long field = saveDraftTag.getField();
// if (field != null) {
// tagMapper.saveNewsTagRel(id, field);
// }
} }
} catch (Exception e) { } catch (Exception e) {
log.error("保存发布新闻标签出错!", e); log.error("保存发布新闻标签出错!", e);
@ -279,7 +315,7 @@ public class NewsService {
Long vipId = vip.getId(); Long vipId = vip.getId();
if (vipId != null) { if (vipId != null) {
Integer type = vip.getType(); Integer type = vip.getType();
columnMapper.saveNewsColumnRel(newsId, vipId, type); columnMapper.saveNewsColumnRel(newIdRl, vipId, type);
} }
} }
SaveDraftColumnItem earlyKnow = column.getEarlyKnow(); SaveDraftColumnItem earlyKnow = column.getEarlyKnow();
@ -287,16 +323,16 @@ public class NewsService {
Boolean show = earlyKnow.getShow(); Boolean show = earlyKnow.getShow();
if (show != null && show) { if (show != null && show) {
Integer type = earlyKnow.getType(); Integer type = earlyKnow.getType();
columnMapper.saveNewsColumnRel(newsId, 13L, null); columnMapper.saveNewsColumnRel(newIdRl, 13L, null);
} }
} }
Boolean showEverything = column.getShowEverything(); Boolean showEverything = column.getShowEverything();
Integer type = null; Integer type = null;
if (earlyKnow != null) { if (earlyKnow != null) {
type = earlyKnow.getType();//时间紧暂时把早知道的type挪过来 type = earlyKnow.getType();//时间紧暂时把早知道的type挪过来
} }
if (showEverything != null && showEverything) { if (showEverything != null && showEverything) {
columnMapper.saveNewsColumnRel(newsId, 14L, type); columnMapper.saveNewsColumnRel(newIdRl, 14L, type);
} }
} }
} catch (Exception e) { } catch (Exception e) {
@ -419,10 +455,18 @@ public class NewsService {
if (source != null) { if (source != null) {
tagMapper.saveDraftTagRel(draftId, source); tagMapper.saveDraftTagRel(draftId, source);
} }
Long field = saveDraftTag.getField(); List<Long> fieldArr = saveDraftTag.getFieldArr();
if (field != null) { if (fieldArr != null) {
tagMapper.saveDraftTagRel(draftId, field); for (Long item : fieldArr) {
tagMapper.saveNewsTagRel(draftId, item);
}
} }
// Long field = saveDraftTag.getField();
// if (field != null) {
// tagMapper.saveDraftTagRel(draftId, field);
// }
} }
} catch (Exception e) { } catch (Exception e) {
log.error("保存草稿标签出错!", e); log.error("保存草稿标签出错!", e);