public override bool Equals(object obj) { CreditCardDetails target = (CreditCardDetails)obj; return((this.CardType == CardType) && (this.cardNumber == cardNumber) && (this.VerificationCode == VerificationCode) && (this.ExpirationDate == ExpirationDate) && (this.DefaultCard == DefaultCard) && (this.userId == userId)); }
/// <summary> /// Add a Credit Card /// </summary> /// <param creditCardId="creditCardId">creditCardId</param> /// <param creditCardDetails="creditCardDetails">creditCardDetails</param> /// <returns> void </returns> public long AddCreditCard(CreditCardDetails creditCardDetails) { CreditCard creditCard = new CreditCard(); try { creditCardDao.FindByNumber(creditCardDetails.cardNumber); throw new DuplicateInstanceException(creditCardDetails.cardNumber, typeof(CreditCard).FullName); } catch (InstanceNotFoundException) { creditCard.cardType = creditCardDetails.CardType; creditCard.cardNumber = creditCardDetails.cardNumber; creditCard.verificationCode = creditCardDetails.VerificationCode; creditCard.expirationDate = creditCardDetails.ExpirationDate; creditCard.defaultCard = creditCardDetails.DefaultCard; creditCard.userId = creditCardDetails.userId; creditCardDao.Create(creditCard); return(creditCard.cardId); } }
/// <summary> /// update the data of a creditCard /// </summary> /// <param creditCardId="creditCardId">creditCardId</param> /// <param creditCardDetails="creditCardDetails">creditCardDetails</param> /// <returns> void </returns> /// <exception cref="InstanceNotFoundException"/> public void UpdateCreditCard(long creditCardId, CreditCardDetails creditCardDetails) { CreditCard creditCard = creditCardDao.Find(creditCardId); if (!creditCard.cardNumber.Equals(creditCardDetails.cardNumber)) { try { creditCardDao.FindByNumber(creditCardDetails.cardNumber); throw new DuplicateInstanceException(creditCardDetails.cardNumber, typeof(CreditCard).FullName); } catch (InstanceNotFoundException) { creditCard.cardType = creditCardDetails.CardType; creditCard.cardNumber = creditCardDetails.cardNumber; creditCard.verificationCode = creditCardDetails.VerificationCode; creditCard.expirationDate = creditCardDetails.ExpirationDate; creditCard.defaultCard = creditCardDetails.DefaultCard; creditCard.userId = creditCardDetails.userId; creditCardDao.Update(creditCard); } } else { creditCard.cardType = creditCardDetails.CardType; creditCard.cardNumber = creditCardDetails.cardNumber; creditCard.verificationCode = creditCardDetails.VerificationCode; creditCard.defaultCard = creditCardDetails.DefaultCard; creditCard.expirationDate = creditCardDetails.ExpirationDate; creditCard.userId = creditCardDetails.userId; creditCardDao.Update(creditCard); } }