diff --git a/src/views/system/jdorder/components/DistributionMarkTouserConfig.vue b/src/views/system/jdorder/components/DistributionMarkTouserConfig.vue index 945d383..ea352c0 100644 --- a/src/views/system/jdorder/components/DistributionMarkTouserConfig.vue +++ b/src/views/system/jdorder/components/DistributionMarkTouserConfig.vue @@ -15,7 +15,7 @@ -
+
@@ -36,7 +36,7 @@
@@ -181,6 +181,7 @@ export default { configList: [], saveLoading: false, loadLoading: false, + loading: false, commonDistributionMarks: ['F', 'PDD', 'H-TF', 'H', 'TF'], configKeyPrefix: 'logistics.push.touser.' } @@ -201,7 +202,13 @@ export default { value(val) { this.visible = val if (val) { - this.loadConfig() + // 延迟一下确保对话框已经打开 + this.$nextTick(() => { + this.loadConfig() + }) + } else { + // 关闭时清空列表,避免下次打开时显示旧数据 + this.configList = [] } }, visible(val) { @@ -211,6 +218,7 @@ export default { methods: { /** 加载当前配置 */ async loadConfig() { + this.loading = true try { // 先尝试从系统配置中加载已有的配置 // 由于我们不知道有哪些分销标识,先加载所有以 logistics.push.touser. 开头的配置 @@ -220,9 +228,18 @@ export default { pageSize: 100 }) - if (res.code === 200 && res.rows && res.rows.length > 0) { - this.configList = res.rows - .filter(item => item.configKey && item.configKey.startsWith(this.configKeyPrefix)) + console.log('加载配置响应:', res) + + // 重置配置列表 + this.configList = [] + + if (res && res.code === 200 && res.rows && res.rows.length > 0) { + // 过滤并转换配置项 + const configs = res.rows + .filter(item => { + // 确保 configKey 存在且以配置前缀开头 + return item && item.configKey && item.configKey.startsWith(this.configKeyPrefix) + }) .map(item => { const distributionMark = item.configKey.replace(this.configKeyPrefix, '') return { @@ -230,9 +247,16 @@ export default { touser: item.configValue || '', configId: item.configId, configKey: item.configKey, - configName: item.configName + configName: item.configName || `${distributionMark}分销标识接收人` } }) + + this.configList = configs + console.log('解析后的配置列表:', this.configList) + + if (configs.length > 0) { + this.$message.success(`成功加载 ${configs.length} 条配置`) + } } // 如果没有配置,至少添加一个空项 @@ -244,9 +268,11 @@ export default { configKey: '', configName: '' }) + console.log('未找到配置,添加空项') } } catch (e) { console.error('加载配置失败:', e) + this.$message.error('加载配置失败:' + (e.message || '未知错误')) // 即使加载失败,也至少添加一个空项 if (this.configList.length === 0) { this.configList.push({ @@ -257,6 +283,8 @@ export default { configName: '' }) } + } finally { + this.loading = false } },