Przeglądaj źródła

检验意见通知增加查看附件功能

xy 1 dzień temu
rodzic
commit
21cba491ae

+ 17 - 7
yudao-ui-admin-vue3/src/views/pressure2/inspectionOpinion/indexBoilerTab.vue

@@ -210,10 +210,10 @@
     </el-radio-group> -->
     <el-table ref="tableRef" :data="dataSource" :stripe="true" border height="calc(100vh - 500px)">
       <el-table-column type="selection" width="55" fixed="left" />
-      <el-table-column label="操作" align="center" min-width="300" fixed="left">
+      <el-table-column label="操作" align="center" min-width="320" fixed="left">
         <template #default="{ row }">
           <div class="flex justify-center">
-<!--            <el-button link type="primary" v-if="filerFileUrlShowFn(row)" @click="handleFilePreview(row)"> 查看附件 </el-button>-->
+            <el-button link type="primary" v-if="filerFileUrlShowFn(row)" @click="handlePreviewFiles(row)"> 查看附件 </el-button>
             <el-button link type="primary" @click="handleRePush(row)"> 消息推送 </el-button>
             <el-button link type="primary" @click="() => handleFollowRecord(row)">
               跟进记录
@@ -656,6 +656,14 @@
 
  <unitContainerForm ref="unitContainerFormRef" />
 
+  <RectificationMaterialsDialog
+    :visible="previewFilesVisible"
+    :report-name="previewRow?.reportName"
+    :detail="previewRow"
+    :editable="false"
+    @close="previewFilesVisible = false"
+  />
+
   <!-- PDF预览 + 消息推送弹窗 -->
   <FilePreview
     v-if="previewVisible"
@@ -675,6 +683,7 @@ import { ref, reactive } from 'vue'
 import VuePdfEmbed from 'vue-pdf-embed'
 import {PressureBoilerCheckTypeMap} from '@/utils/constants'
 import unitContainerForm from '@/components/unitContainerForm/index.vue'
+import RectificationMaterialsDialog from '@/views/pressure2/components/RectificationMaterialsDialog.vue'
 import { formatArrayDate, formatDate } from '@/utils/formatTime'
 import { ElMessage, FormRules, ElForm, FormInstance } from 'element-plus'
 import ReportListUploadModal from '@/views/pressure/checker/components/reportListUploadModal.vue'
@@ -691,6 +700,8 @@ const route = useRoute()
 const { loadStart, loadDone } = usePageLoading()
 const reportListUploadModalRef = ref<InstanceType<typeof ReportListUploadModal>>()
 const unitContainerFormRef = ref<InstanceType<typeof unitContainerForm>>()
+const previewFilesVisible = ref(false)
+const previewRow = ref<any>({})
 const userStore = useUserStoreWithOut() // 用户信息缓存
 
 const equipmentTypeMap = getStrDictOptions(DICT_TYPE.SYSTEM_EQUIP_BOILER_TYPE)
@@ -914,13 +925,12 @@ const fiePreviewEmitFn = async () => {
   }
   recipientDialogVisible.value = true
 }
-const handleFilePreview = (row) => {
-  currentReport.value = row
-  allReportList.value = [{id: row.id, reportName: row.reportName}]
-  reportListUploadModalRef.value?.openModal(false, currentReport.value)
+const handlePreviewFiles = (row) => {
+  previewRow.value = row
+  previewFilesVisible.value = true
 }
 const filerFileUrlShowFn = (row) => {
-  if (row?.attachment || row?.image || row?.video) {
+  if (row?.rectificationImage || row?.rectificationUrl || row?.rectificationVideo) {
     return true
   }else {
     return false

+ 17 - 7
yudao-ui-admin-vue3/src/views/pressure2/inspectionOpinion/indexPipeTab.vue

@@ -210,10 +210,10 @@
     </el-radio-group> -->
     <el-table ref="tableRef" :data="dataSource" :stripe="true" border height="calc(100vh - 500px)">
       <el-table-column type="selection" width="55" fixed="left" />
-      <el-table-column label="操作" align="center" min-width="300" fixed="left">
+      <el-table-column label="操作" align="center" min-width="320" fixed="left">
         <template #default="{ row }">
           <div class="flex justify-center">
-<!--            <el-button link type="primary" v-if="filerFileUrlShowFn(row)" @click="handleFilePreview(row)"> 查看附件 </el-button>-->
+            <el-button link type="primary" v-if="filerFileUrlShowFn(row)" @click="handlePreviewFiles(row)"> 查看附件 </el-button>
             <el-button link type="primary" @click="handleRePush(row)"> 消息推送 </el-button>
             <el-button link type="primary" @click="() => handleFollowRecord(row)">
               跟进记录
@@ -656,6 +656,14 @@
 
  <unitContainerForm ref="unitContainerFormRef" />
 
+  <RectificationMaterialsDialog
+    :visible="previewFilesVisible"
+    :report-name="previewRow?.reportName"
+    :detail="previewRow"
+    :editable="false"
+    @close="previewFilesVisible = false"
+  />
+
   <!-- PDF预览 + 消息推送弹窗 -->
   <FilePreview
     v-if="previewVisible"
@@ -675,6 +683,7 @@ import { ref, reactive } from 'vue'
 import VuePdfEmbed from 'vue-pdf-embed'
 import {PressurePipeCheckTypeMap} from '@/utils/constants'
 import unitContainerForm from '@/components/unitContainerForm/index.vue'
+import RectificationMaterialsDialog from '@/views/pressure2/components/RectificationMaterialsDialog.vue'
 import { formatArrayDate, formatDate } from '@/utils/formatTime'
 import { ElMessage, FormRules, ElForm, FormInstance } from 'element-plus'
 import ReportListUploadModal from '@/views/pressure/checker/components/reportListUploadModal.vue'
@@ -691,6 +700,8 @@ const route = useRoute()
 const { loadStart, loadDone } = usePageLoading()
 const reportListUploadModalRef = ref<InstanceType<typeof ReportListUploadModal>>()
 const unitContainerFormRef = ref<InstanceType<typeof unitContainerForm>>()
+const previewFilesVisible = ref(false)
+const previewRow = ref<any>({})
 const userStore = useUserStoreWithOut() // 用户信息缓存
 
 const equipmentTypeMap = getStrDictOptions(DICT_TYPE.PIPE_TYPE)
@@ -914,13 +925,12 @@ const fiePreviewEmitFn = async () => {
   }
   recipientDialogVisible.value = true
 }
-const handleFilePreview = (row) => {
-  currentReport.value = row
-  allReportList.value = [{id: row.id, reportName: row.reportName}]
-  reportListUploadModalRef.value?.openModal(false, currentReport.value)
+const handlePreviewFiles = (row) => {
+  previewRow.value = row
+  previewFilesVisible.value = true
 }
 const filerFileUrlShowFn = (row) => {
-  if (row?.attachment || row?.image || row?.video) {
+  if (row?.rectificationImage || row?.rectificationUrl || row?.rectificationVideo) {
     return true
   }else {
     return false