mirror of
https://github.com/immich-app/immich.git
synced 2025-01-28 00:59:18 -05:00
fix(web) getting asset with avaialble thumbnail when getting asset count by time bucket (#900)
This commit is contained in:
parent
6fcc1d7685
commit
6e638cd673
1 changed files with 12 additions and 5 deletions
|
@ -35,7 +35,10 @@ export interface IAssetRepository {
|
||||||
getAssetWithNoThumbnail(): Promise<AssetEntity[]>;
|
getAssetWithNoThumbnail(): Promise<AssetEntity[]>;
|
||||||
getAssetWithNoEXIF(): Promise<AssetEntity[]>;
|
getAssetWithNoEXIF(): Promise<AssetEntity[]>;
|
||||||
getAssetWithNoSmartInfo(): Promise<AssetEntity[]>;
|
getAssetWithNoSmartInfo(): Promise<AssetEntity[]>;
|
||||||
getExistingAssets(userId: string, checkDuplicateAssetDto: CheckExistingAssetsDto): Promise<CheckExistingAssetsResponseDto>;
|
getExistingAssets(
|
||||||
|
userId: string,
|
||||||
|
checkDuplicateAssetDto: CheckExistingAssetsDto,
|
||||||
|
): Promise<CheckExistingAssetsResponseDto>;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const ASSET_REPOSITORY = 'ASSET_REPOSITORY';
|
export const ASSET_REPOSITORY = 'ASSET_REPOSITORY';
|
||||||
|
@ -118,6 +121,7 @@ export class AssetRepository implements IAssetRepository {
|
||||||
.select(`COUNT(asset.id)::int`, 'count')
|
.select(`COUNT(asset.id)::int`, 'count')
|
||||||
.addSelect(`date_trunc('month', "createdAt")`, 'timeBucket')
|
.addSelect(`date_trunc('month', "createdAt")`, 'timeBucket')
|
||||||
.where('"userId" = :userId', { userId: userId })
|
.where('"userId" = :userId', { userId: userId })
|
||||||
|
.andWhere('asset.resizePath is not NULL')
|
||||||
.groupBy(`date_trunc('month', "createdAt")`)
|
.groupBy(`date_trunc('month', "createdAt")`)
|
||||||
.orderBy(`date_trunc('month', "createdAt")`, 'DESC')
|
.orderBy(`date_trunc('month', "createdAt")`, 'DESC')
|
||||||
.getRawMany();
|
.getRawMany();
|
||||||
|
@ -127,6 +131,7 @@ export class AssetRepository implements IAssetRepository {
|
||||||
.select(`COUNT(asset.id)::int`, 'count')
|
.select(`COUNT(asset.id)::int`, 'count')
|
||||||
.addSelect(`date_trunc('day', "createdAt")`, 'timeBucket')
|
.addSelect(`date_trunc('day', "createdAt")`, 'timeBucket')
|
||||||
.where('"userId" = :userId', { userId: userId })
|
.where('"userId" = :userId', { userId: userId })
|
||||||
|
.andWhere('asset.resizePath is not NULL')
|
||||||
.groupBy(`date_trunc('day', "createdAt")`)
|
.groupBy(`date_trunc('day', "createdAt")`)
|
||||||
.orderBy(`date_trunc('day', "createdAt")`, 'DESC')
|
.orderBy(`date_trunc('day', "createdAt")`, 'DESC')
|
||||||
.getRawMany();
|
.getRawMany();
|
||||||
|
@ -284,16 +289,18 @@ export class AssetRepository implements IAssetRepository {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async getExistingAssets(userId: string, checkDuplicateAssetDto: CheckExistingAssetsDto): Promise<CheckExistingAssetsResponseDto> {
|
async getExistingAssets(
|
||||||
|
userId: string,
|
||||||
|
checkDuplicateAssetDto: CheckExistingAssetsDto,
|
||||||
|
): Promise<CheckExistingAssetsResponseDto> {
|
||||||
const existingAssets = await this.assetRepository.find({
|
const existingAssets = await this.assetRepository.find({
|
||||||
select: {deviceAssetId: true},
|
select: { deviceAssetId: true },
|
||||||
where: {
|
where: {
|
||||||
deviceAssetId: In(checkDuplicateAssetDto.deviceAssetIds),
|
deviceAssetId: In(checkDuplicateAssetDto.deviceAssetIds),
|
||||||
deviceId: checkDuplicateAssetDto.deviceId,
|
deviceId: checkDuplicateAssetDto.deviceId,
|
||||||
userId,
|
userId,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
return new CheckExistingAssetsResponseDto(existingAssets.map(a => a.deviceAssetId));
|
return new CheckExistingAssetsResponseDto(existingAssets.map((a) => a.deviceAssetId));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue