public OperationResult Save(MonthlyExpenseModel model) { using (var monthlyExpenseRepository = repositoryFactory.CreateMonthlyExpenseRepository()) { var user = userSessionService.GetAuthenticatedUser(); var entity = monthlyExpenseRepository.GetById(model.Id); if (entity == null) { entity = monthlyExpenseMapper.ToEntity(model); entity.UserId = user.Id; monthlyExpenseRepository.Add(entity); } else { if (!user.Id.Equals(entity.Id)) { return(OperationResult.Error("Not allowed")); } monthlyExpenseRepository.Update(entity); } monthlyExpenseRepository.Commit(); return(OperationResult.Succeed()); } }
public async Task <bool> CreateMonthlyExpense(MonthlyExpenseModel request) { var entity = _mapper.Map <MonthlyExpense>(request); await _midasContext.MonthlyExpense.AddAsync(entity); return(await _midasContext.SaveChangesAsync() == 1); }
public async Task <int> AddMonthlyExpenseToBudgetBoard(MonthlyExpenseModel request) { var entity = _mapper.Map <MonthlyExpense>(request); await _midasContext.MonthlyExpense.AddAsync(entity); await _midasContext.SaveChangesAsync(); return(entity.MonthlyExpenseId); }
public IActionResult Post([FromBody] MonthlyExpenseModel model) { if (ModelState.IsValid) { var result = MonthlyExpenseService.Save(model); if (result.IsSuccess) { return(Ok()); } } return(BadRequest()); }
public async Task <IActionResult> Create(MonthlyExpenseModel request) { try { var result = await _monthlyExpenseService.CreateMonthlyExpense(request); return(RedirectToAction(nameof(Index))); } catch (Exception e) { ModelState.AddModelError("", e.Message); return(View(request)); } }
public async Task <IActionResult> AddExpense(BudgetBoardDetailDTO request) { try { // TODO: Add insert logic here var expense = new MonthlyExpenseModel { BillName = request.MonthlyExpenseModel.BillName, BillAmount = request.MonthlyExpenseModel.BillAmount }; var expenseId = await _monthlyExpenseService.AddMonthlyExpenseToBudgetBoard(expense); var result = await _budgetBoardService.BoardExpenseTransaction(request.BudgetBoardId, expenseId); return(RedirectToAction("Details", new { id = request.BudgetBoardId })); } catch (Exception e) { ModelState.AddModelError("", e.Message); return(View(request)); } }