fix: time zone upserts (#25889)

This commit is contained in:
Daniel Dietzler
2026-02-05 18:43:03 +01:00
committed by GitHub
parent 27a2808470
commit 9c098109e0
7 changed files with 69 additions and 7 deletions

View File

@@ -46,6 +46,7 @@ import {
onBeforeUnlink,
} from 'src/utils/asset.util';
import { updateLockedColumns } from 'src/utils/database';
import { extractTimeZone } from 'src/utils/date';
import { transformOcrBoundingBox } from 'src/utils/transform';
@Injectable()
@@ -168,12 +169,13 @@ export class AssetService extends BaseService {
},
_.isUndefined,
);
const extractedTimeZone = dateTimeOriginal ? DateTime.fromISO(dateTimeOriginal, { setZone: true }).zone : undefined;
if (Object.keys(exifDto).length > 0) {
await this.assetRepository.updateAllExif(ids, exifDto);
}
const extractedTimeZone = extractTimeZone(dateTimeOriginal);
if (
(dateTimeRelative !== undefined && dateTimeRelative !== 0) ||
timeZone !== undefined ||
@@ -513,12 +515,11 @@ export class AssetService extends BaseService {
rating?: number;
}) {
const { id, description, dateTimeOriginal, latitude, longitude, rating } = dto;
const extractedTimeZone = dateTimeOriginal ? DateTime.fromISO(dateTimeOriginal, { setZone: true }).zone : undefined;
const writes = _.omitBy(
{
description,
dateTimeOriginal,
timeZone: extractedTimeZone?.type === 'fixed' ? extractedTimeZone.name : undefined,
timeZone: extractTimeZone(dateTimeOriginal)?.name,
latitude,
longitude,
rating,