|
|
@ -11,10 +11,6 @@ |
|
|
|
@click="navigateTo('coinRefundDetail')" :disabled="!hasDetail"> |
|
|
|
金币退款明细 |
|
|
|
</el-button> |
|
|
|
<el-button :type="activeTab === 'addNewCoinRefund' ? 'primary' : 'default'" @click="navigateTo('addNewCoinRefund')" |
|
|
|
:disabled="!hasAdd"> |
|
|
|
金币退款 |
|
|
|
</el-button> |
|
|
|
</el-button-group> |
|
|
|
<!-- 渲染子路由组件 --> |
|
|
|
</div> |
|
|
@ -38,7 +34,6 @@ const { menuTree } = storeToRefs(adminStore); |
|
|
|
const activeTab = ref(''); |
|
|
|
const hasAdd = ref(false); |
|
|
|
const hasDetail = ref(false); |
|
|
|
const hasNewAdd = ref(false); |
|
|
|
// 导航方法 |
|
|
|
const navigateTo = (name) => { |
|
|
|
activeTab.value = name; |
|
|
@ -52,7 +47,6 @@ const initPermissions = () => { |
|
|
|
|
|
|
|
hasAdd.value = hasMenuPermission(menuTree.value, permissionMapping.Submit_Gold_Coin_Refund); |
|
|
|
hasDetail.value = hasMenuPermission(menuTree.value, permissionMapping.View_Gold_Coin_Refund_Details); |
|
|
|
hasNewAdd.value = hasMenuPermission(menuTree.value, permissionMapping.Submit_Gold_Coin_RefundS); |
|
|
|
}; |
|
|
|
|
|
|
|
// 默认跳转逻辑 |
|
|
@ -60,14 +54,13 @@ const getDefaultAuditRoute = () => { |
|
|
|
initPermissions(); |
|
|
|
if (hasAdd.value) return 'addCoinRefund'; |
|
|
|
if (hasDetail.value) return 'coinRefundDetail'; |
|
|
|
if(hasNewAdd.value) return 'addNewCoinRefund'; |
|
|
|
return 'addCoinRefund'; |
|
|
|
}; |
|
|
|
|
|
|
|
// 监听路由变化更新标签状态 |
|
|
|
watch(() => route.name, (newName) => { |
|
|
|
initPermissions() |
|
|
|
if (newName === 'addCoinRefund' || newName === 'coinRefundDetail' || newName === 'addNewCoinRefund') { |
|
|
|
if (newName === 'addCoinRefund' || newName === 'coinRefundDetail') { |
|
|
|
activeTab.value = newName; |
|
|
|
} else if (newName === 'coinRefund') { |
|
|
|
// 每次访问 /coinConsume 都进行默认跳转 |
|
|
@ -84,7 +77,7 @@ onMounted(() => { |
|
|
|
navigateTo(defaultRoute); |
|
|
|
} else { |
|
|
|
// 非父路由初始化当前标签状态 |
|
|
|
if (route.name === 'addCoinRefund' || route.name === 'coinRefundDetail' || route.name === 'addNewCoinRefund') { |
|
|
|
if (route.name === 'addCoinRefund' || route.name === 'coinRefundDetail') { |
|
|
|
activeTab.value = route.name; |
|
|
|
} |
|
|
|
} |
|
|
|