|
|
|
@ -81,6 +81,7 @@ const handleConfirm = async () => { |
|
|
|
localStorage.setItem('lang', tempLang.value) |
|
|
|
|
|
|
|
await getMenuTree() |
|
|
|
await selectMarket() |
|
|
|
|
|
|
|
ElMessage.success(`语言已切换为:${getLangLabel(tempLang.value)}`) |
|
|
|
dialogVisible.value = false |
|
|
|
@ -120,6 +121,45 @@ const getMenuTree = async function () { |
|
|
|
adminStore.clearState() |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 获取地区列表 用于映射 |
|
|
|
const selectMarket = async function () { |
|
|
|
try { |
|
|
|
const selectMarketResult = await request({ url: '/market/selectMarket' }); |
|
|
|
const marketList = {}; |
|
|
|
|
|
|
|
// 递归遍历树形结构(从子节点开始) |
|
|
|
const traverseTree = (nodes) => { |
|
|
|
nodes.forEach(node => { |
|
|
|
// 存储当前节点的 id 和 name |
|
|
|
marketList[node.id] = node.name; |
|
|
|
// 递归处理子节点 |
|
|
|
if (node.children && node.children.length > 0) { |
|
|
|
traverseTree(node.children); |
|
|
|
} |
|
|
|
}); |
|
|
|
}; |
|
|
|
|
|
|
|
// 关键:跳过第一级节点,直接遍历第一级的子节点 |
|
|
|
// 假设 selectMarketResult.data 是根节点数组(第一级) |
|
|
|
selectMarketResult.data.forEach(rootNode => { |
|
|
|
// 只处理第一级节点的子节点(从第二级开始遍历) |
|
|
|
if (rootNode.children && rootNode.children.length > 0) { |
|
|
|
traverseTree(rootNode.children); |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
console.log('排除第一级后的地区列表 语言:', marketList); |
|
|
|
adminStore.setMarketList(marketList); |
|
|
|
|
|
|
|
// return marketList; |
|
|
|
|
|
|
|
} catch (error) { |
|
|
|
console.error('获取地区树失败:', error); |
|
|
|
return {}; |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
|
|
|