feat: 初始化微信小程序后端骨架
- NestJS + TypeScript + Prisma + PostgreSQL 工程骨架 - 微信登录安全流程:服务端 code2Session 换 openid 后签发 JWT, session_key 缓存于 Redis,不信任前端 openid - 统一响应/异常处理、JWT 全局鉴权(@Public 豁免)、Swagger 文档 - Prisma 全量核心 schema(用户/分类/商品/设计清单/地址/订单/支付/上传/定制任务)+ seed - 业务模块空壳(商品/分类/设计清单/地址/订单/支付/上传/BullMQ 队列) - Docker 多阶段镜像 + 本地/生产 docker-compose - docs:密钥获取指南、COS SDK 移除记录 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
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 { 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,
|
||||
QueueModule,
|
||||
HealthModule,
|
||||
],
|
||||
// 默认全局开启 JWT 鉴权,@Public() 路由除外
|
||||
providers: [{ provide: APP_GUARD, useClass: JwtAuthGuard }],
|
||||
})
|
||||
export class AppModule {}
|
||||
Reference in New Issue
Block a user