feat: write integrity report to database

This commit is contained in:
izzy
2025-11-27 12:53:04 +00:00
parent 15503b150a
commit 1e941f3f88
8 changed files with 105 additions and 16 deletions
+2
View File
@@ -15,6 +15,7 @@ import { DownloadRepository } from 'src/repositories/download.repository';
import { DuplicateRepository } from 'src/repositories/duplicate.repository';
import { EmailRepository } from 'src/repositories/email.repository';
import { EventRepository } from 'src/repositories/event.repository';
import { IntegrityReportRepository } from 'src/repositories/integrity-report.repository';
import { JobRepository } from 'src/repositories/job.repository';
import { LibraryRepository } from 'src/repositories/library.repository';
import { LoggingRepository } from 'src/repositories/logging.repository';
@@ -68,6 +69,7 @@ export const repositories = [
DuplicateRepository,
EmailRepository,
EventRepository,
IntegrityReportRepository,
JobRepository,
LibraryRepository,
LoggingRepository,
@@ -0,0 +1,19 @@
import { Injectable } from '@nestjs/common';
import { Insertable, Kysely } from 'kysely';
import { InjectKysely } from 'nestjs-kysely';
import { DB } from 'src/schema';
import { IntegrityReportTable } from 'src/schema/tables/integrity-report.table';
@Injectable()
export class IntegrityReportRepository {
constructor(@InjectKysely() private db: Kysely<DB>) {}
create(dto: Insertable<IntegrityReportTable> | Insertable<IntegrityReportTable>[]) {
return this.db
.insertInto('integrity_report')
.values(dto)
.onConflict((oc) => oc.doNothing())
.returningAll()
.executeTakeFirst();
}
}