public TalukDetailsViewModel(ITalukService talukService, IFilePickerService filePickerService, ICommonServices commonServices, TalukListViewModel talukListViewModel, TalukViewModel talukViewModel) : base(commonServices) { TalukService = talukService; FilePickerService = filePickerService; TalukListViewModel = talukListViewModel; TalukViewModel = talukViewModel; }
protected override async Task <bool> DeleteItemAsync(TalukModel model) { try { StartStatusMessage("Deleting Taluk..."); TalukViewModel.ShowProgressRing(); var result = await TalukService.DeleteTalukAsync(model); if (!result.IsOk) { await DialogService.ShowAsync(result.Message, ""); EndStatusMessage("Taluk is deleted"); return(true); } ClearItem(); await TalukListViewModel.RefreshAsync(); ShowPopup("success", "Taluk is deleted"); EndStatusMessage("Taluk deleted"); LogWarning("Taluk", "Delete", "Taluk deleted", $"Taluk {model.TalukId} '{model.TalukName}' was deleted."); return(true); } catch (Exception ex) { ShowPopup("error", "Taluk is not deleted"); StatusError($"Error deleting Taluk: {ex.Message}"); LogException("Taluk", "Delete", ex); return(false); } finally { TalukViewModel.HideProgressRing(); } }
//public ExpenseHeadDetailsArgs CreateArgs() //{ // return new ExpenseHeadDetailsArgs // { // ExpenseHeadId = Item?.ExpenseHeadId ?? 0 // }; //} protected override async Task <bool> SaveItemAsync(TalukModel model) { try { if (IsProcessing) { return(false); } IsProcessing = true; StartStatusMessage("Saving Taluk..."); TalukViewModel.ShowProgressRing(); if (model.TalukId <= 0) { await TalukService.AddTalukAsync(model); } else { await TalukService.UpdateTalukAsync(model); } ClearItem(); IsProcessing = false; ShowPopup("success", "Taluk is Saved"); EndStatusMessage("Taluk saved"); LogInformation("Taluk", "Save", "Taluk saved successfully", $"Taluk {model.TalukName} '{model.TalukName}' was saved successfully."); await TalukListViewModel.RefreshAsync(); return(true); } catch (Exception ex) { IsProcessing = false; ShowPopup("error", "Taluk is not Saved"); StatusError($"Error saving Taluk: {ex.Message}"); LogException("Taluk", "Save", ex); return(false); } finally { TalukViewModel.HideProgressRing(); } }
private async void OnListMessage(TalukListViewModel sender, string message, object args) { var current = Item; if (current != null) { switch (message) { case "ItemsDeleted": if (args is IList <TalukModel> deletedModels) { if (deletedModels.Any(r => r.TalukId == current.TalukId)) { await OnItemDeletedExternally(); } } break; case "ItemRangesDeleted": try { var model = await TalukService.GetTalukAsync(current.TalukId); if (model == null) { await OnItemDeletedExternally(); } } catch (Exception ex) { LogException("Taluk", "Handle Ranges Deleted", ex); } break; } } }