-
-
- 新增消耗
+ 新增消耗
- 金币消耗明细
+ 金币消耗明细
-
+// 监听路径变化,处理直接访问父路由的情况
+watch(() => route.path, (newPath) => {
+ if (newPath === '/coinConsume') { // 假设父路由路径为/coinConsume
+ const defaultRoute = getDefaultConsumeRoute();
+ if (defaultRoute) {
+ navigateTo(defaultRoute);
+ } else {
+ console.warn('用户没有新增消耗和金币消耗明细的权限');
+ // router.push({ name: 'noPermission' }); // 可根据实际需求启用
+ }
+ }
+});
+
+// 初始化逻辑(完善权限校验和状态同步)
+onMounted(() => {
+ // 父路由默认跳转
+ if (route.path === '/coinConsume') { // 假设父路由路径为/coinConsume
+ const defaultRoute = getDefaultConsumeRoute();
+ if (defaultRoute) {
+ navigateTo(defaultRoute);
+ } else {
+ // console.warn('用户没有新增消耗和金币消耗明细的权限');
+ router.push({ name: 'noPermission' }); // 可根据实际需求启用
+ }
+ } else {
+ // 子路由直接进入时同步状态(带权限校验)
+ if (route.name === routeMap.add && hasAddPermission.value) {
+ activeTab.value = 'add';
+ } else if (route.name === routeMap.detail && hasDetailPermission.value) {
+ activeTab.value = 'detail';
+ }
+ }
+});
+
\ No newline at end of file
diff --git a/src/views/recharge/coinRecharge.vue b/src/views/recharge/coinRecharge.vue
index be35c21..7e1e6c5 100644
--- a/src/views/recharge/coinRecharge.vue
+++ b/src/views/recharge/coinRecharge.vue
@@ -1,61 +1,119 @@