Ejemplo n.º 1
0
        public async Task <IActionResult> PutAsync([FromBody] SaveTransactionResource resource)
        {
            var transactions = _mapper.Map <IList <TransactionResource>, IList <Transaction> >(resource.Transactions);
            var result       = await _transactionService.SaveAsync(resource.PlayerId, transactions);

            if (!result.Success)
            {
                return(BadRequest(new ErrorResource(result.Message)));
            }

            return(Ok(result.Resource));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> CreateTransaction([FromBody] SaveTransactionResource newTransaction)
        {
            var transactionInDb = newTransaction.ToData();

            transactionInDb.UserName  = User.Identity.Name;
            transactionInDb.TimeStamp = DateTime.Now;

            await _transactionRepository.AddAsync(transactionInDb);

            await _unitOfWork.CompleteAsync();

            return(Ok(KidResource.FromData(await _kidRepository.GetKidAsync(newTransaction.KidId, includeRelated: true), includeRelated: true)));
        }
        public async Task <IActionResult> PutAsync(int transactionId, [FromBody] SaveTransactionResource resource)
        {
            var transaction = _mapper.Map <SaveTransactionResource, Transaction>(resource);
            var result      = await _transactionService.UpdateAsync(transactionId, transaction);

            if (!result.Success)
            {
                return(BadRequest(new ErrorResource(result.Message)));
            }

            var transactionResource = _mapper.Map <Transaction, TransactionResource>(result.Transaction);

            return(Ok(transactionResource));
        }
Ejemplo n.º 4
0
        public async Task <ActionResult> AddTransaction(int id, [FromBody] SaveTransactionResource transaction)
        {
            var kidInDb = await _kidRepository.GetKidAsync(id, includeRelated : true);

            if (kidInDb == null)
            {
                return(NotFound());
            }

            _kidRepository.AddTransaction(kidInDb, transaction.Type, transaction.Amount, User.Identity.Name);

            await _unitOfWork.CompleteAsync();

            return(Ok());
        }