|
@@ -69,8 +69,9 @@
|
|
|
:disabled="true"
|
|
:disabled="true"
|
|
|
/>
|
|
/>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
- <el-form-item label="附件上传:" prop="fileUrl" :required="isViewMode">
|
|
|
|
|
|
|
+ <el-form-item label="附件上传:" prop="fileUrl" required >
|
|
|
<UploadFiles
|
|
<UploadFiles
|
|
|
|
|
+ v-if="isEditMode"
|
|
|
label="上传附件"
|
|
label="上传附件"
|
|
|
:file-list="attachmentFileList"
|
|
:file-list="attachmentFileList"
|
|
|
:disabled="isViewMode"
|
|
:disabled="isViewMode"
|
|
@@ -78,8 +79,22 @@
|
|
|
@uploadSuccess="handleAttachmentUploadSuccess"
|
|
@uploadSuccess="handleAttachmentUploadSuccess"
|
|
|
@preview="handlePreview"
|
|
@preview="handlePreview"
|
|
|
/>
|
|
/>
|
|
|
|
|
+ <div class="file-list" v-else>
|
|
|
|
|
+ <div class="file-item" v-for="file in form.fileUrl" :key="file.fileId">
|
|
|
|
|
+ <span class="file-item--name">{{ file.fileName }}</span>
|
|
|
|
|
+ <div class="file-item--footer">
|
|
|
|
|
+ <el-button link type="primary" @click="previewOnline(file.fileUrl, file.fileType)"
|
|
|
|
|
+ >预览</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button link type="primary" @click.stop="downloadFile(file.fileUrl, file.fileName)"
|
|
|
|
|
+ >下载</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-form>
|
|
</el-form>
|
|
|
|
|
+ <PreviewOnline ref="previewOnlineRef" />
|
|
|
</main>
|
|
</main>
|
|
|
<footer class="safety-platform-container__footer">
|
|
<footer class="safety-platform-container__footer">
|
|
|
<el-button @click="router.back()">返回</el-button>
|
|
<el-button @click="router.back()">返回</el-button>
|
|
@@ -97,7 +112,7 @@
|
|
|
import { FORM_RULES } from '../configs/form';
|
|
import { FORM_RULES } from '../configs/form';
|
|
|
import {
|
|
import {
|
|
|
issueWorkPlanDept,
|
|
issueWorkPlanDept,
|
|
|
- queryWorkPlanDetail,
|
|
|
|
|
|
|
+ queryWorkPlanDepartmentDetail,
|
|
|
type SaveWorkPlanRequest,
|
|
type SaveWorkPlanRequest,
|
|
|
} from '@/api/safety-system-construction-work-plan';
|
|
} from '@/api/safety-system-construction-work-plan';
|
|
|
import UploadFiles from '@/components/UploadFiles/UploadFiles.vue';
|
|
import UploadFiles from '@/components/UploadFiles/UploadFiles.vue';
|
|
@@ -106,6 +121,8 @@
|
|
|
import PreviewOnline from '@/views/disaster/components/PreviewOnline.vue';
|
|
import PreviewOnline from '@/views/disaster/components/PreviewOnline.vue';
|
|
|
import { DeptTree } from '@/types/dept/type';
|
|
import { DeptTree } from '@/types/dept/type';
|
|
|
import { getAllDepartments } from '@/api/auth/dept';
|
|
import { getAllDepartments } from '@/api/auth/dept';
|
|
|
|
|
+ import { downloadFile } from '@/views/disaster/utils';
|
|
|
|
|
+
|
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
|
|
|
|
|
@@ -212,6 +229,13 @@
|
|
|
previewOnlineRef.value?.open(url, fileType);
|
|
previewOnlineRef.value?.open(url, fileType);
|
|
|
}
|
|
}
|
|
|
};
|
|
};
|
|
|
|
|
+
|
|
|
|
|
+ const previewOnline = (url: string | undefined, type) => {
|
|
|
|
|
+ if (url) {
|
|
|
|
|
+ previewOnlineRef.value?.open(url, type);
|
|
|
|
|
+ }
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
// 时间格式化
|
|
// 时间格式化
|
|
|
const formatDate = (date) => {
|
|
const formatDate = (date) => {
|
|
|
if (!date) return '';
|
|
if (!date) return '';
|
|
@@ -249,10 +273,10 @@
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const getDetail = async () => {
|
|
const getDetail = async () => {
|
|
|
- const id = currentPlanId.value;
|
|
|
|
|
|
|
+ const id = currentId.value;
|
|
|
if (!id) return;
|
|
if (!id) return;
|
|
|
try {
|
|
try {
|
|
|
- const res = await queryWorkPlanDetail(id);
|
|
|
|
|
|
|
+ const res = await queryWorkPlanDepartmentDetail(id);
|
|
|
if (res) {
|
|
if (res) {
|
|
|
// 映射接口字段到表单字段
|
|
// 映射接口字段到表单字段
|
|
|
const cooperateDeptIdsArray = parseDeptIds(res.cooperateDeptIds);
|
|
const cooperateDeptIdsArray = parseDeptIds(res.cooperateDeptIds);
|
|
@@ -261,6 +285,7 @@
|
|
|
...res,
|
|
...res,
|
|
|
cooperateDeptIds: cooperateDeptIdsArray,
|
|
cooperateDeptIds: cooperateDeptIdsArray,
|
|
|
responsibleDeptIds: responsibleDeptIdsArray,
|
|
responsibleDeptIds: responsibleDeptIdsArray,
|
|
|
|
|
+ fileUrl: JSON.parse(res.fileUrl || '[]'),
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
// cloneRuleFormData();
|
|
// cloneRuleFormData();
|