From e66d0258977748a1f6f4c65d8d0991660fec18c5 Mon Sep 17 00:00:00 2001 From: Jonathan Jogenfors Date: Sat, 8 Feb 2025 01:30:16 +0100 Subject: [PATCH] wip --- server/src/queries/asset.repository.sql | 3 +++ server/src/queries/library.repository.sql | 5 ++++- server/src/repositories/asset.repository.ts | 3 --- server/src/repositories/library.repository.ts | 3 +++ 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/server/src/queries/asset.repository.sql b/server/src/queries/asset.repository.sql index bfaf5966cec0f..3efc560b3b7ff 100644 --- a/server/src/queries/asset.repository.sql +++ b/server/src/queries/asset.repository.sql @@ -263,6 +263,9 @@ with where "assets"."deletedAt" is null and "assets"."isVisible" = $2 + and "assets"."fileCreatedAt" is not null + and "assets"."fileModifiedAt" is not null + and "assets"."localDateTime" is not null ) select "timeBucket", diff --git a/server/src/queries/library.repository.sql b/server/src/queries/library.repository.sql index b0b20fd8a2458..cbf9ce8edda3b 100644 --- a/server/src/queries/library.repository.sql +++ b/server/src/queries/library.repository.sql @@ -132,7 +132,10 @@ from inner join "assets" on "assets"."libraryId" = "libraries"."id" left join "exif" on "exif"."assetId" = "assets"."id" where - "libraries"."id" = $6 + "assets"."fileCreatedAt" is not null + and "assets"."fileModifiedAt" is not null + and "assets"."localDateTime" is not null + and "libraries"."id" = $6 group by "libraries"."id" select diff --git a/server/src/repositories/asset.repository.ts b/server/src/repositories/asset.repository.ts index 9458b82fb859f..d3ddd57d07047 100644 --- a/server/src/repositories/asset.repository.ts +++ b/server/src/repositories/asset.repository.ts @@ -138,9 +138,6 @@ export class AssetRepository implements IAssetRepository { ) .innerJoin('exif', 'a.id', 'exif.assetId') .selectAll('a') - .$narrowType<{ fileCreatedAt: NotNull }>() - .$narrowType<{ fileModifiedAt: NotNull }>() - .$narrowType<{ localDateTime: NotNull }>() .select((eb) => eb.fn.toJson(eb.table('exif')).as('exifInfo')), ) .selectFrom('res') diff --git a/server/src/repositories/library.repository.ts b/server/src/repositories/library.repository.ts index 0e1ec94c32f86..64881d38788e6 100644 --- a/server/src/repositories/library.repository.ts +++ b/server/src/repositories/library.repository.ts @@ -100,6 +100,9 @@ export class LibraryRepository implements ILibraryRepository { const stats = await this.db .selectFrom('libraries') .innerJoin('assets', 'assets.libraryId', 'libraries.id') + .where('assets.fileCreatedAt', 'is not', null) + .where('assets.fileModifiedAt', 'is not', null) + .where('assets.localDateTime', 'is not', null) .leftJoin('exif', 'exif.assetId', 'assets.id') .select((eb) => eb.fn