public AddLogEntryView() { InitializeComponent(); DataContext = AddLogEntryViewModel.GetInstance(); }
async void HandleUpdateItemsClicked(object sender, System.EventArgs e) { var selectedLocation = viewModel.SelectedLocation; var locationMode = viewModel.LocationMode; var logMode = viewModel.LogMode; var statusMode = viewModel.StatusMode; if (logMode) { if (String.IsNullOrEmpty(viewModel.LogEntry)) { DisplayMissingInputAlert("Log Entry"); return; } } else if (statusMode) { if (String.IsNullOrEmpty(viewModel.StatusEntry)) { DisplayMissingInputAlert("Status"); return; } } List <int?> idUpdatedList = new List <int?>(); foreach (var item in viewModel.UpdatableItemList) { idUpdatedList.Add(item.Item.Id); try { if (locationMode) { if (item.Item.Domain.Name.Equals(Constants.locationDomainName)) { item.UpdateLocationParent(selectedLocation); } else { var locInfo = item.LoadItemLocationInformation(); ItemDomainLocation locationItem = null; if (selectedLocation != null) { locationItem = new ItemDomainLocation { Id = selectedLocation.Id }; } locInfo.LocationItem = locationItem; locInfo.LocationDetails = viewModel.LocationDetails; item.UpdateItemLocation(); } } else if (logMode) { int itemId = (int)item.Item.Id; AddLogEntryViewModel logEntryModel = new AddLogEntryViewModel(itemId) { LogEntry = viewModel.LogEntry }; await logEntryModel.AddLogEntryForItemAsync(); } else if (statusMode) { await item.UpdateItemStatusAsync(viewModel.StatusEntry); } } catch (Exception ex) { HandleException(ex); return; } } // Reload all items viewModel.ClearItems(); foreach (var id in idUpdatedList) { await viewModel.AddItemByIdAsync(id); } viewModel.SelectedLocation = null; viewModel.LocationDetails = ""; viewModel.LogEntry = ""; viewModel.StatusEntry = ""; await DisplayAlert("Update Complete", "Items have been updated", "OK"); }
public AddLogEntryPage(int ItemId) { InitializeComponent(); BindingContext = viewModel = new AddLogEntryViewModel(ItemId); }