yangyuxuan 3 months ago
parent
commit
6f31d40a68

+ 54 - 14
src/views/duty/eventing/eventDetails.vue

@@ -97,11 +97,23 @@
         <i class="line-icon" />
         <div class="common-info-title">匹配预案</div>
       </div>
-      <div v-if="detailData.plan_name" class="common-info-content">
-        <div class="list">
-          <div class="list-item">
-            <i class="img"></i>
-            <div class="item-title">{{ detailData.plan_name }}</div>
+<!--      <div v-if="detailData.plan_name" class="common-info-content">-->
+<!--        <div class="list">-->
+<!--          <div class="list-item">-->
+<!--            <i class="img"></i>-->
+<!--            <div class="item-title">{{ detailData.plan_name }}</div>-->
+<!--          </div>-->
+<!--        </div>-->
+<!--      </div>-->
+      <div v-if="!!planFiles && planFiles.length > 0" class="common-info-content">
+        <div class="list2">
+          <div v-for="(item, index) in planFiles" :key="index" class="list-item" style="margin-bottom: 10px">
+            <div class="link" @click="previewSummaryFile2(item)">{{ item.name }}</div>
+            <div style="margin-left: 40px" @click="previewSummaryFile2(item)">查看</div>
+            <div style="margin-left: 20px; display: flex; align-items: center" @click="downloadSummaryFile2(item)">
+              <span>下载</span>
+              <el-icon class="icon" style="margin-left: 0px"><Download /></el-icon>
+            </div>
           </div>
         </div>
       </div>
@@ -109,23 +121,33 @@
         <div class="item-title">暂无数据</div>
       </div>
     </div>
+    <el-dialog v-model="dialogTableVisible2" :title="detailInfo2.name" width="800" style="height: 520px">
+      <pdf-viewer v-if="dialogTableVisible2" :url="baseUrl + '/file/download/' + detailInfo2.url" />
+    </el-dialog>
     <div class="common-info-box">
       <div class="common-info-header">
         <i class="line-icon" />
         <div class="common-info-title">事件总结报告</div>
       </div>
-      <pdf-viewer :url="baseUrl + '/file/download/' + '87735cf0-ee73-11ef-862c-fa163e4bf12e.pdf'" />
 
+<!--      <pdf-viewer :url="baseUrl + '/file/download/' + '87735cf0-ee73-11ef-862c-fa163e4bf12e.pdf'" />-->
 
       <div v-if="!!summaryFiles && summaryFiles.length > 0" class="common-info-content">
         <div class="list2">
-          <div v-for="(item, index) in summaryFiles" :key="index" class="list-item" @click="downloadSummaryFile(item)">
-            <div class="link">{{ item.file_name }}</div>
-            <el-icon class="icon"><Download /></el-icon>
+          <div v-for="(item, index) in summaryFiles" :key="index" class="list-item" style="margin-bottom: 10px">
+            <div class="link" @click="previewSummaryFile(item)">{{ item.file_name }}</div>
+            <div style="margin-left: 40px" @click="previewSummaryFile(item)">查看</div>
+            <div style="margin-left: 20px; display: flex; align-items: center" @click="downloadSummaryFile(item)">
+              <span>下载</span>
+              <el-icon class="icon" style="margin-left: 0px"><Download /></el-icon>
+            </div>
           </div>
         </div>
       </div>
     </div>
+    <el-dialog v-model="dialogTableVisible" :title="detailInfo.file_name" width="800" style="height: 520px">
+      <pdf-viewer v-if="dialogTableVisible" :url="baseUrl + '/file/download/' + detailInfo.url" />
+    </el-dialog>
     <el-dialog v-model="eventLevelState.show" title="事件等级" width="500" :before-close="handleEventLevelClose">
       <el-timeline>
         <el-timeline-item
@@ -179,7 +201,10 @@ const { mm_event_type, mm_event_level, mm_event_state, region } = toRefs<any>(
   proxy?.useDict('mm_event_type', 'mm_event_level', 'mm_event_state', 'region')
 );
 const emits = defineEmits(['close']);
-
+const dialogTableVisible = ref(false);
+const dialogTableVisible2 = ref(false);
+const detailInfo = ref({});
+const detailInfo2 = ref({});
 // 事件等级数据
 let eventLevelState = reactive({
   show: false,
@@ -195,11 +220,15 @@ const handleEventLevelClose = () => {
 
 // 下载总结报告
 let summaryFiles = ref([]);
+let planFiles = ref([]);
 const baseUrl = import.meta.env.VITE_APP_BASE_API;
 // 下载方法
 const downloadSummaryFile = (file: any) => {
   download2(baseUrl + '/file/download/' + file.url, file.file_name);
 };
+const downloadSummaryFile2 = (file: any) => {
+  download2(baseUrl + '/file/download/' + file.url, file.name);
+};
 
 // 事件跟踪数据
 let eventTrackState = reactive({
@@ -281,10 +310,7 @@ const editCasualtiesDialogState = reactive({
   }
 });
 
-const detailInfo = ref({
-  file_title: '',
-  file_name: '',
-});
+
 
 // 开始指挥(事件)
 const handleStartEvent = () => {
@@ -346,6 +372,7 @@ const fetchEventDetail = () => {
     eventTrackState = res.data.event_status_tracks;
     eventLevelState.data = res.data.event_level_tracks;
     summaryFiles.value = res.data.summary_file;
+    planFiles.value = res.data.plan_files;
   });
 };
 
@@ -355,6 +382,19 @@ const handleUpdate = () => {
   eventEditDialogState.show = true;
 };
 
+const previewSummaryFile = (file) => {
+  detailInfo.value = file
+  if (file) {
+    dialogTableVisible.value = true;
+  }
+};
+const previewSummaryFile2 = (file) => {
+  detailInfo2.value = file
+  if (file) {
+    dialogTableVisible2.value = true;
+  }
+};
+
 
 onMounted(() => {
   fetchEventDetail();

+ 5 - 5
src/views/knowledge/HiddenStandards/PdfViewer.vue

@@ -180,11 +180,11 @@ onMounted(() => {
     position: relative;
     background: #f0f0f0;
 
-    .pdf-container {
-      transition: transform 0.3s ease;
-      will-change: transform;
-      padding: 20px;
-    }
+    //.pdf-container {
+    //  transition: transform 0.3s ease;
+    //  will-change: transform;
+    //  padding: 20px;
+    //}
 
     .vue-pdf-embed {
       transform-origin: 0 0;