public IDataResult <SavedCreditCard> CheckTheCreditCard(SavedCreditCard savedCreditCard)
        {
            var getCardToCheck = _savedCreditCardDal.GetByUser(savedCreditCard.UserId);

            if (getCardToCheck == null)
            {
                return(new ErrorDataResult <SavedCreditCard>(getCardToCheck, Messages.NoCardForUser));
            }

            //    var cardNumberStatus = HashingHelper.VerifyCardNumberHash(paymentDto.CardNumber, getCardToCheck.CardNumberHash, getCardToCheck.CardNumberSalt);
            //    var expirationDateStatus = HashingHelper.VerifyExpirationDateHash(paymentDto.ExpirationDate, getCardToCheck.ExpirationDateHash, getCardToCheck.ExpirationDateSalt);
            //    var cvvStatus = HashingHelper.VerifyCvvHash(paymentDto.Cvv, getCardToCheck.CvvHash, getCardToCheck.CvvSalt);

            //    if (!cardNumberStatus || !expirationDateStatus || !cvvStatus)
            //    {
            //        return new ErrorDataResult<SavedCreditCard>(getCardToCheck, Messages.NoCardInSystem);
            //    }

            else
            {
                //Sequence.Equal => dizi elemanlarının içeriklerinin aynı olup olmadığını kontrol ediyor.
                var cardNumberStatus     = getCardToCheck.CardNumberHash.SequenceEqual(savedCreditCard.CardNumberHash);
                var expirationDateStatus = getCardToCheck.ExpirationDateHash.SequenceEqual(savedCreditCard.ExpirationDateHash);
                var cvvStatus            = getCardToCheck.CvvHash.SequenceEqual(savedCreditCard.CvvHash);

                if (!cardNumberStatus || !expirationDateStatus || !cvvStatus)
                {
                    return(new ErrorDataResult <SavedCreditCard>(getCardToCheck, Messages.NoCardInSystem));
                }
            }

            return(new SuccessDataResult <SavedCreditCard>(getCardToCheck, Messages.CardAlreadySaved));
        }
Example #2
0
        public IActionResult CheckTheCreditCard(SavedCreditCard savedCreditCard)
        {
            var result = _savedcreditCardService.CheckTheCreditCard(savedCreditCard);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result));
        }
Example #3
0
        public IActionResult Delete(SavedCreditCard savedCreditCard)
        {
            var result = _savedcreditCardService.Delete(savedCreditCard);

            if (result.Success)
            {
                return(Ok(result));
            }
            return(BadRequest(result));
        }
 public IResult Update(SavedCreditCard savedCreditCard)
 {
     _savedCreditCardDal.Update(savedCreditCard);
     return(new SuccessResult(Messages.CardsUpdated));
 }
 public IResult Delete(SavedCreditCard savedCreditCard)
 {
     _savedCreditCardDal.Delete(savedCreditCard);
     return(new SuccessResult(Messages.CardsDeleted));
 }
 public IDataResult <SavedCreditCard> Add(SavedCreditCard addCreditCardDto)
 {
     _savedCreditCardDal.Add(addCreditCardDto);
     return(new SuccessDataResult <SavedCreditCard>(addCreditCardDto, "Eklendi"));
 }