详情文件预览
This commit is contained in:
28
src/components/PreviewFile/index.vue
Normal file
28
src/components/PreviewFile/index.vue
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
<template>
|
||||||
|
<div style="overflow: auto; height: 100vh">
|
||||||
|
<vue-office-docx v-if="url.includes('.doc') || url.includes('.docx')" :src="url" />
|
||||||
|
<vue-office-excel v-if="url.includes('.xls') || url.includes('.xlsx')" :src="url" />
|
||||||
|
<vue-office-pdf v-if="url.includes('.pdf')" :src="url" />
|
||||||
|
<img v-if="url.includes('.png') || url.includes('.jpg') || url.includes('.gif')" :src="url" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang="ts" setup>
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const { push, options, currentRoute } = useRouter()
|
||||||
|
const fileHead = 'http://192.168.1.22:9009/excelreport/supervision/'
|
||||||
|
const url = ref('')
|
||||||
|
url.value = fileHead + currentRoute.value.href?.split('?')[1]
|
||||||
|
// url.value = currentRoute.value.href?.split('?')[1]
|
||||||
|
//引入相关样式
|
||||||
|
import '@vue-office/excel/lib/index.css'
|
||||||
|
//引入VueOfficeDocx组件
|
||||||
|
import VueOfficeDocx from '@vue-office/docx'
|
||||||
|
import VueOfficeExcel from '@vue-office/excel'
|
||||||
|
//引入VueOfficePdf组件
|
||||||
|
import VueOfficePdf from '@vue-office/pdf'
|
||||||
|
const dialogVisible = ref(false)
|
||||||
|
onMounted(() => {
|
||||||
|
console.log()
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped></style>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { createRouter, createWebHashHistory } from 'vue-router'
|
import { createRouter, createWebHashHistory } from 'vue-router'
|
||||||
import staticRoutes from '@/router/static'
|
import staticRoutes from '@/router/static'
|
||||||
import { useAdminInfo } from '@/stores/adminInfo'
|
import { useAdminInfo } from '@/stores/adminInfo'
|
||||||
import NProgress from 'nprogress'
|
import NProgress from 'nprogress'
|
||||||
|
|||||||
@@ -225,6 +225,14 @@ const staticRoutes: Array<RouteRecordRaw> = [
|
|||||||
title: pageTitle('notFound') // 页面不存在
|
title: pageTitle('notFound') // 页面不存在
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/previewFile',
|
||||||
|
name: 'previewFile',
|
||||||
|
component: () => import('@/components/PreviewFile/index.vue'),
|
||||||
|
meta: {
|
||||||
|
title: pageTitle('previewFile')
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
// 后台找不到页面了-可能是路由未加载上
|
// 后台找不到页面了-可能是路由未加载上
|
||||||
path: adminBaseRoutePath + ':path(.*)*',
|
path: adminBaseRoutePath + ':path(.*)*',
|
||||||
|
|||||||
@@ -123,7 +123,6 @@ body,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.zoom-handle {
|
.zoom-handle {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 20px;
|
width: 20px;
|
||||||
|
|||||||
@@ -27,9 +27,7 @@
|
|||||||
<a :href="item.url">
|
<a :href="item.url">
|
||||||
{{ item.fileName }}
|
{{ item.fileName }}
|
||||||
</a>
|
</a>
|
||||||
<!-- <el-button type="primary" link @click="downloadFile(item.url, item.fileName)">
|
<span @click="openFile(item.fileName)">预览</span>
|
||||||
{{ item.fileName }}
|
|
||||||
</el-button> -->
|
|
||||||
</div>
|
</div>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
@@ -65,7 +63,9 @@ import { defaultAttribute } from '@/components/table/defaultAttribute'
|
|||||||
import { useDictData } from '@/stores/dictData'
|
import { useDictData } from '@/stores/dictData'
|
||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
|
const openFile = (name: any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?' + name)
|
||||||
|
}
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
id: propTypes.string.def(undefined)
|
id: propTypes.string.def(undefined)
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -53,7 +53,9 @@ import { propTypes } from '@/utils/propTypes'
|
|||||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||||
import { useDictData } from '@/stores/dictData'
|
import { useDictData } from '@/stores/dictData'
|
||||||
import { getPlanById } from '@/api/supervision-boot/survey/plan'
|
import { getPlanById } from '@/api/supervision-boot/survey/plan'
|
||||||
|
const openFile = (name:any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?'+name)
|
||||||
|
}
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
id: propTypes.string.def(undefined)
|
id: propTypes.string.def(undefined)
|
||||||
|
|||||||
@@ -52,6 +52,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href='detailData.testReport' target='_blank'>{{ detailData.testReportName }}</a>
|
<a :href='detailData.testReport' target='_blank'>{{ detailData.testReportName }}</a>
|
||||||
|
<span @click="openFile(detailData.testReportName )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label='审核状态'>
|
<el-descriptions-item label='审核状态'>
|
||||||
@@ -73,7 +74,9 @@ import { defaultAttribute } from '@/components/table/defaultAttribute'
|
|||||||
import { getTestById } from '@/api/supervision-boot/survey/test'
|
import { getTestById } from '@/api/supervision-boot/survey/test'
|
||||||
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
|
const openFile = (name:any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?'+name)
|
||||||
|
}
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
id: propTypes.string.def(undefined)
|
id: propTypes.string.def(undefined)
|
||||||
|
|||||||
@@ -254,6 +254,7 @@
|
|||||||
<span v-if="detailData.userType == 0 || detailData.userType == 1">
|
<span v-if="detailData.userType == 0 || detailData.userType == 1">
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.feasibilityReport.name)">预览</span>
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span
|
||||||
v-if="
|
v-if="
|
||||||
@@ -265,10 +266,12 @@
|
|||||||
>
|
>
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.feasibilityReport.name)">预览</span>
|
||||||
</span>
|
</span>
|
||||||
<span v-if="detailData.userType == 6">
|
<span v-if="detailData.userType == 6">
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
<a :href="proviteData.feasibilityReport.url">{{ proviteData.feasibilityReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.feasibilityReport.name)">预览</span>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
@@ -281,6 +284,7 @@
|
|||||||
<a :href="proviteData?.preliminaryDesignDescription.url">
|
<a :href="proviteData?.preliminaryDesignDescription.url">
|
||||||
{{ proviteData?.preliminaryDesignDescription.name }}
|
{{ proviteData?.preliminaryDesignDescription.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData?.preliminaryDesignDescription.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item>
|
<details_item>
|
||||||
@@ -292,6 +296,7 @@
|
|||||||
<a :href="proviteData?.predictionEvaluationReport.url">
|
<a :href="proviteData?.predictionEvaluationReport.url">
|
||||||
{{ proviteData?.predictionEvaluationReport.name }}
|
{{ proviteData?.predictionEvaluationReport.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData?.predictionEvaluationReport.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item>
|
<details_item>
|
||||||
@@ -303,6 +308,7 @@
|
|||||||
<a :href="proviteData?.predictionEvaluationReviewOpinions.url">
|
<a :href="proviteData?.predictionEvaluationReviewOpinions.url">
|
||||||
{{ proviteData?.predictionEvaluationReviewOpinions.name }}
|
{{ proviteData?.predictionEvaluationReviewOpinions.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData?.predictionEvaluationReviewOpinions.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item v-if="detailData.userType != 0 && detailData.userType != 1">
|
<details_item v-if="detailData.userType != 0 && detailData.userType != 1">
|
||||||
@@ -314,6 +320,7 @@
|
|||||||
<a :href="proviteData?.substationMainWiringDiagram.url" target="_blank">
|
<a :href="proviteData?.substationMainWiringDiagram.url" target="_blank">
|
||||||
{{ proviteData?.substationMainWiringDiagram.name }}
|
{{ proviteData?.substationMainWiringDiagram.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData?.substationMainWiringDiagram.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item v-if="detailData.userType == 6">
|
<details_item v-if="detailData.userType == 6">
|
||||||
@@ -323,6 +330,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href="proviteData?.sensitiveDevices.url">{{ proviteData?.sensitiveDevices.name }}</a>
|
<a :href="proviteData?.sensitiveDevices.url">{{ proviteData?.sensitiveDevices.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.sensitiveDevices.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item v-if="detailData.userType == 6">
|
<details_item v-if="detailData.userType == 6">
|
||||||
@@ -332,6 +340,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href="proviteData?.antiInterferenceReport.url">{{ proviteData?.antiInterferenceReport.name }}</a>
|
<a :href="proviteData?.antiInterferenceReport.url">{{ proviteData?.antiInterferenceReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.antiInterferenceReport.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item v-if="detailData.userType == 6">
|
<details_item v-if="detailData.userType == 6">
|
||||||
@@ -341,6 +350,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href="proviteData?.powerQualityReport.url">{{ proviteData?.powerQualityReport.name }}</a>
|
<a :href="proviteData?.powerQualityReport.url">{{ proviteData?.powerQualityReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.powerQualityReport.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<details_item v-if="proviteData?.additionalAttachments.url">
|
<details_item v-if="proviteData?.additionalAttachments.url">
|
||||||
@@ -350,6 +360,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href="proviteData?.additionalAttachments.url">{{ proviteData?.additionalAttachments.name }}</a>
|
<a :href="proviteData?.additionalAttachments.url">{{ proviteData?.additionalAttachments.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.additionalAttachments.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
<el-divider content-position="left">{{ applyTitle + '填报信息' }}</el-divider>
|
<el-divider content-position="left">{{ applyTitle + '填报信息' }}</el-divider>
|
||||||
@@ -376,6 +387,7 @@
|
|||||||
<template #content>
|
<template #content>
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a :href="proviteData?.otherReport.url">{{ proviteData?.otherReport.name }}</a>
|
<a :href="proviteData?.otherReport.url">{{ proviteData?.otherReport.name }}</a>
|
||||||
|
<span @click="openFile(proviteData?.otherReport.name)">预览</span>
|
||||||
</template>
|
</template>
|
||||||
</details_item>
|
</details_item>
|
||||||
</div>
|
</div>
|
||||||
@@ -393,7 +405,9 @@ import { Link } from '@element-plus/icons-vue'
|
|||||||
import { userReportGoNetById } from '@/api/supervision-boot/interfere'
|
import { userReportGoNetById } from '@/api/supervision-boot/interfere'
|
||||||
import details_item from './components/detailsItem.vue'
|
import details_item from './components/detailsItem.vue'
|
||||||
defineOptions({ name: 'BpmUserReportDetail' })
|
defineOptions({ name: 'BpmUserReportDetail' })
|
||||||
|
const openFile = (name: any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?' + name)
|
||||||
|
}
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
|||||||
@@ -105,7 +105,10 @@
|
|||||||
{{ proviteData.antiInterferenceTest == 0 ? '否' : '是' }}
|
{{ proviteData.antiInterferenceTest == 0 ? '否' : '是' }}
|
||||||
</span>
|
</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="用户协议容量(MVA)" v-if="detailData.userType == 0 || detailData.userType == 1">
|
<el-descriptions-item
|
||||||
|
label="用户协议容量(MVA)"
|
||||||
|
v-if="detailData.userType == 0 || detailData.userType == 1"
|
||||||
|
>
|
||||||
{{ proviteData.agreementCapacity }}
|
{{ proviteData.agreementCapacity }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item
|
<el-descriptions-item
|
||||||
@@ -175,26 +178,26 @@
|
|||||||
<el-descriptions-item label="敏感装置名称" v-if="detailData.userType == 6">
|
<el-descriptions-item label="敏感装置名称" v-if="detailData.userType == 6">
|
||||||
{{ proviteData.deviceName }}
|
{{ proviteData.deviceName }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<!-- <el-descriptions-item label="供电电源数量" v-if="detailData.userType == 6">-->
|
<!-- <el-descriptions-item label="供电电源数量" v-if="detailData.userType == 6">-->
|
||||||
<!-- {{ proviteData.powerSupplyCount }}-->
|
<!-- {{ proviteData.powerSupplyCount }}-->
|
||||||
<!-- </el-descriptions-item>-->
|
<!-- </el-descriptions-item>-->
|
||||||
<el-descriptions-item label="供电电源情况" v-if="detailData.userType == 6">
|
<el-descriptions-item label="供电电源情况" v-if="detailData.userType == 6">
|
||||||
{{
|
{{
|
||||||
powerSupplyInfoOptionList.find(item => {
|
powerSupplyInfoOptionList.find(item => {
|
||||||
return item.id == proviteData.powerSupplyInfo
|
return item.id == proviteData.powerSupplyInfo
|
||||||
})?.name
|
})?.name
|
||||||
}}
|
}}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="供电电源" :span='2' v-if="detailData.userType == 6">
|
<el-descriptions-item label="供电电源" :span="2" v-if="detailData.userType == 6">
|
||||||
{{ proviteData.powerSupply }}
|
{{ proviteData.powerSupply }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="负荷级别" v-if="detailData.userType == 6">
|
<el-descriptions-item label="负荷级别" v-if="detailData.userType == 6">
|
||||||
{{
|
{{
|
||||||
loadLevelOptionList.find(item => {
|
loadLevelOptionList.find(item => {
|
||||||
return item.id == proviteData.loadLevel
|
return item.id == proviteData.loadLevel
|
||||||
})?.name
|
})?.name
|
||||||
}}
|
}}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="敏感电能质量指标" v-if="detailData.userType == 6">
|
<el-descriptions-item label="敏感电能质量指标" v-if="detailData.userType == 6">
|
||||||
{{
|
{{
|
||||||
energyQualityIndexList.find(item => {
|
energyQualityIndexList.find(item => {
|
||||||
@@ -205,7 +208,10 @@
|
|||||||
<el-descriptions-item label="可研报告">
|
<el-descriptions-item label="可研报告">
|
||||||
<span v-if="detailData.userType == 0 || detailData.userType == 1">
|
<span v-if="detailData.userType == 0 || detailData.userType == 1">
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a target="_blank" :href="proviteData.feasibilityReport?.url">{{ proviteData.feasibilityReport?.name }}</a>
|
<a target="_blank" :href="proviteData.feasibilityReport?.url" rel="nofollow">
|
||||||
|
{{ proviteData.feasibilityReport?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.feasibilityReport?.name )">预览</span>
|
||||||
</span>
|
</span>
|
||||||
<span
|
<span
|
||||||
v-if="
|
v-if="
|
||||||
@@ -216,36 +222,45 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a target="_blank" :href="proviteData.feasibilityReport?.url">{{ proviteData.feasibilityReport?.name }}</a>
|
<a target="_blank" :href="proviteData.feasibilityReport?.url">
|
||||||
|
{{ proviteData.feasibilityReport?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.feasibilityReport?.name )">预览</span>
|
||||||
</span>
|
</span>
|
||||||
<span v-if="detailData.userType == 6">
|
<span v-if="detailData.userType == 6">
|
||||||
<el-icon><Link /></el-icon>
|
<el-icon><Link /></el-icon>
|
||||||
<a target="_blank" :href="proviteData.feasibilityReport?.url">{{ proviteData.feasibilityReport?.name }}</a>
|
<a target="_blank" :href="proviteData.feasibilityReport?.url">
|
||||||
|
{{ proviteData.feasibilityReport?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.feasibilityReport?.name )">预览</span>
|
||||||
</span>
|
</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="项目初步设计说明书">
|
<el-descriptions-item label="项目初步设计说明书">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.preliminaryDesignDescription?.url">
|
<a target="_blank" :href="proviteData?.preliminaryDesignDescription?.url">
|
||||||
{{ proviteData?.preliminaryDesignDescription?.name }}
|
{{ proviteData?.preliminaryDesignDescription?.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData.preliminaryDesignDescription?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="预测评估报告">
|
<el-descriptions-item label="预测评估报告">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.predictionEvaluationReport?.url">
|
<a target="_blank" :href="proviteData?.predictionEvaluationReport?.url">
|
||||||
{{ proviteData?.predictionEvaluationReport?.name }}
|
{{ proviteData?.predictionEvaluationReport?.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData.predictionEvaluationReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="预测评估评审意见报告">
|
<el-descriptions-item label="预测评估评审意见报告">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.predictionEvaluationReviewOpinions?.url">
|
<a target="_blank" :href="proviteData?.predictionEvaluationReviewOpinions?.url">
|
||||||
{{ proviteData?.predictionEvaluationReviewOpinions?.name }}
|
{{ proviteData?.predictionEvaluationReviewOpinions?.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData.predictionEvaluationReviewOpinions?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item
|
<el-descriptions-item
|
||||||
label="用户接入变电站主接线示意图"
|
label="用户接入变电站主接线示意图"
|
||||||
@@ -254,27 +269,37 @@
|
|||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.substationMainWiringDiagram?.url">
|
<a target="_blank" :href="proviteData?.substationMainWiringDiagram?.url">
|
||||||
{{ proviteData?.substationMainWiringDiagram?.name }}
|
{{ proviteData?.substationMainWiringDiagram?.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(proviteData.substationMainWiringDiagram?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="主要敏感设备清单" v-if="detailData.userType == 6">
|
<el-descriptions-item label="主要敏感设备清单" v-if="detailData.userType == 6">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.sensitiveDevices?.url">{{ proviteData?.sensitiveDevices?.name }}</a>
|
<a target="_blank" :href="proviteData?.sensitiveDevices?.url">
|
||||||
|
{{ proviteData?.sensitiveDevices?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.sensitiveDevices?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="抗扰度测试报告" v-if="detailData.userType == 6">
|
<el-descriptions-item label="抗扰度测试报告" v-if="detailData.userType == 6">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.antiInterferenceReport?.url">{{ proviteData?.antiInterferenceReport?.name }}</a>
|
<a target="_blank" :href="proviteData?.antiInterferenceReport?.url">
|
||||||
|
{{ proviteData?.antiInterferenceReport?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.antiInterferenceReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="背景电能质量测试报告" v-if="detailData.userType == 6">
|
<el-descriptions-item label="背景电能质量测试报告" v-if="detailData.userType == 6">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.powerQualityReport?.url">{{ proviteData?.powerQualityReport?.name }}</a>
|
<a target="_blank" :href="proviteData?.powerQualityReport?.url">
|
||||||
|
{{ proviteData?.powerQualityReport?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.powerQualityReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item
|
<el-descriptions-item
|
||||||
label="其他附件"
|
label="其他附件"
|
||||||
@@ -283,14 +308,17 @@
|
|||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank" :href="proviteData?.additionalAttachments?.url">{{ proviteData?.additionalAttachments?.name }}</a>
|
<a target="_blank" :href="proviteData?.additionalAttachments?.url">
|
||||||
|
{{ proviteData?.additionalAttachments?.name }}
|
||||||
|
</a>
|
||||||
|
<span @click="openFile(proviteData.additionalAttachments?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { onMounted, ref, reactive, watch } from 'vue'
|
import { onMounted, ref, reactive, watch } from 'vue'
|
||||||
import { useRoute } from 'vue-router'
|
import { useRoute, useRouter } from 'vue-router'
|
||||||
import { formatDate } from '@/utils/formatTime'
|
import { formatDate } from '@/utils/formatTime'
|
||||||
import { propTypes } from '@/utils/propTypes'
|
import { propTypes } from '@/utils/propTypes'
|
||||||
import { getUserReportById } from '@/api/supervision-boot/userReport/form'
|
import { getUserReportById } from '@/api/supervision-boot/userReport/form'
|
||||||
@@ -298,7 +326,7 @@ import { getDictTreeById } from '@/api/system-boot/dictTree'
|
|||||||
import { useDictData } from '@/stores/dictData'
|
import { useDictData } from '@/stores/dictData'
|
||||||
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
|
import PreviewFile from '@/components/PreviewFile/index.vue'
|
||||||
defineOptions({ name: 'BpmUserReportDetail' })
|
defineOptions({ name: 'BpmUserReportDetail' })
|
||||||
|
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
@@ -309,6 +337,9 @@ const props = defineProps({
|
|||||||
const detailLoading = ref(false) // 表单的加载中
|
const detailLoading = ref(false) // 表单的加载中
|
||||||
const detailData = ref<any>({}) // 详情数据
|
const detailData = ref<any>({}) // 详情数据
|
||||||
const queryId = query.id as unknown as string // 从 URL 传递过来的 id 编号
|
const queryId = query.id as unknown as string // 从 URL 传递过来的 id 编号
|
||||||
|
const openFile = (name:any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?'+name)
|
||||||
|
}
|
||||||
//用户性质数组
|
//用户性质数组
|
||||||
const userTypeList = reactive([
|
const userTypeList = reactive([
|
||||||
{
|
{
|
||||||
@@ -387,6 +418,66 @@ const getInfo = async () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
const proviteData = ref()
|
const proviteData = ref()
|
||||||
|
//可研报告
|
||||||
|
const feasibilityReportRef = ref(null)
|
||||||
|
//项目初步设计说明书
|
||||||
|
const preliminaryDesignDescriptionRef = ref(null)
|
||||||
|
//预测评估报告
|
||||||
|
const predictionEvaluationReportRef = ref(null)
|
||||||
|
//预测评估评审意见报告
|
||||||
|
const predictionEvaluationReviewOpinionsRef = ref(null)
|
||||||
|
//用户接入变电站主接线示意图
|
||||||
|
const substationMainWiringDiagramRef = ref(null)
|
||||||
|
//主要敏感设备清单
|
||||||
|
const sensitiveDevicesRef = ref(null)
|
||||||
|
//抗扰度测试报告
|
||||||
|
const antiInterferenceReportRef = ref(null)
|
||||||
|
//背景电能质量测试报告
|
||||||
|
const powerQualityReportRef = ref(null)
|
||||||
|
//其他附件
|
||||||
|
const additionalAttachmentsRef = ref(null)
|
||||||
|
//预览
|
||||||
|
const preview = (val: any, url: any) => {
|
||||||
|
nextTick(() => {
|
||||||
|
//可研报告
|
||||||
|
if (val == 'feasibilityReport') {
|
||||||
|
feasibilityReportRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//项目初步设计说明书
|
||||||
|
if (val == 'preliminaryDesignDescription') {
|
||||||
|
preliminaryDesignDescriptionRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//预测评估报告
|
||||||
|
if (val == 'predictionEvaluationReport') {
|
||||||
|
console.log(url, '9999999')
|
||||||
|
predictionEvaluationReportRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//预测评估评审意见报告
|
||||||
|
if (val == 'predictionEvaluationReviewOpinions') {
|
||||||
|
predictionEvaluationReviewOpinionsRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//用户接入变电站主接线示意图
|
||||||
|
if (val == 'substationMainWiringDiagram') {
|
||||||
|
substationMainWiringDiagramRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//主要敏感设备清单
|
||||||
|
if (val == 'sensitiveDevices') {
|
||||||
|
sensitiveDevicesRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//抗扰度测试报告
|
||||||
|
if (val == 'antiInterferenceReport') {
|
||||||
|
antiInterferenceReportRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//背景电能质量测试报告
|
||||||
|
if (val == 'powerQualityReport') {
|
||||||
|
powerQualityReportRef?.value.open(url)
|
||||||
|
}
|
||||||
|
//其他附件
|
||||||
|
if (val == 'additionalAttachments') {
|
||||||
|
additionalAttachmentsRef?.value.open(url)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
//判断userType选择取用的对象
|
//判断userType选择取用的对象
|
||||||
const getProviteData = async () => {
|
const getProviteData = async () => {
|
||||||
if (detailData.value.userType == '0' || detailData.value.userType == '1') {
|
if (detailData.value.userType == '0' || detailData.value.userType == '1') {
|
||||||
@@ -546,10 +637,10 @@ onMounted(() => {
|
|||||||
position: absolute !important;
|
position: absolute !important;
|
||||||
top: 20px !important;
|
top: 20px !important;
|
||||||
}
|
}
|
||||||
.el-icon{
|
.el-icon {
|
||||||
float: left;
|
float: left;
|
||||||
}
|
}
|
||||||
a{
|
a {
|
||||||
display: block;
|
display: block;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
float: left;
|
float: left;
|
||||||
|
|||||||
@@ -14,7 +14,6 @@
|
|||||||
v-model='form.deviceId'
|
v-model='form.deviceId'
|
||||||
:data='data'
|
:data='data'
|
||||||
filterable
|
filterable
|
||||||
:default-expand-all='true'
|
|
||||||
style='width: 100%'
|
style='width: 100%'
|
||||||
@change='changeDevStatus'
|
@change='changeDevStatus'
|
||||||
clearable
|
clearable
|
||||||
@@ -59,8 +58,7 @@ import TableStore from '@/utils/tableStore' // 若不是列表页面弹框可删
|
|||||||
import { getTerminalSelectTree } from '@/api/device-boot/Business'
|
import { getTerminalSelectTree } from '@/api/device-boot/Business'
|
||||||
import { addRunningDevice, quitRunningDeviceUpdate } from '@/api/supervision-boot/device/quitRunningDev'
|
import { addRunningDevice, quitRunningDeviceUpdate } from '@/api/supervision-boot/device/quitRunningDev'
|
||||||
import { getDeviceDetailData } from '@/api/device-boot/line'
|
import { getDeviceDetailData } from '@/api/device-boot/line'
|
||||||
|
import { defaultProps } from '@/utils/tree'
|
||||||
|
|
||||||
const devStatusList = ref([
|
const devStatusList = ref([
|
||||||
{ 'name': '运行', 'value': '0' },
|
{ 'name': '运行', 'value': '0' },
|
||||||
{ 'name': '检修', 'value': '1' },
|
{ 'name': '检修', 'value': '1' },
|
||||||
@@ -178,7 +176,7 @@ const changeDevStatus = async (event: any) => {
|
|||||||
defineExpose({ open })
|
defineExpose({ open })
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped lang="scss">
|
||||||
.el-upload-list__item {
|
.el-upload-list__item {
|
||||||
transition: none !important;
|
transition: none !important;
|
||||||
}
|
}
|
||||||
@@ -186,4 +184,8 @@ defineExpose({ open })
|
|||||||
.el-select {
|
.el-select {
|
||||||
min-width: 180px;
|
min-width: 180px;
|
||||||
}
|
}
|
||||||
|
::v-deep .el-tree-node__children>div{
|
||||||
|
display: block !important;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href='detailData.problemPath' target='_blank'>{{ detailData.problemName }}</a>
|
<a :href='detailData.problemPath' target='_blank'>{{ detailData.problemName }}</a>
|
||||||
|
<span @click="openFile(detailData.problemName)">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
<el-descriptions-item :span='2' label='采取措施'>
|
<el-descriptions-item :span='2' label='采取措施'>
|
||||||
@@ -28,6 +29,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href='detailData.reportPath' target='_blank'>{{ detailData.reportName }}</a>
|
<a :href='detailData.reportPath' target='_blank'>{{ detailData.reportName }}</a>
|
||||||
|
<span @click="openFile(detailData.reportName)">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
@@ -41,7 +43,9 @@ import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
|||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
|
|
||||||
defineOptions({ name: 'technology/detail' })
|
defineOptions({ name: 'technology/detail' })
|
||||||
|
const openFile = (name: any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?' + name)
|
||||||
|
}
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a :href="problemDetail.problemPath" target="_blank">{{ problemDetail.problemName }}</a>
|
<a :href="problemDetail.problemPath" target="_blank">{{ problemDetail.problemName }}</a>
|
||||||
|
<span @click="openFile(problemDetail.problemName )">预览</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="采取的措施:" prop="takeStep">
|
<el-form-item label="采取的措施:" prop="takeStep">
|
||||||
@@ -63,6 +64,9 @@ import TableStore from '@/utils/tableStore' // 若不是列表页面弹框可删
|
|||||||
import { getFileNameAndFilePath, uploadFile } from '@/api/system-boot/file'
|
import { getFileNameAndFilePath, uploadFile } from '@/api/system-boot/file'
|
||||||
import { addFeedback, updateFeedback } from '@/api/supervision-boot/leaflet'
|
import { addFeedback, updateFeedback } from '@/api/supervision-boot/leaflet'
|
||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
|
const openFile = (name: any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?' + name)
|
||||||
|
}
|
||||||
//.doc,.docx,.xlsx,.xls,.pdf
|
//.doc,.docx,.xlsx,.xls,.pdf
|
||||||
const acceptType = ref('')
|
const acceptType = ref('')
|
||||||
//下拉数据源
|
//下拉数据源
|
||||||
|
|||||||
@@ -509,19 +509,6 @@ const changeDevice = () => {
|
|||||||
monitoringTerminalName: obj.monitoringTerminalName
|
monitoringTerminalName: obj.monitoringTerminalName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//用户类型为2.新建/扩建非线性负荷用户 新建/扩建新能源发电站回显容量
|
|
||||||
const getDataByUserType=(id:any)=>{
|
|
||||||
getUserReportById(id).then(res => {
|
|
||||||
const obj = res.data
|
|
||||||
form.value = {
|
|
||||||
...form.value,
|
|
||||||
shortCapacity: obj.userReportSubstationPO?.minShortCircuitCapacity, // 短路容量
|
|
||||||
dealCapacity: obj.userReportSubstationPO?.userAgreementCapacity, //协议容量
|
|
||||||
devCapacity: obj.userReportSubstationPO.pccEquipmentCapacity, //设备容量
|
|
||||||
standardCapacity: obj.userReportSubstationPO?.baseShortCircuitCapacity //基准容量
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
//定义切换form类型
|
//定义切换form类型
|
||||||
const selectFormType = ref('')
|
const selectFormType = ref('')
|
||||||
selectFormType.value = '0'
|
selectFormType.value = '0'
|
||||||
@@ -576,19 +563,18 @@ const resetForm = () => {
|
|||||||
if (title.value != '重新发起') {
|
if (title.value != '重新发起') {
|
||||||
form.value = {
|
form.value = {
|
||||||
...form.value,
|
...form.value,
|
||||||
city: obj.city,
|
// city: obj.city,
|
||||||
reporter: obj.reporter,
|
// reporter: obj.reporter,
|
||||||
reporterName: obj.reporterName,
|
// reporterName: obj.reporterName,
|
||||||
reportDate: obj.reportDate,
|
reportDate: obj?.reportDate,
|
||||||
orgId: obj.orgId,
|
orgId: obj?.orgId,
|
||||||
orgName: obj.orgName,
|
orgName: obj?.orgName,
|
||||||
expectedProductionDate: obj.expectedProductionDate,
|
expectedProductionDate: obj?.expectedProductionDate,
|
||||||
userName: userNameList.value[0]?.projectName,
|
userName: userNameList.value[0]?.projectName,
|
||||||
userId: userNameList.value[0]?.id,
|
userId: userNameList.value[0]?.id,
|
||||||
objName: userNameList.value[0]?.projectName
|
objName: userNameList.value[0]?.projectName
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
getDataByUserType(obj.id)
|
|
||||||
})
|
})
|
||||||
changevoltageDeviationLimit()
|
changevoltageDeviationLimit()
|
||||||
}
|
}
|
||||||
@@ -671,9 +657,19 @@ const changeUserName = () => {
|
|||||||
userStatus: obj?.userStatus + ''
|
userStatus: obj?.userStatus + ''
|
||||||
}
|
}
|
||||||
|
|
||||||
//回显数据 2.新建/扩建非线性负荷用户 新建/扩建新能源发电站
|
//回显数据
|
||||||
if (obj.userType == '2' || obj.userType == '3' || obj.userType == '4' || obj.userType == '5') {
|
if (obj.userType == '2' || obj.userType == '3' || obj.userType == '4' || obj.userType == '5') {
|
||||||
getDataByUserType(obj.id)
|
getUserReportById(obj.id).then(res => {
|
||||||
|
console.log(res.data, '继续查询数据')
|
||||||
|
const obj = res.data
|
||||||
|
form.value = {
|
||||||
|
...form.value,
|
||||||
|
shortCapacity: obj.userReportSubstationPO?.minShortCircuitCapacity, // 短路容量
|
||||||
|
dealCapacity: obj.userReportSubstationPO?.userAgreementCapacity, //协议容量
|
||||||
|
devCapacity: obj.userReportSubstationPO?.pccEquipmentCapacity, //设备容量
|
||||||
|
standardCapacity: obj.userReportSubstationPO?.baseShortCircuitCapacity //基准容量
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//定义校验规则
|
//定义校验规则
|
||||||
|
|||||||
@@ -115,6 +115,7 @@
|
|||||||
<a target="_blank"href="detailData?.mainWiringDiagram.url">
|
<a target="_blank"href="detailData?.mainWiringDiagram.url">
|
||||||
{{ detailData?.mainWiringDiagram.name }}
|
{{ detailData?.mainWiringDiagram.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(detailData?.mainWiringDiagram.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</template>
|
</template>
|
||||||
@@ -127,7 +128,9 @@ import { getTempLineDetailsById } from '@/api/supervision-boot/monitorpoint/inde
|
|||||||
import { useDictData } from '@/stores/dictData'
|
import { useDictData } from '@/stores/dictData'
|
||||||
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
|
const openFile = (name:any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?'+name)
|
||||||
|
}
|
||||||
defineOptions({ name: 'BpmUserReportDetail' })
|
defineOptions({ name: 'BpmUserReportDetail' })
|
||||||
|
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
|
|||||||
@@ -192,6 +192,7 @@
|
|||||||
<a target="_blank":href="detailData?.informationSecurityTestReport.url">
|
<a target="_blank":href="detailData?.informationSecurityTestReport.url">
|
||||||
{{ detailData?.informationSecurityTestReport.name }}
|
{{ detailData?.informationSecurityTestReport.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(detailData.informationSecurityTestReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="验收检验报告单" v-if="detailData?.acceptanceInspectionReportSingle">
|
<el-descriptions-item label="验收检验报告单" v-if="detailData?.acceptanceInspectionReportSingle">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
@@ -200,38 +201,42 @@
|
|||||||
<a target="_blank":href="detailData?.acceptanceInspectionReportSingle.url">
|
<a target="_blank":href="detailData?.acceptanceInspectionReportSingle.url">
|
||||||
{{ detailData?.acceptanceInspectionReportSingle.name }}
|
{{ detailData?.acceptanceInspectionReportSingle.name }}
|
||||||
</a>
|
</a>
|
||||||
|
<span @click="openFile(detailData.acceptanceInspectionReportSingle?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="验收检验报告" v-if="detailData?.acceptanceInspectionReport">
|
<el-descriptions-item label="验收检验报告" v-if="detailData?.acceptanceInspectionReport">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank":href="detailData?.acceptanceInspectionReport.url">{{ detailData?.acceptanceInspectionReport.name }}</a>
|
<a target="_blank":href="detailData?.acceptanceInspectionReport.url">{{ detailData?.acceptanceInspectionReport.name }}</a>
|
||||||
|
<span @click="openFile(detailData.acceptanceInspectionReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="型式实验报告" v-if="detailData?.typeExperimentReport">
|
<el-descriptions-item label="型式实验报告" v-if="detailData?.typeExperimentReport">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank":href="detailData?.typeExperimentReport.url">{{ detailData?.typeExperimentReport.name }}</a>
|
<a target="_blank":href="detailData?.typeExperimentReport.url">{{ detailData?.typeExperimentReport.name }}</a>
|
||||||
|
<span @click="openFile(detailData.typeExperimentReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="出厂检验报告" v-if="detailData?.factoryInspectionReport">
|
<el-descriptions-item label="出厂检验报告" v-if="detailData?.factoryInspectionReport">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank":href="detailData?.factoryInspectionReport.url">{{ detailData?.factoryInspectionReport.name }}</a>
|
<a target="_blank":href="detailData?.factoryInspectionReport.url">{{ detailData?.factoryInspectionReport.name }}</a>
|
||||||
|
<span @click="openFile(detailData.factoryInspectionReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="性能检测报告" v-if="detailData?.performanceTestReport">
|
<el-descriptions-item label="性能检测报告" v-if="detailData?.performanceTestReport">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank":href="detailData?.performanceTestReport.url">{{ detailData?.performanceTestReport.name }}</a>
|
<a target="_blank":href="detailData?.performanceTestReport.url">{{ detailData?.performanceTestReport.name }}</a>
|
||||||
|
<span @click="openFile(detailData.performanceTestReport?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="其他附件" v-if="detailData?.otherAttachments">
|
<el-descriptions-item label="其他附件" v-if="detailData?.otherAttachments">
|
||||||
<el-icon>
|
<el-icon>
|
||||||
<Link />
|
<Link />
|
||||||
</el-icon>
|
</el-icon>
|
||||||
<a target="_blank":href="detailData?.otherAttachments.url">{{ detailData?.otherAttachments.name }}</a>
|
<a target="_blank":href="detailData?.otherAttachments.url">{{ detailData?.otherAttachments.name }}</a>
|
||||||
|
<span @click="openFile(detailData.otherAttachments?.name )">预览</span>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</template>
|
</template>
|
||||||
@@ -247,7 +252,9 @@ import { getFileNameAndFilePath } from '@/api/system-boot/file'
|
|||||||
import { Link } from '@element-plus/icons-vue'
|
import { Link } from '@element-plus/icons-vue'
|
||||||
import { nodeAllList } from '@/api/device-boot/Business'
|
import { nodeAllList } from '@/api/device-boot/Business'
|
||||||
defineOptions({ name: 'BpmUserReportDetail' })
|
defineOptions({ name: 'BpmUserReportDetail' })
|
||||||
|
const openFile = (name:any) => {
|
||||||
|
window.open(window.location.origin + '/#/previewFile?'+name)
|
||||||
|
}
|
||||||
const { query } = useRoute() // 查询参数
|
const { query } = useRoute() // 查询参数
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
|||||||
Reference in New Issue
Block a user