Browse Source

报告详情-类别添加多选;一键导出上月报告时间组件调整

xiexiang 1 week ago
parent
commit
e4c8945c67

+ 4 - 4
src/views/news/components/dialog/oneClickExportReport.vue

@@ -89,12 +89,12 @@ const shortcuts = [
     text: '上个月',
     value: () => {
       const end = new Date();
-      // 设置为上个月最后一天
-      end.setDate(0); // 当前月第0天 = 上个月最后一天
-      end.setHours(23, 59, 59, 999);
+      // 先设置到当月1日,再减去1天得到上个月最后一天
+      end.setDate(1);
+      end.setHours(0, 0, 0, 0);
+      end.setMilliseconds(-1); // 减去1毫秒得到上个月最后一天的23:59:59.999
       
       const start = new Date(end);
-      start.setMonth(start.getMonth() - 1); // 上个月
       start.setDate(1); // 上个月第1天
       start.setHours(0, 0, 0, 0);
       

+ 9 - 2
src/views/report/ReportDetail.vue

@@ -79,9 +79,10 @@
                   <el-form :model="editForm" label-width="60px" size="small">
                     <el-form-item label="分类">
                       <el-select
-                        v-model="editForm.categoryId"
+                        v-model="editForm.categoryIds"
                         placeholder="请选择分类"
                         style="width: 100%"
+                        multiple
                       >
                         <el-option
                           v-for="category in categories"
@@ -160,6 +161,7 @@ const loading = ref(false)
 // Edit state
 const editingNewsId = ref<number | null>(null)
 const editForm = ref({
+  categoryIds: [],
   categoryId: 0,
   digest: '',
 })
@@ -228,6 +230,7 @@ const fetchCategories = async () => {
 const startEdit = (news: NewsItem) => {
   editingNewsId.value = news.articleId
   editForm.value = {
+    categoryIds:[news.categoryId],
     categoryId: news.categoryId,
     digest: news.digest,
   }
@@ -236,12 +239,16 @@ const startEdit = (news: NewsItem) => {
 
 const saveEdit = async () => {
   if (!editingNewsId.value) return
-
+  if (editingNewsId.value && editForm.value.categoryIds.length === 0) {
+    ElMessage.warning('请选择分类')
+    return
+  }
   try {
     const params = {
       articleId: editingNewsId.value,
       ...editForm.value,
     }
+    params.categoryIds = editForm.value.categoryIds ? Object.values(editForm.value.categoryIds) : []
     await newsApi.updateNews(params)
     ElMessage.success('资讯更新成功')
     editingNewsId.value = null