|
|
@@ -23,7 +23,13 @@
|
|
|
<!-- News by category -->
|
|
|
<div class="news-by-category" v-loading="loading">
|
|
|
<div v-for="item in newsByCategory" :key="item.categoryName" class="category-section">
|
|
|
- <h3 class="category-title">{{ item.categoryName }}</h3>
|
|
|
+ <div class="title">
|
|
|
+ <h3 class="category-title">{{ item.categoryName }}</h3>
|
|
|
+ <el-button type="danger" size="small" @click="removeAllFromReport(item.data)"
|
|
|
+ >全部移除</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
+
|
|
|
<div class="news-list">
|
|
|
<div v-for="news in item.data" :key="news.articleId" class="news-item">
|
|
|
<div class="news-item-header">
|
|
|
@@ -262,11 +268,20 @@ const cancelEdit = () => {
|
|
|
}
|
|
|
|
|
|
const removeFromReport = async (news: NewsItem) => {
|
|
|
+ removeNews([news.assoId])
|
|
|
+}
|
|
|
+
|
|
|
+const removeAllFromReport = async (newsList:NewsItem[]) => {
|
|
|
+ const assoIds = newsList.map(item=>item.assoId)
|
|
|
+ removeNews(assoIds)
|
|
|
+}
|
|
|
+
|
|
|
+const removeNews = async (assoIds:any[]) => {
|
|
|
try {
|
|
|
await ElMessageBox.confirm('确定要从报告中移除该资讯吗?', '提示', {
|
|
|
type: 'warning',
|
|
|
})
|
|
|
- await reportApi.removeNewsFromReport({ assoId: news.assoId })
|
|
|
+ await reportApi.removeNewsFromReport({ assoIds: assoIds})
|
|
|
ElMessage.success('资讯已从报告中移除')
|
|
|
fetchReportNews()
|
|
|
} catch (error) {
|
|
|
@@ -338,6 +353,12 @@ onMounted(async () => {
|
|
|
margin-bottom: 30px;
|
|
|
}
|
|
|
|
|
|
+.category-section .title{
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+}
|
|
|
+
|
|
|
.category-title {
|
|
|
font-size: 18px;
|
|
|
font-weight: bold;
|