From 5a5495cdeef4716cc20473f7929d386ee99a6285 Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期五, 16 十月 2026 16:16:56 +0800
Subject: [PATCH] 撤回设备模块其他标签页的草稿自动保存,仅保留设备核查计划标签页:核查计划主页面、核查录入弹窗、核查记录弹窗、新增年计划弹窗 4 处保留编辑退出自动保存/恢复,其余 21 个组件恢复原状; management.vue(数采配置旧弹窗)与 calibration.vue(被注释导出按钮)仅保留此前已报备的死代码清理,草稿接线一并移除
---
src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue | 41 +++++++++++++++++++++++++++++++++++------
1 files changed, 35 insertions(+), 6 deletions(-)
diff --git a/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue b/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue
index e32bb13..0aa34b9 100644
--- a/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue
+++ b/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue
@@ -203,8 +203,8 @@
</el-dialog>
<el-dialog v-model="downloadDialog" title="瀵煎嚭" width="600px">
<span>
- <el-button :loading="outLoading" plain type="primary" @click="controlDown">鏍告煡璁板綍</el-button>
- <el-button :loading="outLoading" plain type="primary" @click="processingDown">鏍告煡姣斿璁板綍</el-button>
+ <el-button :loading="outLoading" type="primary" :disabled="!downRow.recordStatus" @click="controlDown">鏍告煡璁板綍</el-button>
+ <el-button :loading="outLoading" type="primary" :disabled="!downRow.recordContrastStatus" @click="processingDown">鏍告煡姣斿璁板綍</el-button>
</span>
<template #footer><span class="dialog-footer">
<el-button @click="downloadDialog = false">鍙� 娑�</el-button>
@@ -249,10 +249,12 @@
} from '@/api/cnas/resourceDemand/device.js'
import { selectUserCondition } from "@/api/performance/class";
import { mapGetters } from "@/utils/store-compat";
+import draftSave from '@/mixins/draftSave'
export default {
name: "equipment-verification-plan",
// import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
components: { AddVerificationYearPlanDia, CheckRecord, EquipmentCheck },
+ mixins: [draftSave],
props: {
clickNodeVal: {
type: Object,
@@ -495,6 +497,9 @@
if (this.operationType !== 'add') {
this.$nextTick(() => {
this.form = this.HaveJson(row)
+ if (this.operationType !== 'view') {
+ this.draftRestore('equipmentVerificationPlan', 'form', this.form.planDetailsId, 'dialogVisible')
+ }
})
} else {
this.form = {
@@ -510,6 +515,7 @@
planId: this.currentRow.planId,
planDetailsId: '',
}
+ this.draftRestore('equipmentVerificationPlan', 'form', this.form.planId, 'dialogVisible')
}
},
// 鎻愪氦琛ㄥ崟
@@ -521,6 +527,7 @@
addDeviceExaminePlanDetail(this.form).then(res => {
if (res.code == 200) {
this.$message.success('鏂板鎴愬姛')
+ this.draftClear('equipmentVerificationPlan')
this.dialogVisible = false
this.getYearTableData()
}
@@ -533,6 +540,7 @@
updateDeviceExaminePlanDetail(this.form).then(res => {
if (res.code == 200) {
this.$message.success('鏂板鎴愬姛')
+ this.draftClear('equipmentVerificationPlan')
this.dialogVisible = false
this.getYearTableData()
}
@@ -564,6 +572,7 @@
})
},
resetForm() {
+ this.draftStop('equipmentVerificationPlan')
this.$refs.modelForm.resetFields();
this.dialogVisible = false
},
@@ -596,13 +605,32 @@
this.downRow = row
this.downloadDialog = true
},
+ // 瀵煎嚭缁撴灉鎷︽埅: 鍚庣杩斿洖閿欒 JSON 鏃舵彁绀洪敊璇�, 涓嶅瓨鎴愬潖鏂囦欢
+ saveDocx(res, filename) {
+ const reader = new FileReader();
+ reader.readAsText(res, 'utf-8');
+ reader.onload = () => {
+ const text = (reader.result || '').trim();
+ if (text.startsWith('{') || text.startsWith('[')) {
+ let msg = '瀵煎嚭澶辫触';
+ try { msg = JSON.parse(text).msg || msg; } catch (e) {}
+ this.$message.error(msg);
+ } else {
+ this.$download.saveAs(new Blob([res], { type: 'application/msword' }), filename);
+ }
+ };
+ reader.onerror = () => {
+ this.$download.saveAs(new Blob([res], { type: 'application/msword' }), filename);
+ };
+ },
// 鏍告煡璁板綍瀵煎嚭
controlDown() {
this.outLoading = true
exportReviewExamineRecordDetail({ planDetailsId: this.downRow.planDetailsId }).then(res => {
this.outLoading = false
- const blob = new Blob([res], { type: 'application/octet-stream' });
- this.$download.saveAs(blob, '浠櫒璁惧鏈熼棿鏍告煡璁板綍琛�.doc')
+ this.saveDocx(res, '浠櫒璁惧鏈熼棿鏍告煡璁板綍琛�.doc')
+ }).catch(() => {
+ this.outLoading = false
})
},
// 鏍告煡瀵规瘮瀵煎嚭
@@ -610,8 +638,9 @@
this.outLoading = true
exportReviewExamineRecordContrast({ planDetailsId: this.downRow.planDetailsId }).then(res => {
this.outLoading = false
- const blob = new Blob([res], { type: 'application/octet-stream' });
- this.$download.saveAs(blob, '浠櫒璁惧鏈熼棿鏍告煡姣斿璁板綍琛�.doc')
+ this.saveDocx(res, '浠櫒璁惧鏈熼棿鏍告煡姣斿璁板綍琛�.doc')
+ }).catch(() => {
+ this.outLoading = false
})
},
// 瀵煎叆娴佺▼
--
Gitblit v1.9.3