主要更新: 1. 后端核心底座完成 (M1-M6): - 健康检查、指标监控、分布式锁 - 事件总线、队列系统、事务管理 - 安全守卫、多租户隔离、存储适配器 - 审计日志、配置管理、多语言支持 2. 前端迁移到 Ant Design Vue: - 从 Element Plus 迁移到 Ant Design Vue - 完善 system 模块 (role/menu/dept) - 修复依赖和配置问题 3. 文档完善: - AI 开发工作流文档 - 架构约束和开发规范 - 项目进度跟踪 4. 其他改进: - 修复编译错误和类型问题 - 完善测试用例 - 优化项目结构
29 lines
768 B
TypeScript
29 lines
768 B
TypeScript
import { verifyAccessToken } from '~/utils/jwt-utils';
|
|
import { MOCK_MENU_LIST } from '~/utils/mock-data';
|
|
import { unAuthorizedResponse } from '~/utils/response';
|
|
|
|
const namesMap: Record<string, any> = {};
|
|
|
|
function getNames(menus: any[]) {
|
|
menus.forEach((menu) => {
|
|
namesMap[menu.name] = String(menu.id);
|
|
if (menu.children) {
|
|
getNames(menu.children);
|
|
}
|
|
});
|
|
}
|
|
getNames(MOCK_MENU_LIST);
|
|
|
|
export default eventHandler(async (event) => {
|
|
const userinfo = verifyAccessToken(event);
|
|
if (!userinfo) {
|
|
return unAuthorizedResponse(event);
|
|
}
|
|
const { id, name } = getQuery(event);
|
|
|
|
return (name as string) in namesMap &&
|
|
(!id || namesMap[name as string] !== String(id))
|
|
? useResponseSuccess(true)
|
|
: useResponseSuccess(false);
|
|
});
|