import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/customer_addresses_service.dart'; import 'package:diplomaticquarterapp/core/service/PrescriptionDeliveryService.dart'; import 'package:diplomaticquarterapp/core/service/parmacyModule/parmacy_module_service.dart'; import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart'; import '../../../locator.dart'; class PrescriptionDeliveryViewModel extends BaseViewModel { CustomerAddressesService _customerAddressesService = locator(); PharmacyModuleService _pharmacyModuleService = locator(); PrescriptionDeliveryService _prescriptionDeliveryService = locator(); List get addressesList => _customerAddressesService.addressesList; Future getCustomerInfo() async { setState(ViewState.Busy); await _pharmacyModuleService.generatePharmacyToken().then((value) async { // await _customerAddressesService.getCustomerInfo(); // await _customerAddressesService.getCustomerInfo(); await _pharmacyModuleService.createUser(); }); if (_customerAddressesService.hasError) { error = _customerAddressesService.error; setState(ViewState.ErrorLocal); } else { } await getCustomerAddresses(); } Future insertDeliveryOrder( {int lineItemNo, double latitude, double longitude, int appointmentNo, int createdBy, int dischargeID}) async { setState(ViewState.BusyLocal); await _prescriptionDeliveryService.insertDeliveryOrder( lineItemNo: lineItemNo, latitude: latitude, longitude: longitude, appointmentNo: appointmentNo, createdBy: createdBy, dischargeID: dischargeID ); if (_prescriptionDeliveryService.hasError) { error = _prescriptionDeliveryService.error; setState(ViewState.ErrorLocal); } else { setState(ViewState.Idle); } } Future getCustomerAddresses() async { setState(ViewState.Busy); await _customerAddressesService.getCustomerAddresses(); if (_customerAddressesService.hasError) { error = _customerAddressesService.error; setState(ViewState.ErrorLocal); } else { setState(ViewState.Idle); } } }