refactor: migrate asset job status entity (#17560)

This commit is contained in:
Daniel Dietzler 2025-04-14 12:21:56 +02:00 committed by GitHub
parent 8b00578c7b
commit 184e142d87
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 7 additions and 15 deletions

View File

@ -1,5 +1,5 @@
import { Selectable } from 'kysely';
import { Exif as DatabaseExif } from 'src/db';
import { AssetJobStatus as DatabaseAssetJobStatus, Exif as DatabaseExif } from 'src/db';
import { AssetEntity } from 'src/entities/asset.entity';
import {
AlbumUserRole,
@ -249,6 +249,10 @@ export type AssetFace = {
person?: Person | null;
};
export type AssetJobStatus = Selectable<DatabaseAssetJobStatus> & {
asset: AssetEntity;
};
const userColumns = ['id', 'name', 'email', 'profileImagePath', 'profileChangedAt'] as const;
export const columns = {

View File

@ -1,11 +0,0 @@
import { AssetEntity } from 'src/entities/asset.entity';
export class AssetJobStatusEntity {
asset!: AssetEntity;
assetId!: string;
facesRecognizedAt!: Date | null;
metadataExtractedAt!: Date | null;
duplicatesDetectedAt!: Date | null;
previewAt!: Date | null;
thumbnailAt!: Date | null;
}

View File

@ -1,9 +1,8 @@
import { DeduplicateJoinsPlugin, ExpressionBuilder, Kysely, SelectQueryBuilder, sql } from 'kysely';
import { jsonArrayFrom, jsonObjectFrom } from 'kysely/helpers/postgres';
import { AssetFace, AssetFile, Exif, Stack, Tag, User } from 'src/database';
import { AssetFace, AssetFile, AssetJobStatus, Exif, Stack, Tag, User } from 'src/database';
import { DB } from 'src/db';
import { AlbumEntity } from 'src/entities/album.entity';
import { AssetJobStatusEntity } from 'src/entities/asset-job-status.entity';
import { SharedLinkEntity } from 'src/entities/shared-link.entity';
import { AssetFileType, AssetStatus, AssetType } from 'src/enum';
import { TimeBucketSize } from 'src/repositories/asset.repository';
@ -50,7 +49,7 @@ export class AssetEntity {
faces!: AssetFace[];
stackId?: string | null;
stack?: Stack | null;
jobStatus?: AssetJobStatusEntity;
jobStatus?: AssetJobStatus;
duplicateId!: string | null;
}