fix(mobile): Correction of image creation date by using mtime instead… (#21508)

* fix(mobile): Correction of image creation date by using mtime instead of ctime.

* use the timestamps from the asset for uploads

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
This commit is contained in:
Maksim 2025-09-04 21:26:02 +03:00 committed by GitHub
parent 53825cc3d6
commit 51aec1e93d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -282,6 +282,8 @@ class UploadService {
return buildUploadTask(
file,
createdAt: asset.createdAt,
modifiedAt: asset.updatedAt,
originalFileName: originalFileName,
deviceAssetId: asset.id,
metadata: metadata,
@ -309,6 +311,8 @@ class UploadService {
return buildUploadTask(
file,
createdAt: asset.createdAt,
modifiedAt: asset.updatedAt,
originalFileName: asset.name,
deviceAssetId: asset.id,
fields: fields,
@ -334,6 +338,8 @@ class UploadService {
Future<UploadTask> buildUploadTask(
File file, {
required String group,
required DateTime createdAt,
required DateTime modifiedAt,
Map<String, String>? fields,
String? originalFileName,
String? deviceAssetId,
@ -347,15 +353,12 @@ class UploadService {
final headers = ApiService.getRequestHeaders();
final deviceId = Store.get(StoreKey.deviceId);
final (baseDirectory, directory, filename) = await Task.split(filePath: file.path);
final stats = await file.stat();
final fileCreatedAt = stats.changed;
final fileModifiedAt = stats.modified;
final fieldsMap = {
'filename': originalFileName ?? filename,
'deviceAssetId': deviceAssetId ?? '',
'deviceId': deviceId,
'fileCreatedAt': fileCreatedAt.toUtc().toIso8601String(),
'fileModifiedAt': fileModifiedAt.toUtc().toIso8601String(),
'fileCreatedAt': createdAt.toUtc().toIso8601String(),
'fileModifiedAt': modifiedAt.toUtc().toIso8601String(),
'isFavorite': isFavorite?.toString() ?? 'false',
'duration': '0',
if (fields != null) ...fields,