|
|
@@ -393,8 +393,8 @@ const fetchNews = async () => {
|
|
|
newsList.value = response.data.data.map((news) => ({
|
|
|
...news,
|
|
|
isEditing: false,
|
|
|
- categoryIds: news.categoryIds || [news.categoryId], // 初始化categoryIds数组
|
|
|
- categoryNames: news.categoryNames || [news.categoryName], // 初始化categoryNames数组
|
|
|
+ categoryIds: news.categoryIds || [], // 初始化categoryIds数组
|
|
|
+ categoryNames: news.categoryNames || [], // 初始化categoryNames数组
|
|
|
}))
|
|
|
pagination.value.total = response.data.total
|
|
|
// 下一帧恢复选中状态(确保表格渲染完成)
|
|
|
@@ -457,6 +457,10 @@ const fetchReports = async () => {
|
|
|
}
|
|
|
|
|
|
const saveNewsField = async (news: EditableNewsItem, field?: string) => {
|
|
|
+ if (news.categoryIds && news.categoryIds.length === 0) {
|
|
|
+ ElMessage.warning('请选择分类')
|
|
|
+ return
|
|
|
+ }
|
|
|
try {
|
|
|
// 如果没有指定字段,保存所有字段
|
|
|
const updates: Partial<NewsItem> = field
|
|
|
@@ -483,8 +487,6 @@ const saveNewsField = async (news: EditableNewsItem, field?: string) => {
|
|
|
categories.value.find(c => c.id === id)?.name
|
|
|
).filter(Boolean)
|
|
|
news.categoryNames = categoryNames
|
|
|
- news.categoryName = categoryNames[0] || news.categoryName
|
|
|
- news.categoryId = news.categoryIds[0] || news.categoryId
|
|
|
}
|
|
|
// 清除原始数据
|
|
|
news.originalData = undefined
|