| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- enum MenuType {
- DIRECTORY
- MENU
- SUBMENU
- BUTTON
- }
- model Menu {
- id Int @id @default(autoincrement())
- parentId Int? @map("parent_id")
- title String
- status Boolean @default(true)
- type MenuType
- order Int
- // existing
- frontendAuth String? @unique @map("frontend_auth")
- // NEW (optional, all nullable)
- parent Menu? @relation("MenuToChildren", fields: [parentId], references: [id])
- children Menu[] @relation("MenuToChildren")
- path String? @map("path") // route.path (full)
- name String? @map("name") // route.name
- icon String? @map("icon") // meta.icon
- redirect String? @map("redirect")
- component_key String? @map("component_key")
- meta Json?
- // action flags (0,1,2)
- canView Int @default(0)
- canCreate Int @default(0)
- canUpdate Int @default(0)
- canDelete Int @default(0)
- roleMenus RoleMenu[]
- apiPermissions ApiPermission[]
- createTime DateTime @default(now()) @map("create_time")
- updateTime DateTime @default(now()) @updatedAt @map("update_time")
- @@map("sys_menu")
- }
|