add pickup provider
This commit is contained in:
20
lib/data/provider/pickup_data_provider.dart
Normal file
20
lib/data/provider/pickup_data_provider.dart
Normal file
@@ -0,0 +1,20 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:fcs/config.dart';
|
||||
import 'package:fcs/domain/constants.dart';
|
||||
import 'package:fcs/domain/entities/package.dart';
|
||||
import 'package:fcs/domain/entities/pickup.dart';
|
||||
import 'package:fcs/helpers/api_helper.dart';
|
||||
import 'package:fcs/helpers/firebase_helper.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
|
||||
class PickupDataProvider {
|
||||
final log = Logger('PickupDataProvider');
|
||||
static final PickupDataProvider instance = PickupDataProvider._();
|
||||
PickupDataProvider._();
|
||||
|
||||
Future<void> completePickup(Pickup pickup) async {
|
||||
return await requestAPI("/pickups/complete", "PUT",
|
||||
payload: pickup.toMapForComplete(), token: await getToken());
|
||||
}
|
||||
}
|
||||
19
lib/data/services/pickup_imp.dart
Normal file
19
lib/data/services/pickup_imp.dart
Normal file
@@ -0,0 +1,19 @@
|
||||
import 'package:fcs/data/provider/pickup_data_provider.dart';
|
||||
import 'package:fcs/data/services/pickup_service.dart';
|
||||
import 'package:fcs/domain/entities/connectivity.dart';
|
||||
import 'package:fcs/domain/entities/pickup.dart';
|
||||
|
||||
class PickupServiceImp implements PickupService {
|
||||
PickupServiceImp({
|
||||
required this.connectivity,
|
||||
required this.pickupDataProvider,
|
||||
});
|
||||
|
||||
final Connectivity? connectivity;
|
||||
final PickupDataProvider pickupDataProvider;
|
||||
|
||||
@override
|
||||
Future<void> completePickup(Pickup pickup) {
|
||||
return pickupDataProvider.completePickup(pickup);
|
||||
}
|
||||
}
|
||||
6
lib/data/services/pickup_service.dart
Normal file
6
lib/data/services/pickup_service.dart
Normal file
@@ -0,0 +1,6 @@
|
||||
import 'package:fcs/domain/entities/package.dart';
|
||||
import 'package:fcs/domain/entities/pickup.dart';
|
||||
|
||||
abstract class PickupService {
|
||||
Future<void> completePickup(Pickup pickup);
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import 'package:fcs/data/provider/delivery_address_data_provider.dart';
|
||||
import 'package:fcs/data/provider/fcs_shipment_data_provider.dart';
|
||||
import 'package:fcs/data/provider/invoice_data_provider.dart';
|
||||
import 'package:fcs/data/provider/package_data_provider.dart';
|
||||
import 'package:fcs/data/provider/pickup_data_provider.dart';
|
||||
import 'package:fcs/data/provider/rate_data_provider.dart';
|
||||
import 'package:fcs/data/provider/shipment_data_provider.dart';
|
||||
import 'package:fcs/data/provider/user_data_provider.dart';
|
||||
@@ -16,6 +17,8 @@ import 'package:fcs/data/services/fcs_shipment_imp.dart';
|
||||
import 'package:fcs/data/services/fcs_shipment_service.dart';
|
||||
import 'package:fcs/data/services/invoice_imp.dart';
|
||||
import 'package:fcs/data/services/invoice_service.dart';
|
||||
import 'package:fcs/data/services/pickup_imp.dart';
|
||||
import 'package:fcs/data/services/pickup_service.dart';
|
||||
import 'package:fcs/data/services/rate_imp.dart';
|
||||
import 'package:fcs/data/services/rate_service.dart';
|
||||
import 'package:fcs/data/services/shipment_imp.dart';
|
||||
@@ -46,6 +49,7 @@ class Services {
|
||||
late ShipmentService _shipmentService;
|
||||
late CartonService _cartonService;
|
||||
late InvoiceService _invoiceService;
|
||||
late PickupService _pickupService;
|
||||
|
||||
Services._() {
|
||||
_authService = AuthServiceImp(
|
||||
@@ -72,6 +76,8 @@ class Services {
|
||||
cartonDataProvider: CartonDataProvider.instance, connectivity: null);
|
||||
_invoiceService = InvoiceServiceImp(
|
||||
invoiceDataProvider: InvoiceDataProvider.instance, connectivity: null);
|
||||
_pickupService = PickupServiceImp(
|
||||
connectivity: null, pickupDataProvider: PickupDataProvider.instance);
|
||||
}
|
||||
|
||||
AuthService get authService => _authService;
|
||||
@@ -85,4 +91,5 @@ class Services {
|
||||
ShipmentService get shipmentService => _shipmentService;
|
||||
CartonService get cartonService => _cartonService;
|
||||
InvoiceService get invoiceService => _invoiceService;
|
||||
PickupService get pickupService => _pickupService;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user