private static CreditCardTransaction GenerateCardTransaction(AmexCardTransaction transaction, DateTime debitDate) { return(new CreditCardTransaction { Id = !String.IsNullOrEmpty(transaction.DealsInbound)? transaction.VoucherNumberRatz : transaction.VoucherNumberRatzOutbound, DealDate = !String.IsNullOrEmpty(transaction.DealsInbound) ? AutoMapper.Mapper.Map <DateTime>(transaction.FullPurchaseDate) : AutoMapper.Mapper.Map <DateTime>(transaction.FullPurchaseDateOutbound), DealAmount = !String.IsNullOrEmpty(transaction.DealsInbound) ? Convert.ToDecimal(transaction.DealSum) : Convert.ToDecimal(transaction.DealSumOutbound), DealCurrency = !String.IsNullOrEmpty(transaction.DealsInbound) ? transaction.CurrencyId : transaction.CurrentPaymentCurrency, PaymentDate = transaction.PaymentSum == transaction.DealSum ? !String.IsNullOrEmpty(transaction.DealsInbound) ? AutoMapper.Mapper.Map <DateTime>(transaction.FullPurchaseDate) : AutoMapper.Mapper.Map <DateTime>(transaction.FullPaymentDate) : AutoMapper.Mapper.Map <DateTime>(debitDate), PaymentAmount = !String.IsNullOrEmpty(transaction.DealsInbound) ? Convert.ToDecimal(transaction.PaymentSum) : Convert.ToDecimal(transaction.PaymentSumOutbound), PaymentCurrency = transaction.CurrencyId, Description = !String.IsNullOrEmpty(transaction.DealsInbound) ? transaction.SupplierName : transaction.SupplierNameOutbound, Notes = transaction.MoreInfo }); }
private static CreditCardDebitPeriod GenerateDebitPeriodForTransaction(AmexCardInfo card, CreditCardDebitPeriod debit, AmexCardTransaction transaction) { return(new CreditCardDebitPeriod { CardId = GenerateCardId(card), CardLastDigits = card.CardNumber, Date = debit.Date, Amount = String.IsNullOrEmpty(transaction.DealSumOutbound) ? Convert.ToDecimal(transaction.PaymentSum) : Convert.ToDecimal(transaction.DealSumOutbound), Transactions = new List <CreditCardTransaction>() }); }