增加admin管理帐号和项目的界面--初步实现

This commit is contained in:
Cheng Zhou
2025-12-17 20:12:49 +08:00
parent 4f50237f56
commit c074c2b5bc
18933 changed files with 2088454 additions and 63 deletions
+14 -6
View File
@@ -12,10 +12,15 @@
<el-button size="small" type="danger" @click="onLogout">退出登录</el-button>
</div>
</el-header>
<el-container>
<el-aside width="200px" class="aside" v-if="study.currentStudy">
<el-menu router :default-active="$route.path">
<el-menu-item index="/home">首页</el-menu-item>
<el-container>
<el-aside width="220px" class="aside" v-if="isAdmin || study.currentStudy">
<el-menu router :default-active="$route.path">
<template v-if="isAdmin">
<el-menu-item index="/admin/users">账号治理</el-menu-item>
<el-menu-item index="/admin/projects">项目治理</el-menu-item>
<el-menu-item index="/studies">项目列表PM 视角</el-menu-item>
</template>
<template v-if="study.currentStudy">
<el-menu-item index="/study/home">项目概览</el-menu-item>
<el-menu-item index="/study/milestones">伦理与启动管理</el-menu-item>
<el-menu-item index="/study/tasks">任务</el-menu-item>
@@ -33,8 +38,9 @@
</el-sub-menu>
<el-menu-item index="/study/finance">费用</el-menu-item>
<el-menu-item index="/study/faq">知识库</el-menu-item>
</el-menu>
</el-aside>
</template>
</el-menu>
</el-aside>
<el-main>
<router-view />
</el-main>
@@ -43,6 +49,7 @@
</template>
<script setup lang="ts">
import { computed } from "vue";
import { useRouter } from "vue-router";
import { useAuthStore } from "../store/auth";
import { useStudyStore } from "../store/study";
@@ -51,6 +58,7 @@ import StudySelector from "./StudySelector.vue";
const auth = useAuthStore();
const study = useStudyStore();
const router = useRouter();
const isAdmin = computed(() => auth.user?.role === "ADMIN");
const onLogout = () => {
auth.logout();