Skip to content

Commit 9e01573

Browse files
committed
fix(server) remove unnecessary getLastUpdatedAssetForAlbumId call for GET /api/album/:id
also remove getLastUpdatedAssetForAlbumId query as it is no longer referenced
1 parent 6d9ac08 commit 9e01573

File tree

4 files changed

+13
-26
lines changed

4 files changed

+13
-26
lines changed

server/src/repositories/album.repository.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -142,19 +142,19 @@ export class AlbumRepository {
142142
eb.fn
143143
.min<any>(
144144
sql`
145-
("assets"."localDateTime" AT TIME ZONE 'UTC'::text)
146-
::date
147-
`,
145+
("assets"."localDateTime" AT TIME ZONE 'UTC'::text)
146+
::date
147+
`,
148148
)
149149
.as('startDate'),
150150
)
151151
.select((eb) =>
152152
eb.fn
153153
.max<any>(
154154
sql`
155-
("assets"."localDateTime" AT TIME ZONE 'UTC'::text)
156-
::date
157-
`,
155+
("assets"."localDateTime" AT TIME ZONE 'UTC'::text)
156+
::date
157+
`,
158158
)
159159
.as('endDate'),
160160
)
@@ -163,17 +163,17 @@ export class AlbumRepository {
163163
eb.fn
164164
.max<any>(
165165
sql`
166-
("assets"."updatedAt" AT TIME ZONE 'UTC'::text)
167-
::date
168-
`,
166+
("assets"."updatedAt" AT TIME ZONE 'UTC'::text)
167+
::date
168+
`,
169169
)
170170
.as('lastModifiedAssetTimestamp'),
171171
)
172172
.select((eb) =>
173173
sql<number>`
174-
${eb.fn.count('assets.id')}
175-
::int
176-
`.as('assetCount'),
174+
${eb.fn.count('assets.id')}
175+
::int
176+
`.as('assetCount'),
177177
)
178178
.where('album_assets.albumsId', 'in', ids)
179179
.where('assets.deletedAt', 'is', null)

server/src/repositories/asset.repository.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -728,17 +728,6 @@ export class AssetRepository {
728728
return paginationHelper(items as any as AssetEntity[], pagination.take);
729729
}
730730

731-
getLastUpdatedAssetForAlbumId(albumId: string): Promise<AssetEntity | undefined> {
732-
return this.db
733-
.selectFrom('assets')
734-
.selectAll('assets')
735-
.innerJoin('albums_assets_assets', 'assets.id', 'albums_assets_assets.assetsId')
736-
.where('albums_assets_assets.albumsId', '=', asUuid(albumId))
737-
.orderBy('updatedAt', 'desc')
738-
.limit(1)
739-
.executeTakeFirst() as Promise<AssetEntity | undefined>;
740-
}
741-
742731
getStatistics(ownerId: string, { isArchived, isFavorite, isTrashed }: AssetStatsOptions): Promise<AssetStats> {
743732
return this.db
744733
.selectFrom('assets')

server/src/services/album.service.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,14 +75,13 @@ export class AlbumService extends BaseService {
7575
const withAssets = dto.withoutAssets === undefined ? true : !dto.withoutAssets;
7676
const album = await this.findOrFail(id, { withAssets });
7777
const [albumMetadataForIds] = await this.albumRepository.getMetadataForIds([album.id]);
78-
const lastModifiedAsset = await this.assetRepository.getLastUpdatedAssetForAlbumId(album.id);
7978

8079
return {
8180
...mapAlbum(album, withAssets, auth),
8281
startDate: albumMetadataForIds?.startDate ?? undefined,
8382
endDate: albumMetadataForIds?.endDate ?? undefined,
8483
assetCount: albumMetadataForIds?.assetCount ?? 0,
85-
lastModifiedAssetTimestamp: lastModifiedAsset?.updatedAt,
84+
lastModifiedAssetTimestamp: albumMetadataForIds?.lastModifiedAssetTimestamp ?? undefined,
8685
};
8786
}
8887

server/test/repositories/asset.repository.mock.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ export const newAssetRepositoryMock = (): Mocked<RepositoryInterface<AssetReposi
2121
getByChecksums: vitest.fn(),
2222
getUploadAssetIdByChecksum: vitest.fn(),
2323
getRandom: vitest.fn(),
24-
getLastUpdatedAssetForAlbumId: vitest.fn(),
2524
getAll: vitest.fn().mockResolvedValue({ items: [], hasNextPage: false }),
2625
getAllByDeviceId: vitest.fn(),
2726
getLivePhotoCount: vitest.fn(),

0 commit comments

Comments
 (0)