private async Task InitializeViewModels() { var sessionInfo = await FormsApp.GetSessionTokenAndMerchantGuid(); if (!string.IsNullOrWhiteSpace(sessionInfo.Email)) { DependencyService.Get <IIntercom>().RegisterLoggedInUser(sessionInfo.Email); await _navigationService.Navigate <MenuViewModel>(); await _navigationService.Navigate <TabbedHomeViewModel>(); } }
private async void RedirectIfNecessary() { var sessionInfo = await FormsApp.GetSessionTokenAndMerchantGuid(); if (sessionInfo == null || string.IsNullOrEmpty(sessionInfo.SessionToken) || sessionInfo.MerchantGuid == null || sessionInfo.MerchantGuid == Guid.Empty) { await _navigationService.Navigate <LoginViewModel>(); } else { var verifyResponse = await _sessionAuthService.Get(sessionInfo.SessionToken); if (verifyResponse.Data == null || !verifyResponse.Data.Any(m => m.MerchantGuid == sessionInfo.MerchantGuid)) { await _navigationService.Navigate <LoginViewModel>(); } } }
private async Task SearchCustomers() { if (!string.IsNullOrEmpty(_searchTerm)) { Loading = true; ShowNoCustomerWarning = false; var sessionInfo = await FormsApp.GetSessionTokenAndMerchantGuid(); var customerResponse = await _customerService.Get(sessionInfo.MerchantGuid, sessionInfo.SessionToken, _searchTerm); if (customerResponse.IsSuccessful && customerResponse.Data.Customers != null) { Customers = customerResponse.Data.Customers.Select(c => Mapper.Map <Customer.Customer>(c)).ToList(); if (Customers.Count == 0) { ShowNoCustomerWarning = true; } } Loading = false; } }
public override async void Start() { base.Start(); Loading = true; var sessionInfo = await FormsApp.GetSessionTokenAndMerchantGuid(); var response = await _merchantStateService.Get(sessionInfo.MerchantGuid, sessionInfo.SessionToken); if (response.IsSuccessful) { var employees = response.Data.Employees.Select(e => Mapper.Map <Data.Employee>(e)); var services = response.Data.Services.Select(s => Mapper.Map <Data.Service>(s)); var masterClasses = response.Data.Events.Select(e => Mapper.Map <Data.MasterClass>(e)); var masterSchedules = response.Data.Schedules.Select(s => Mapper.Map <Data.MasterSchedule>(s)); var locations = response.Data.Locations.Select(l => Mapper.Map <Data.Location>(l)); FormsApp.MerchantFieldRules = response.Data.FieldRules; await FormsApp.Database.Employees.RemoveAll(); await FormsApp.Database.Employees.CreateManyAsync(employees); await FormsApp.Database.Services.RemoveAll(); await FormsApp.Database.Services.CreateManyAsync(services); await FormsApp.Database.MasterClasses.RemoveAll(); await FormsApp.Database.MasterClasses.CreateManyAsync(masterClasses); await FormsApp.Database.MasterSchedules.RemoveAll(); await FormsApp.Database.MasterSchedules.CreateManyAsync(masterSchedules); await FormsApp.Database.Locations.RemoveAll(); await FormsApp.Database.Locations.CreateManyAsync(locations); } Loading = false; }