修改文件上传

This commit is contained in:
GGJ
2024-08-20 09:03:43 +08:00
parent e7ba239071
commit 7598821a6d
4 changed files with 137 additions and 2 deletions

View File

@@ -8,6 +8,7 @@
:limit="1" :limit="1"
@change="choose($event, 'NetReport')" @change="choose($event, 'NetReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('NetReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -22,6 +23,7 @@
:limit="1" :limit="1"
@change="choose($event, 'governReport')" @change="choose($event, 'governReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('governReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -36,6 +38,7 @@
:limit="1" :limit="1"
@change="choose($event, 'informationSecurityTestReport')" @change="choose($event, 'informationSecurityTestReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('informationSecurityTestReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -50,6 +53,7 @@
:limit="1" :limit="1"
@change="choose($event, 'acceptanceInspectionReportSingle')" @change="choose($event, 'acceptanceInspectionReportSingle')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('acceptanceInspectionReportSingle', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -64,6 +68,7 @@
:limit="1" :limit="1"
@change="choose($event, 'acceptanceInspectionReport')" @change="choose($event, 'acceptanceInspectionReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('acceptanceInspectionReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -78,6 +83,7 @@
:limit="1" :limit="1"
@change="choose($event, 'typeExperimentReport')" @change="choose($event, 'typeExperimentReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('typeExperimentReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -92,6 +98,7 @@
:limit="1" :limit="1"
@change="choose($event, 'factoryInspectionReport')" @change="choose($event, 'factoryInspectionReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('factoryInspectionReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -106,6 +113,7 @@
:limit="1" :limit="1"
@change="choose($event, 'performanceTestReport')" @change="choose($event, 'performanceTestReport')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('performanceTestReport', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>
@@ -120,6 +128,7 @@
:limit="1" :limit="1"
@change="choose($event, 'mainWiringDiagram')" @change="choose($event, 'mainWiringDiagram')"
:auto-upload="false" :auto-upload="false"
:before-remove="beforeRemove('mainWiringDiagram', '1')"
> >
<template #trigger> <template #trigger>
<el-button type="primary">上传文件</el-button> <el-button type="primary">上传文件</el-button>

View File

