From 39154a82354b08c2449918c0665457fdb2701b9b Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期五, 16 十月 2026 16:02:23 +0800
Subject: [PATCH] 设备模块各标签页弹窗新增草稿自动保存与恢复:编辑或录入数据中途关闭/刷新页面,再次打开同一弹窗时自动恢复未保存的编辑内容(弹窗显示"已恢复上次未保存的编辑内容"提示),保存成功后草稿自动清除;新增 src/mixins/draftSave.js 同时清理设备死代码:management.vue 数采配置旧弹窗及其提交方法、calibration.vue 被注释的导出按钮、device.js 中 numberCollect/deviceMetricRecordExport 两个死接口定义

---
 src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue b/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue
index 5c48070..1ce5c03 100644
--- a/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue
+++ b/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue
@@ -174,10 +174,12 @@
 } from '@/api/cnas/resourceDemand/device.js'
 import { selectUserCondition } from "@/api/business/inspectionTask";
 import { mapGetters } from "@/utils/store-compat";
+import draftSave from '@/mixins/draftSave'
 export default {
   name: "quantity-value-traceability-plan",
   // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
   components: {},
+  mixins: [draftSave],
   props: {
     clickNodeVal: {
       type: Object,
@@ -284,11 +286,21 @@
           if (res.code === 200) {
             this.form = res.data
             this.deviceTraceabilityManagementDetails = this.form.deviceTraceabilityManagementDetails
+            this.restoreTraceabilityDraft()
           }
         }).catch(error => {
           console.error(error)
           this.yearTableLoading = false
         })
+      } else {
+        this.restoreTraceabilityDraft()
+      }
+    },
+    restoreTraceabilityDraft() {
+      if (this.operationType === 'add' || this.operationType === 'edit') {
+        const rid = this.operationType === 'edit' ? this.traceabilityManagementId : ''
+        this.draftRestore('traceabilityForm', 'form', rid, 'applicationForm')
+        this.draftRestore('traceabilityRows', 'deviceTraceabilityManagementDetails', rid, 'applicationForm')
       }
     },
     // 娣诲姞璁惧
@@ -349,6 +361,8 @@
         addTraceabilityManagement(this.form).then(res => {
           if (res.code == 200) {
             this.$message.success('鏂板鎴愬姛')
+            this.draftClear('traceabilityForm')
+            this.draftClear('traceabilityRows')
             this.applicationForm = false
             this.getYearTableDetailData()
           }
@@ -360,6 +374,8 @@
         updateTraceabilityManagement(this.form).then(res => {
           if (res.code == 200) {
             this.$message.success('淇敼鎴愬姛')
+            this.draftClear('traceabilityForm')
+            this.draftClear('traceabilityRows')
             this.applicationForm = false
             this.getYearTableDetailData()
           }

--
Gitblit v1.9.3