public IActionResult ShowBanksCard(BanksCardViewModel viewModel) { if (!ModelState.IsValid) { return(View(viewModel)); } var bankCard = _mapper.Map <BanksCard>(viewModel); _banksCardRepository.Save(bankCard); return(RedirectToAction("AddCard")); }
public IActionResult AddCard(BanksCardViewModel viewModel) { if (_currencyService.IsCardAvailability(viewModel.Card)) { var user = _userService.GetCurrent(); var bankCardNew = new BanksCard(); String startWith = "32"; Random generator = new Random(); String random = generator.Next(0, 999999).ToString("D6"); switch (viewModel.Card) { case EnumBankCard.PayCard: bankCardNew = new BanksCard() { BankAccount = new BankAccount() { Amount = 2000, Currency = Currency.BYN, Name = "Счет", Owner = user, AccountNumber = startWith + random, CreationDate = DateTime.Now }, Currency = Currency.BYN, Card = EnumBankCard.PayCard, CardUrl = "../../../image/bank/card-shopp.jpg" }; break; case EnumBankCard.valueCard: bankCardNew = new BanksCard() { BankAccount = new BankAccount() { Amount = 1000, Currency = Currency.USD, Name = "Валютный USD счет", Owner = user, AccountNumber = startWith + random, CreationDate = DateTime.Now }, Currency = Currency.USD, Card = EnumBankCard.valueCard, CardUrl = "../../../image/bank/card-mocn.jpg" }; break; case EnumBankCard.XCard: bankCardNew = new BanksCard() { BankAccount = new BankAccount() { Amount = 0, Currency = Currency.EUR, Name = "Валютный EUR счет", Owner = user, AccountNumber = startWith + random, CreationDate = DateTime.Now }, Currency = Currency.EUR, Card = EnumBankCard.XCard, CardUrl = "../../../image/bank/card-x.jpg" }; break; } bankCardNew.CreationDate = DateTime.Now; var pinCard = new Random().Next(1, 9999).ToString(format: "D4"); bankCardNew.PinCard = pinCard; bankCardNew.Owner = user; _banksCardRepository.Save(bankCardNew); return(RedirectToAction("AddCard")); } else { throw new ApplicationException("you have card"); } }