@@ -345,6 +345,91 @@
</a> </a>
</div> </div>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="入网设计方案审查报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.NetReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.NetReport[0]?.url">
{{ form.NetReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="治理工程验收报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.governReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.governReport[0]?.url">
{{ form.governReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="信息安全检测报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.informationSecurityTestReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.informationSecurityTestReport[0]?.url">
{{ form.informationSecurityTestReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="验收检验报告单" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.acceptanceInspectionReportSingle[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.acceptanceInspectionReportSingle[0]?.url">
{{ form.acceptanceInspectionReportSingle[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="验收检验报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.acceptanceInspectionReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.acceptanceInspectionReport[0]?.url">
{{ form.acceptanceInspectionReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="型式实验报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.typeExperimentReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.typeExperimentReport[0]?.url">
{{ form.typeExperimentReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="出厂检验报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.factoryInspectionReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.factoryInspectionReport[0]?.url">
{{ form.factoryInspectionReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="性能检测报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.performanceTestReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.performanceTestReport[0]?.url">
{{ form.performanceTestReport[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="主接线图" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.mainWiringDiagram[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.mainWiringDiagram[0]?.url">
{{ form.mainWiringDiagram[0]?.name }}
</a>
</el-descriptions-item>
<el-descriptions-item label="试运行报告" v-if="props.openType == 'sourcesOfInterference'">
<el-icon class="elView" v-if="props.openType == 'sourcesOfInterference'">
<View @click="openFile(form.runTheReport[0]?.name)" />
</el-icon>
<a target="_blank" :href="form.runTheReport[0]?.url">
{{ form.runTheReport[0]?.name }}
</a>
</el-descriptions-item>
</el-descriptions> </el-descriptions>
</div> </div>
</template> </template>
@@ -360,6 +445,7 @@ import { getFileNameAndFilePath } from '@/api/system-boot/file'
import { Link, View } from '@element-plus/icons-vue' import { Link, View } from '@element-plus/icons-vue'
import PreviewFile from '@/components/PreviewFile/index.vue' import PreviewFile from '@/components/PreviewFile/index.vue'
import { getByDeptDevLine } from '@/api/supervision-boot/interfere/index' import { getByDeptDevLine } from '@/api/supervision-boot/interfere/index'
import { addOrUpdateFile, getFileById } from '@/api/supervision-boot/interfere/index'
defineOptions({ name: 'BpmUserReportDetail' }) defineOptions({ name: 'BpmUserReportDetail' })
const { query } = useRoute() // 查询参数 const { query } = useRoute() // 查询参数
@@ -434,6 +520,18 @@ const userStateList = reactive([
value: '3' value: '3'
} }
]) ])
const form: any = ref({
NetReport: [], //入网设计方案审查报告:
governReport: [], //治理工程验收报告
informationSecurityTestReport: [], //信息安全检测报告
acceptanceInspectionReportSingle: [], //信息安全检测报告
acceptanceInspectionReport: [], //验收检验报告:
typeExperimentReport: [], //型式实验报告
factoryInspectionReport: [], //出厂检验报告:
performanceTestReport: [], //性能检测报告
mainWiringDiagram: [], //主接线图:
runTheReport: [] //试运行报告
})
const dictData = useDictData() const dictData = useDictData()
//字典获取所在地市 //字典获取所在地市
const areaOptionList = dictData.getBasicData('jibei_area') const areaOptionList = dictData.getBasicData('jibei_area')
@@ -467,6 +565,9 @@ const getInfo = async () => {
} finally { } finally {
detailLoading.value = false detailLoading.value = false
} }
if (props.openType == 'sourcesOfInterference') {
queryFiles()
}
} }
const proviteData = ref() const proviteData = ref()
//可研报告 //可研报告
@@ -529,6 +630,14 @@ const preview = (val: any, url: any) => {
} }
}) })
} }
const queryFiles = (id: string) => {
getFileById({ id: props.id }).then(res => {
res.data.forEach((item: any) => {
if (item.url.length > 0) getFileNamePaths(item.url, item.name)
})
})
}
//判断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') {
@@ -705,6 +814,17 @@ const getFileNamePath = async (val: any, pathName: any) => {
} }
}) })
} }
const getFileNamePaths = async (val: any, pathName: any) => {
await getFileNameAndFilePath({ filePath: val }).then(res => {
form.value[pathName] = [
{
name: res.data.fileName,
url: res.data.url
}
]
})
}
defineExpose({ open: getInfo }) // 提供 open 方法,用于打开弹窗 defineExpose({ open: getInfo }) // 提供 open 方法,用于打开弹窗
watch( watch(

View File

@@ -127,7 +127,10 @@ const tableStore = new TableStore({
icon: 'el-icon-Open', icon: 'el-icon-Open',
render: 'basicButton', render: 'basicButton',
showDisabled: row => { showDisabled: row => {
return row.city != adminInfo.$state.deptName || !(row.dataType == 1) return (
(row.city != adminInfo.$state.deptName && row.createBy != adminInfo.$state.id) ||
!(row.dataType == 1)
)
}, },
click: row => { click: row => {

View File

@@ -144,7 +144,10 @@ const tableStore = new TableStore({
icon: 'el-icon-Open', icon: 'el-icon-Open',
render: 'basicButton', render: 'basicButton',
showDisabled: row => { showDisabled: row => {
return row.city != adminInfo.$state.deptName || !(row.dataType == 0 || row.dataType == 1) return (
(row.city != adminInfo.$state.deptName && row.createBy != adminInfo.$state.id) ||
!(row.dataType == 1)
)
}, },
// disabled: row => { // disabled: row => {
// return !(row.status == 0) // return !(row.status == 0)