feat: add image upload functionality to poultry science feature, including repository and data source updates for handling image uploads
This commit is contained in:
@@ -89,4 +89,9 @@ abstract class PoultryScienceRemoteDataSource {
|
||||
required String token,
|
||||
required String orderId,
|
||||
});
|
||||
|
||||
Future<List<String>?> uploadImages({
|
||||
required String token,
|
||||
required List<XFile> images,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -245,5 +245,21 @@ class PoultryScienceRemoteDataSourceImpl
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>?> uploadImages({
|
||||
required String token,
|
||||
required List<XFile> images,
|
||||
}) async {
|
||||
var res = await _httpClient.post<List<String>?>(
|
||||
'/upload_image_to_server_for_poultry_science/',
|
||||
headers: {'Authorization': 'Bearer $token'},
|
||||
data: FormData.fromMap({
|
||||
'file': images.map((e) => MultipartFile.fromFileSync(e.path)).toList(),
|
||||
}),
|
||||
fromJson: (json) => List<String>.from(json['urls'] as List),
|
||||
);
|
||||
return res.data;
|
||||
}
|
||||
|
||||
//endregion
|
||||
}
|
||||
|
||||
@@ -89,4 +89,9 @@ abstract class PoultryScienceRepository {
|
||||
required String token,
|
||||
required String orderId,
|
||||
});
|
||||
|
||||
Future<List<String>?> uploadImages({
|
||||
required String token,
|
||||
required List<XFile> images,
|
||||
});
|
||||
}
|
||||
|
||||
@@ -180,4 +180,12 @@ class PoultryScienceRepositoryImpl implements PoultryScienceRepository {
|
||||
}) async {
|
||||
return await _dataSource.deletePoultryOder(token: token, orderId: orderId);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<List<String>?> uploadImages({
|
||||
required String token,
|
||||
required List<XFile> images,
|
||||
}) async {
|
||||
return await _dataSource.uploadImages(token: token, images: images);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user