diff --git a/src/views/modules/ecss/codelnotify.vue b/src/views/modules/ecss/codelnotify.vue
index 8cc577c..4eef861 100644
--- a/src/views/modules/ecss/codelnotify.vue
+++ b/src/views/modules/ecss/codelnotify.vue
@@ -96,7 +96,7 @@
fixed="left"
label="操作">
- 修改
+ 修改
下达
取消下达
废弃
diff --git a/src/views/modules/ecss/codelnotifyConfirm.vue b/src/views/modules/ecss/codelnotifyConfirm.vue
index 6fdddf9..66faec7 100644
--- a/src/views/modules/ecss/codelnotifyConfirm.vue
+++ b/src/views/modules/ecss/codelnotifyConfirm.vue
@@ -70,7 +70,7 @@
fixed="left"
label="操作">
- 修改
+ 修改
仓库确认
取消确认
diff --git a/src/views/modules/ecss/del_upload_excel.vue b/src/views/modules/ecss/del_upload_excel.vue
index d4d406d..d74f7c9 100644
--- a/src/views/modules/ecss/del_upload_excel.vue
+++ b/src/views/modules/ecss/del_upload_excel.vue
@@ -33,7 +33,7 @@
+ :rows="2" v-model="pageData.customerName">
@@ -44,7 +44,7 @@
+ :rows="2" v-model="pageData.overseasShipper">
@@ -56,7 +56,7 @@
+ :rows="3" v-model="pageData.localShipAddress">
@@ -68,7 +68,7 @@
+ :rows="3" v-model="pageData.overseasAddress">
@@ -227,13 +227,95 @@
localShipAddressFlag:false,
overseasShipperFlag:false,
overseasAddressFlag:false,
+ cacheKey: '', // 缓存键
+ cacheTimer: null, // 缓存定时器
+ }
+ },
+ watch: {
+ // 深度监听pageData的变化,自动保存到缓存
+ pageData: {
+ handler: function(newVal, oldVal) {
+ // 只有在组件已初始化且对话框可见时才保存缓存
+ if (this.visible && this.cacheKey) {
+ this.saveToCache();
+ }
+ },
+ deep: true
+ }
+ },
+ beforeDestroy() {
+ // 组件销毁前清理定时器
+ if (this.cacheTimer) {
+ clearTimeout(this.cacheTimer);
}
},
methods: {
+ // 生成缓存键
+ generateCacheKey() {
+ const userId = this.$store.state.user.id || this.$store.state.user.name;
+ return `ecss_del_upload_cache_${userId}`;
+ },
+
+ // 保存数据到缓存(防抖处理)
+ saveToCache() {
+ // 清除之前的定时器
+ if (this.cacheTimer) {
+ clearTimeout(this.cacheTimer);
+ }
+
+ // 设置新的定时器,500ms后执行保存
+ this.cacheTimer = setTimeout(() => {
+ try {
+ const cacheData = {
+ pageData: {
+ buNo: this.pageData.buNo,
+ customerName: this.pageData.customerName,
+ localShipAddress: this.pageData.localShipAddress,
+ overseasShipper: this.pageData.overseasShipper,
+ overseasAddress: this.pageData.overseasAddress,
+ cnative: this.pageData.cnative,
+ salesArea: this.pageData.salesArea,
+ }
+ };
+ localStorage.setItem(this.cacheKey, JSON.stringify(cacheData));
+ } catch (error) {
+ console.warn('保存缓存失败:', error);
+ }
+ }, 500);
+ },
+
+ // 从缓存加载数据
+ loadFromCache() {
+ try {
+ const cachedData = localStorage.getItem(this.cacheKey);
+ if (cachedData) {
+ const parsedData = JSON.parse(cachedData);
+ if (parsedData.pageData) {
+ // 恢复缓存的数据(不包括文件)
+ Object.assign(this.pageData, parsedData.pageData);
+ return true;
+ }
+ }
+ } catch (error) {
+ console.warn('加载缓存失败:', error);
+ }
+ return false;
+ },
+
+ // 清除缓存
+ clearCache() {
+ try {
+ localStorage.removeItem(this.cacheKey);
+ } catch (error) {
+ console.warn('清除缓存失败:', error);
+ }
+ },
// 初始化组件的参数
init () {
this.fileList = []
+ this.cacheKey = this.generateCacheKey();
+
let tempData = {
username: this.$store.state.user.name,
}
@@ -244,18 +326,27 @@
this.pageData.buNo=data.row2[0].buNo
}
}
+ // 在获取BU列表后尝试加载缓存
+ this.loadFromCache();
})
+
getCustomerList({}).then(({data}) => {
//区分请求成功和失败的状况
if (data && data.code === 0) {
this.customerList=data.rows
}
});
- this.pageData.customerName=''
- this.pageData.cnative=''
- this.pageData.localShipAddress='',
- this.pageData.overseasShipper='',
- this.pageData.overseasAddress='',
+
+ // 如果没有缓存数据,则初始化为空
+ if (!this.loadFromCache()) {
+ this.pageData.customerName=''
+ this.pageData.cnative=''
+ this.pageData.localShipAddress='',
+ this.pageData.overseasShipper='',
+ this.pageData.overseasAddress='',
+ this.pageData.salesArea=''
+ }
+
this.customerPersons=[]
this.customerAddrs=[]
// 打开页面
@@ -338,6 +429,7 @@
this.deleteFile()
// 关闭当前的页面
this.visible = false
+ // 注意:这里不清除缓存,让数据保留到下次打开
},
deleteFile(){
this.fileList = []
@@ -392,6 +484,8 @@
saveEcssCoDelNotifyByExcel(formData).then(({data}) => {
if (data.code === 0) {
this.$message.success(data.msg)
+ // 保存成功后清除缓存
+ this.clearCache()
// 关闭窗口并刷新页面
this.closeDialog()
} else {