feat: complete cmpp platform phases 0-5

This commit is contained in:
hectorzhao
2026-07-01 13:22:04 +08:00
parent 824a8b334f
commit ee926fea04
86 changed files with 10490 additions and 14 deletions
+41
View File
@@ -0,0 +1,41 @@
import { Injectable } from '@nestjs/common';
import { Prisma } from '@prisma/client';
import { PrismaService } from '../prisma/prisma.service';
export interface CreateOperationLogDto {
tenantId?: string;
userId?: string;
action: string;
resource: string;
resourceId?: string;
ipAddress?: string;
userAgent?: string;
detail?: Record<string, unknown>;
}
@Injectable()
export class AuditService {
constructor(private readonly prisma: PrismaService) {}
list(tenantId?: string) {
return this.prisma.operationLog.findMany({
where: tenantId ? { tenantId } : undefined,
orderBy: { createdAt: 'desc' },
take: 100,
});
}
create(data: CreateOperationLogDto) {
const createData: Prisma.OperationLogUncheckedCreateInput = {
tenantId: data.tenantId,
userId: data.userId,
action: data.action,
resource: data.resource,
resourceId: data.resourceId,
ipAddress: data.ipAddress,
userAgent: data.userAgent,
detail: data.detail as Prisma.InputJsonValue | undefined,
};
return this.prisma.operationLog.create({ data: createData });
}
}