Bläddra i källkod

feat: 前端转账功能权限门 — transferEnabled=false时隐藏全部功能

- enterprise.store: fetchEnterpriseList 映射 transfer_enabled
- 账户页: hasTransferPermission 检查,false 时隐藏所有tab显示提示
alphaH 1 dag sedan
förälder
incheckning
1ffde4962e

+ 1 - 0
frontend/src/store/modules/enterprise.store.ts

@@ -73,6 +73,7 @@ export const useEnterpriseStore = defineStore("enterprise", {
           name: item.name,
           short_name: item.short_name,
           status: item.status,
+          transfer_enabled: item.transfer_enabled,
         }));
       } catch (error) {
         console.error("获取企业列表失败:", error);

+ 5 - 1
frontend/src/views/module_payment/account/index.vue

@@ -1,6 +1,9 @@
 <template>
   <div v-loading="pageLoading" class="app-container" :element-loading-text="loadingText">
-    <el-tabs v-model="activeTab" class="account-tabs" type="card">
+    <div v-if="!hasTransferPermission" style="text-align: center; padding: 80px 0; color: #999">
+      当前企业未开通转账功能
+    </div>
+    <el-tabs v-else v-model="activeTab" class="account-tabs" type="card">
       <el-tab-pane label="账户概览" name="overview">
         <AccountOverview ref="overviewRef" :enterprise-id="currentEnterpriseId" @refresh="handleOverviewRefresh"
           @goTab="handleGoTab" @withdraw="withdrawVisible = true" />
@@ -782,6 +785,7 @@ const consumeFormRef = ref<FormInstance>();
 const overviewRef = ref<InstanceType<typeof AccountOverview>>();
 
 const currentEnterpriseId = computed(() => enterpriseStore.getCurrentEnterprise?.enterprise_id);
+const hasTransferPermission = computed(() => enterpriseStore.getCurrentEnterprise?.transfer_enabled === true);
 const cureentEnterprise = computed(() => enterpriseStore.getCurrentEnterprise);
 
 const accountInfo = ref<{