Ejemplo n.º 1
0
 public async Task CreateExpense(CreateExpenseRequest request)
 {
     await _expensesRepository.CreateExpense(
         request.Description, request.Amount,
         request.ExpenseCategoryId,
         request.ExpenseSubcategoryId,
         request.AccountId,
         request.CreateDate);
 }
Ejemplo n.º 2
0
        public async Task <IActionResult> PostExpenses([FromBody] Expenses expenses)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _expensesRepository.CreateExpense(expenses);
            await _expensesRepository.Save();

            return(CreatedAtAction("GetExpenses", new { id = expenses.Id }, expenses));
        }
Ejemplo n.º 3
0
 public async Task <IHttpActionResult> Post(ExpensesModel model)
 {
     try
     {
         Guid response = _repository.CreateExpense(model);
         return(Ok(response));
     }
     catch (Exception ex)
     {
         return(InternalServerError(ex));
     }
 }
Ejemplo n.º 4
0
        public IActionResult CreateExpense(ExpenseDto expenseDto)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            if (string.IsNullOrEmpty(userId))
            {
                return(Unauthorized());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var createdExpense = _expensesRepository.CreateExpense(_expensesMapper.Map(expenseDto, userId));

            return(CreatedAtAction(nameof(GetExpense), new { id = createdExpense.Id.ToString() },
                                   _expensesMapper.Map(createdExpense)));
        }
Ejemplo n.º 5
0
        public IActionResult CreateExpense(ExpenseDto expenseDto)
        {
            // BART: would probably use extensions here to get claims that are used frequently.
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);

            // BART: code duplicated a lot, would move to action filters, however all this is under authorization attribute, meaning that if userId is null there is something wrong with auth server or transform logic, probably cleaner to delete this check as it seems unnecessary.
            if (string.IsNullOrEmpty(userId))
            {
                return(Unauthorized());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var createdExpense = _expensesRepository.CreateExpense(_expensesMapper.Map(expenseDto, userId));

            return(CreatedAtAction(nameof(GetExpense), new { id = createdExpense.Id.ToString() },
                                   _expensesMapper.Map(createdExpense)));
        }
Ejemplo n.º 6
0
        public ActionResult Post(string settlementId, [FromBody] NewExpense expense)
        {
            var id = _expensesRepository.CreateExpense(settlementId, expense);

            return(Ok(id));
        }