feat : inspection
This commit is contained in:
@@ -16,7 +16,7 @@ abstract class PoultryScienceRemoteDatasource {
|
||||
|
||||
Future<void> submitPoultryScienceReport({
|
||||
required String token,
|
||||
required IFormData data,
|
||||
required FormData data,
|
||||
ProgressCallback? onSendProgress,
|
||||
});
|
||||
|
||||
|
||||
@@ -45,13 +45,13 @@ class PoultryScienceRemoteDatasourceImp implements PoultryScienceRemoteDatasourc
|
||||
@override
|
||||
Future<void> submitPoultryScienceReport({
|
||||
required String token,
|
||||
required IFormData data,
|
||||
required FormData data,
|
||||
ProgressCallback? onSendProgress,
|
||||
}) async {
|
||||
await _httpClient.upload(
|
||||
await _httpClient.post(
|
||||
'/poultry_science_report/',
|
||||
headers: {'Authorization': 'Bearer $token'},
|
||||
formData: data,
|
||||
data: data,
|
||||
onSendProgress: onSendProgress,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ abstract class PoultryScienceRepository {
|
||||
|
||||
Future<void> submitPoultryScienceReport({
|
||||
required String token,
|
||||
required IFormData data,
|
||||
required FormData data,
|
||||
ProgressCallback? onSendProgress,
|
||||
});
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ class PoultryScienceRepositoryImp implements PoultryScienceRepository {
|
||||
@override
|
||||
Future<void> submitPoultryScienceReport({
|
||||
required String token,
|
||||
required IFormData data,
|
||||
required FormData data,
|
||||
ProgressCallback? onSendProgress,
|
||||
}) async => await datasource.submitPoultryScienceReport(
|
||||
token: token,
|
||||
|
||||
@@ -149,7 +149,6 @@ class InspectionPoultryScienceLogic extends GetxController {
|
||||
preferredCameraDevice: CameraDevice.front,
|
||||
maxHeight: 720,
|
||||
maxWidth: 1080,
|
||||
|
||||
);
|
||||
getFileSizeInKB(tmp?.path ?? '', tag: 'Picked');
|
||||
|
||||
@@ -170,20 +169,30 @@ class InspectionPoultryScienceLogic extends GetxController {
|
||||
isOnUpload.value = true;
|
||||
|
||||
DioFormData formData = DioFormData();
|
||||
var ls = [];
|
||||
|
||||
for (var element in _multiPartPickedImages) {
|
||||
var ls = await element.finalize().toList();
|
||||
formData.addFile('file', ls[0], element.filename ?? 'image.jpg');
|
||||
for (var element in pickedImages) {
|
||||
ls.add(
|
||||
await MultipartFile.fromFile(
|
||||
element.path,
|
||||
filename: element.name,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
formData.addField("lat", currentLocation.value.latitude.toString());
|
||||
formData.addField("log", currentLocation.value.longitude.toString());
|
||||
formData.addField("hatching_id", id.toString());
|
||||
var data = FormData.fromMap({
|
||||
'file':ls,
|
||||
'hatching_id': id.toString(),
|
||||
'lat': currentLocation.value.latitude.toString(),
|
||||
'log': currentLocation.value.longitude.toString(),
|
||||
});
|
||||
|
||||
|
||||
|
||||
safeCall(
|
||||
call: () async => await rootLogic.poultryRepository.submitPoultryScienceReport(
|
||||
token: rootLogic.tokenService.accessToken.value!,
|
||||
data: formData,
|
||||
data: data,
|
||||
onSendProgress: (sent, total) {
|
||||
presentUpload.value = calculateUploadProgress(sent: sent, total: total);
|
||||
},
|
||||
@@ -195,14 +204,11 @@ class InspectionPoultryScienceLogic extends GetxController {
|
||||
getHatchingReport();
|
||||
isOnUpload.value = false;
|
||||
},
|
||||
onError: (error, stackTrace) async{
|
||||
|
||||
onError: (error, stackTrace) async {
|
||||
clearImages();
|
||||
isOnUpload.value = false;
|
||||
|
||||
await Future.delayed(const Duration(seconds: 4)).then((value) => closeBottomSheet(),);
|
||||
|
||||
|
||||
await Future.delayed(const Duration(seconds: 4)).then((value) => closeBottomSheet());
|
||||
},
|
||||
showError: true,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user