docs: 更新 CLAUDE.md 项目文档

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
charilezhou
2026-01-19 12:37:18 +08:00
parent 9c65d39dd2
commit c935d0b6aa

View File

@@ -107,13 +107,14 @@ import { RequirePermission } from '../decorators/require-permission.decorator';
### 软删除机制
PrismaService 使用 `$extends` 实现底层自动软删除:
PrismaService 使用 `$extends` 实现底层自动软删除,自动检测 schema 中有 `deletedAt` 字段的模型
- **查询自动过滤**: `findMany``findFirst``findUnique``count` 自动添加 `deletedAt: null` 条件
- **查询自动过滤**: `findMany``findFirst``findUnique``findFirstOrThrow``findUniqueOrThrow``count``aggregate``groupBy` 自动添加 `deletedAt: null` 条件
- **更新保护**: `update``updateMany` 自动过滤已删除记录,防止误更新
- **删除自动转换**: `delete``deleteMany` 自动转换为设置 `deletedAt` 时间戳
- **绕过过滤**: 显式指定 `deletedAt` 条件可查询已删除数据,如 `where: { deletedAt: { not: null } }`
启用软删除的模型`apps/api/src/prisma/prisma.service.ts``SOFT_DELETE_MODELS` 数组中配置
启用软删除只需`schema.prisma` 中为模型添加 `deletedAt DateTime?` 字段,运行 `pnpm db:generate` 后自动生效
### 通信加密