public PlannedExpenseViewModel() { PlannedexpRep = new PlannedExpenseRepository(); catRep = new CategoryRepository(); CategoryList = new ObservableCollection <Category>(); Repeatability = new ObservableCollection <String>(); var iList = catRep.GetCategoriesAsync(); foreach (Category i in iList.Result) { CategoryList.Add(i); } Repeatability.Add("Codziennie"); Repeatability.Add("Co tydzień"); Repeatability.Add("Co miesiąc"); SavePlannedExpenseCommand = new Command(async() => { var plannedExpense = new PlannedExpense(); plannedExpense.Description = TheDescription; plannedExpense.Value = Convert.ToDouble(TheValue); plannedExpense.StartDate = TheStartDate; plannedExpense.NextExpenseDate = TheStartDate; plannedExpense.EndDate = TheEndDate; plannedExpense.CategoryId = CategoryId + 1; plannedExpense.Repeatability = RepeatabilityId + 1; await PlannedexpRep.SavePlannedExpAsync(plannedExpense); TheDescription = string.Empty; TheValue = "0"; CategoryId = -1; }); }
async void OnItemTapped(object sender, ItemTappedEventArgs e) { PlannedExpense tappedExpenseItem = e.Item as PlannedExpense; var PlannedExpenseVM = new PlannedExpenseViewModel(tappedExpenseItem); var plannedExpense = new AddPlannedExpenseView(); plannedExpense.BindingContext = PlannedExpenseVM; await Navigation.PushAsync(plannedExpense); }
public async Task <bool> UpdatePlannedExpenseAsync(PlannedExpense plannedExpense) { if (plannedExpense == null) { return(false); } _dataContext.PlannedExpenses.Update(plannedExpense); var updated = await _dataContext.SaveChangesAsync(); return(updated > 0); }
public Task SavePlannedExpAsync(PlannedExpense plannedExpense) { if (plannedExpense.ID != 0) { return(_database.UpdateAsync(plannedExpense)); } else { return(_database.InsertAsync(plannedExpense)); } }
public async Task <IActionResult> UpdatePlannedExpense(int?plannedExpenseId) { if (plannedExpenseId == null) { return(NotFound()); } PlannedExpense plannedExpense = await _budgetService.GetPlannedExpenseByIdAsync((int)plannedExpenseId); if (plannedExpense == null) { return(NotFound()); } return(View(plannedExpense)); }
public async Task <IActionResult> UpdatePlannedExpense([Bind("Id,Amount,Kind,Date,IsPaid,PaidDate,BudgetId")] PlannedExpense plannedExpense) { if (ModelState.IsValid) { try { if ((plannedExpense.IsPaid && plannedExpense.PaidDate == null) || (plannedExpense.IsPaid == false && plannedExpense.PaidDate != null)) { return(View(plannedExpense)); } await _budgetService.UpdatePlannedExpenseAsync(plannedExpense); return(RedirectToAction("Details", "Budget", new { budgetId = plannedExpense.BudgetId })); } catch (Exception) { return(NotFound()); } } return(View(plannedExpense)); }
public async Task <IActionResult> CreatePlannedExpense(int budgetId, [Bind("Id,Amount,Kind,Date,IsPaid,PaidDate")] PlannedExpense plannedExpense) { if (ModelState.IsValid) { try { plannedExpense.Amount = (decimal)plannedExpense.Amount; if (!plannedExpense.IsPaid) { plannedExpense.PaidDate = null; } await _budgetService.CreateBudgetExpenseAsync(budgetId, plannedExpense); return(RedirectToAction("Details", "Budget", new { budgetId = budgetId })); } catch (Exception) { return(NotFound()); } } return(View(plannedExpense)); }
public async Task <bool> CreateBudgetExpenseAsync(int budgetId, PlannedExpense plannedExpense) { if (plannedExpense == null) { return(false); } var created = 0; using (var trans = await _dataContext.Database.BeginTransactionAsync()) { var budget = _dataContext.Budgets.FirstOrDefault(x => x.Id == budgetId); plannedExpense.Budget = budget; _dataContext.PlannedExpenses.Add(plannedExpense); budget.Expenses.Add(plannedExpense); created = await _dataContext.SaveChangesAsync(); trans.Commit(); } return(created > 0); }
private void CreatePlannedExpensesForNewDetailedCategories(int mainCatId, DateTime date) { var newPlannedExpenses = new List <PlannedExpense>(); var detCategories = _detailedCRepo.GetDetailedCategoriesOfMainCategory(mainCatId); foreach (var detCategory in detCategories) { var plannedExpense = _plannedExpenseRepo.GetPlannedExpenseOfDetailedCat(detCategory.Id, date); if (plannedExpense == null) { PlannedExpense newPlannedExp = new PlannedExpense() { Amount = 0, MonthOfYear = date, DetailedCategoryId = detCategory.Id }; newPlannedExpenses.Add(newPlannedExp); } } if (newPlannedExpenses.Count != 0) { _plannedExpenseRepo.AddPlannedExpenses(newPlannedExpenses); } }
public void UpdatePlannedExpense(PlannedExpense plannedExpense) { _context.Attach(plannedExpense); _context.Entry(plannedExpense).Property("Amount").IsModified = true; _context.SaveChanges(); }
public Task DeletePlannedExpAsync(PlannedExpense plannedExpense) { return(_database.DeleteAsync(plannedExpense)); }