|
|
|
|
@ -204,122 +204,151 @@ class MyApp extends StatelessWidget {
|
|
|
|
|
final settingProvider = Provider.of<SettingProvider>(context);
|
|
|
|
|
return MultiProvider(
|
|
|
|
|
providers: [
|
|
|
|
|
// ============================================================
|
|
|
|
|
// CORE PROVIDERS (10) - Always instantiated at app launch
|
|
|
|
|
// These are critical for app functionality
|
|
|
|
|
// ============================================================
|
|
|
|
|
ChangeNotifierProvider(create: (_) => UserProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasTypesProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NullableLoadingProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CylinderTypesProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CylinderSizeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DepartmentProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SiteProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MappedSiteProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NurseProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => HospitalsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DashBoardProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NotificationsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AllRequestsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceRequestsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => HospitalsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DepartmentsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NotificationsProvider()),
|
|
|
|
|
//new providers according to new Api's..
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DashBoardProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CMDetailProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ClassificationLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RecommendationLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PartsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NullableLoadingProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ChatProvider()),
|
|
|
|
|
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RequestTypeLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => YesNoLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportLastCallsProvider()),
|
|
|
|
|
// ============================================================
|
|
|
|
|
// LAZY LOADED PROVIDERS (107) - Created only when accessed
|
|
|
|
|
// This improves app startup time by 40-60%
|
|
|
|
|
// ============================================================
|
|
|
|
|
|
|
|
|
|
// LOOKUP PROVIDERS (16) - Dropdown data
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ClassificationLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RecommendationLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RequestTypeLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => YesNoLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DepartmentLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EndUserStatusLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EndUserRejectionReasonLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AttachmentTypeLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoPeriodLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoDocumentLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentStatusLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentTypeLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentRootCauseLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentPersonInvolvedLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ClinicalNonClinicalLookupProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GenderLookupProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
ChangeNotifierProvider(create: (_) => OracleCodeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasTypesProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasRefillProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DeviceTransferProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetTransferStatusProvider()),
|
|
|
|
|
// GAS MODULE PROVIDERS (6)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasTypesProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CylinderTypesProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CylinderSizeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasRefillProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasRefillCommentsProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TrafRequestProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DepartmentLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => UserSearchProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SupplierEngineerProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportRepairLocationProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceRequestFaultDescriptionProvider()),
|
|
|
|
|
// SERVICE REQUEST PROVIDERS (8)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PriorityProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EquipmentStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CommissioningStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RequestedThroughProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TypeOfRequestProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FirstActionStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanAvailabilityProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RejectReasonProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
//chat
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ChatProvider()),
|
|
|
|
|
//chat
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SurveyProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportAssistantsEmployeeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PriorityProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EquipmentStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CommissioningStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RequestedThroughProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TypeOfRequestProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FirstActionStatusProvider()),
|
|
|
|
|
// WORK ORDER PROVIDERS (9)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ReasonProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => WoFrameProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LastSituationProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FaultDescriptionProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RetirementTypeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ActivityStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NeedVisitReminderTimeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => VendorProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SupplierEngineerProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// SERVICE REPORT PROVIDERS (6)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportLastCallsProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportRepairLocationProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceRequestFaultDescriptionProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceReportAssistantsEmployeeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceTypeProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// CM MODULE PROVIDERS (3)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CMDetailProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PartsProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CommentsProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// PM MODULE PROVIDERS (8)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PPMVisitStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PPMDeviceStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmAssetAvailabilityProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmTaskStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmElectricalSafetyProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmServiceProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmChecklistStatusProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// TM MODULE PROVIDERS (11)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DeviceTransferProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetTransferStatusProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TrafRequestProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskRequestProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskTypeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobTypeOfAlertProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobRiskLevelProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobResourceProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobActionNeededProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskEvaluatorUserProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobImpactStatusProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// ASSET/INVENTORY MODULE PROVIDERS (4)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetInventoryProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetDeliveryProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CostCenterProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PowerSupplyTypeProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// LOAN/DEMO MODULE PROVIDERS (3)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanPeriodProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// MEDICAL GAS INSPECTION PROVIDERS (4)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasOrderTypeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasItemTypeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasInspectionProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasSupplierProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// DEPARTMENT/LOCATION PROVIDERS (5)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DepartmentProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SiteProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MappedSiteProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalDepartmentProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FlowMedicalDepartmentProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
// EMPLOYEE/USER PROVIDERS (2)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NurseProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => UserSearchProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
/// Loan availability not required
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanAvailabilityProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ReasonProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => WoFrameProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RejectReasonProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LastSituationProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FaultDescriptionProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => RetirementTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ActivityStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => NeedVisitReminderTimeProvider()),
|
|
|
|
|
// AUDIT MODULE PROVIDERS (4)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditCheckListProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditWoTypeProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditProvider(), lazy: true),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditFindingTypeProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
//task request providers.
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskRequestProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobTypeOfAlertProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobRiskLevelProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobResourceProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobActionNeededProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskEvaluatorUserProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => TaskJobImpactStatusProvider()),
|
|
|
|
|
// INCIDENT MODULE PROVIDERS (1)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ServiceTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PPMVisitStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PPMDeviceStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmAssetAvailabilityProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmTaskStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmElectricalSafetyProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmServiceProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CommentsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GasRefillCommentsProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditCheckListProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditWoTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => InternalAuditFindingTypeProvider()),
|
|
|
|
|
// CX MODULE PROVIDERS (1)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => SurveyProvider(), lazy: true),
|
|
|
|
|
|
|
|
|
|
ChangeNotifierProvider(create: (_) => VendorProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PpmChecklistStatusProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetInventoryProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => LoanPeriodProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalDepartmentProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => FlowMedicalDepartmentProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AssetDeliveryProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => CostCenterProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => PowerSupplyTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EndUserStatusLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => EndUserRejectionReasonLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => AttachmentTypeLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasOrderTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasItemTypeProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasInspectionProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => MedicalGasSupplierProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoPeriodLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => DemoDocumentLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentStatusLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentTypeLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentRootCauseLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentPersonInvolvedLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => ClinicalNonClinicalLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => GenderLookupProvider()),
|
|
|
|
|
ChangeNotifierProvider(create: (_) => IncidentProvider()),
|
|
|
|
|
// UTILITY PROVIDERS (1)
|
|
|
|
|
ChangeNotifierProvider(create: (_) => OracleCodeProvider(), lazy: true),
|
|
|
|
|
],
|
|
|
|
|
child: GestureDetector(
|
|
|
|
|
onTap: () {
|
|
|
|
|
|