import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { APP_GUARD } from '@nestjs/core'; import { validationSchema } from './config/validation.schema'; import { PrismaModule } from './prisma/prisma.module'; import { RedisModule } from './redis/redis.module'; import { JwtAuthGuard } from './common/guards/jwt-auth.guard'; import { WechatModule } from './wechat/wechat.module'; import { AuthModule } from './auth/auth.module'; import { UsersModule } from './users/users.module'; import { ProductsModule } from './products/products.module'; import { CategoriesModule } from './categories/categories.module'; import { DesignListModule } from './design-list/design-list.module'; import { AddressesModule } from './addresses/addresses.module'; import { OrdersModule } from './orders/orders.module'; import { PaymentsModule } from './payments/payments.module'; import { UploadModule } from './upload/upload.module'; import { WordCloudModule } from './wordcloud/wordcloud.module'; import { SketchModule } from './sketch/sketch.module'; import { QueueModule } from './queue/queue.module'; import { HealthModule } from './health/health.module'; @Module({ imports: [ ConfigModule.forRoot({ isGlobal: true, // 直接读 env(已在 .env / 容器环境注入),用 configuration() 分组 load: [() => require('./config/configuration').default()], validationSchema, validationOptions: { abortEarly: false }, }), PrismaModule, RedisModule, WechatModule, AuthModule, UsersModule, ProductsModule, CategoriesModule, DesignListModule, AddressesModule, OrdersModule, PaymentsModule, UploadModule, WordCloudModule, SketchModule, QueueModule, HealthModule, ], // 默认全局开启 JWT 鉴权,@Public() 路由除外 providers: [{ provide: APP_GUARD, useClass: JwtAuthGuard }], }) export class AppModule {}