2
0

index.ts 890 B

12345678910111213141516171819202122232425262728
  1. import { createCrudRoutes } from '@/server/utils/generic-crud.routes';
  2. import { UserEntity } from '@/server/modules/users/user.entity';
  3. import { authMiddleware } from '@/server/middleware/auth.middleware';
  4. import { UserSchema, CreateUserDto, UpdateUserDto } from '@/server/modules/users/user.dto';
  5. // 使用权限配置的示例
  6. const userRoutes = createCrudRoutes({
  7. entity: UserEntity,
  8. createSchema: CreateUserDto,
  9. updateSchema: UpdateUserDto,
  10. getSchema: UserSchema,
  11. listSchema: UserSchema,
  12. searchFields: ['username', 'email', 'phone'],
  13. middleware: [authMiddleware],
  14. relations: ['roles'],
  15. permissions: {
  16. create: ['system:user:create'],
  17. read: ['system:user:view:all'],
  18. update: ['system:user:update'],
  19. delete: ['system:user:delete']
  20. },
  21. userTracking: {
  22. createdByField: 'createdBy',
  23. updatedByField: 'updatedBy'
  24. }
  25. });
  26. export default userRoutes;