Exemplo n.º 1
0
        public async Task <ActionResult <TrainerCardUpdateDTO> > UpdateTrainerCard([FromBody] TrainerCardUpdateDTO card, [FromQuery] bool isDeactivating = false)
        {
            try
            {
                var returnedCard = await _cardService.UpdateTrainerCard(card, isDeactivating);

                return(Ok(returnedCard));
            }
            catch (ArgumentNullException exception)
            {
                return(NotFound(exception.Message));
            }
            catch (Exception exception)
            {
                return(BadRequest(exception.Message));
            }
        }
Exemplo n.º 2
0
        public async Task <TrainerCardUpdateDTO> UpdateTrainerCard(TrainerCardUpdateDTO card, bool isDeactivating)
        {
            var mappedCard = _mapper.Map <TrainerCard>(card);

            if (!isDeactivating)
            {
                if (!card.UnlimitedValidityPeriod)
                {
                    mappedCard.ExpirationDate = mappedCard.PurchaseDate.AddDays(card.ValidityPeriod);
                }
            }
            else
            {
                mappedCard.ExpirationDate = DateTime.Now;
            }
            var returnedCard = await _cardRepository.UpdateTrainerCard(mappedCard);

            return(_mapper.Map <TrainerCardUpdateDTO>(returnedCard));
        }