コード例 #1
0
        public IActionResult Post([FromBody] CardDto value)
        {
            if (value == null)
            {
                throw new UserDataException("Card data is null", null);
            }

            _businessLogicServer.ValidateOpenCardDto(value);

            if (string.IsNullOrWhiteSpace(value.Name))
            {
                throw new UserDataException("Short name of the card is invalid", value.Name);
            }

            var card = _repository.OpenNewCard(value.Name, (Currency)value.Currency, (CardType)value.Type);

            return(Created($"/api/cards/{card.CardNumber}", new CardDto
            {
                Number = card.CardNumber,
                Type = (int)card.CardType,
                Name = card.CardName,
                Currency = (int)card.Currency,
                Exp = _cardService.GetExpDateFromDateTime(card.DTOpenCard, card.ValidityYear),
                Balance = _businessLogicServer.GetRoundBalanceOfCard(card)
            }));
        }