前端权限管理:修复组件数据结构和路由参数处理
修复内容: - 修复 ApiPermissions.vue 中的路由参数处理,支持 id 和 projectId 两种参数 - 修复 ApiEndpointPermissions.vue 中的权限数据结构处理 - 修复 PermissionMonitoring.vue 中的缓存统计显示 - 修复 ProjectPermissionsModule.vue 中的权限矩阵更新逻辑 - 优化保存逻辑,保存后重新加载数据以确保同步 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -157,7 +157,9 @@ const filteredEndpoints = computed(() => {
|
||||
// 检查端点是否允许
|
||||
const isEndpointAllowed = (endpoint_key: string, role: string): boolean => {
|
||||
if (!props.matrix || !props.matrix[role]) return false;
|
||||
return props.matrix[role][endpoint_key]?.allowed ?? false;
|
||||
const perm = props.matrix[role][endpoint_key];
|
||||
if (!perm) return false;
|
||||
return typeof perm === "boolean" ? perm : perm.allowed;
|
||||
};
|
||||
|
||||
// 获取方法的标签类型
|
||||
@@ -181,7 +183,7 @@ const onPermissionChange = (endpoint_key: string, role: string, allowed: boolean
|
||||
updatedMatrix[role] = {};
|
||||
}
|
||||
|
||||
updatedMatrix[role][endpoint_key] = { allowed };
|
||||
updatedMatrix[role][endpoint_key] = allowed;
|
||||
|
||||
emit("update", updatedMatrix);
|
||||
};
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
|
||||
<div class="cache-stat">
|
||||
<div class="stat-label">缓存项目数</div>
|
||||
<div class="stat-value">{{ cacheStats?.cache_items.total_count || 0 }}</div>
|
||||
<div class="stat-value">{{ health?.cache_stats?.cache_items.total_count || 0 }}</div>
|
||||
</div>
|
||||
|
||||
<div class="cache-stat">
|
||||
@@ -136,7 +136,7 @@ defineProps<Props>();
|
||||
defineEmits<Emits>();
|
||||
|
||||
const cacheStats = computed(() => {
|
||||
// 从 health 中提取 cache_stats
|
||||
// 从 health 中提取 cache_stats,如果没有则返回 null
|
||||
return null;
|
||||
});
|
||||
|
||||
|
||||
@@ -65,8 +65,8 @@ const tableData = computed(() => {
|
||||
const onPermissionChange = () => {
|
||||
if (!props.matrix) return;
|
||||
|
||||
const updatedMatrix = {
|
||||
...props.matrix,
|
||||
const updatedMatrix: ProjectRolePermissionsResponse = {
|
||||
modules: props.matrix.modules,
|
||||
roles: { ...props.matrix.roles },
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user