Represents a summary of a PagSeguro transaction, typically returned by search services.
コード例 #1
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="reader"></param>
        /// <param name="transactions"></param>
        internal static void Read(XmlReader reader, IList<TransactionSummary> transactions, bool preApproval)
        {

            transactions.Clear();

            if (reader.IsEmptyElement)
            {
                XMLParserUtils.SkipNode(reader);
            }

            if (preApproval == true)
                reader.ReadStartElement(TransactionSummaryListSerializer.PreApprovals);
            else
                reader.ReadStartElement(TransactionSummaryListSerializer.Transactions);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (preApproval == true)
                {
                    if (XMLParserUtils.IsEndElement(reader, TransactionSummaryListSerializer.PreApprovals))
                    {
                        XMLParserUtils.SkipNode(reader);
                        break;
                    }
                }
                else
                {
                    if (XMLParserUtils.IsEndElement(reader, TransactionSummaryListSerializer.Transactions))
                    {
                        XMLParserUtils.SkipNode(reader);
                        break;
                    }
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    TransactionSummary transaction = new TransactionSummary();
                    switch (reader.Name)
                    {
                        case TransactionSerializerHelper.Transaction:
                            TransactionSummarySerializer.Read(reader, transaction, preApproval);
                            transactions.Add(transaction);
                            break;
                        case TransactionSerializerHelper.PreApproval:
                            TransactionSummarySerializer.Read(reader, transaction, preApproval);
                            transactions.Add(transaction);
                            break;
                        default:
                            XMLParserUtils.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    XMLParserUtils.SkipNode(reader);
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="reader"></param>
        /// <param name="transaction"></param>
        internal static void Read(XmlReader reader, TransactionSummary transaction)
        {
            if (reader.IsEmptyElement)
            {
                XMLParserUtils.SkipNode(reader);
                return;
            }

            reader.ReadStartElement(SerializerHelper.Transaction);
            reader.MoveToContent();

            while (!reader.EOF)
            {
                if (XMLParserUtils.IsEndElement(reader, SerializerHelper.Transaction))
                {
                    XMLParserUtils.SkipNode(reader);
                    break;
                }

                if (reader.NodeType == XmlNodeType.Element)
                {
                    switch (reader.Name)
                    {
                        case SerializerHelper.Code:
                            transaction.Code = reader.ReadElementContentAsString();
                            break;
                        case SerializerHelper.Date:
                            transaction.Date = reader.ReadElementContentAsDateTime();
                            break;
                        case SerializerHelper.Reference:
                            transaction.Reference = reader.ReadElementContentAsString();
                            break;
                        case SerializerHelper.TransactionType:
                            transaction.TransactionType = reader.ReadElementContentAsInt();
                            break;
                        case SerializerHelper.TransactionStatus:
                            transaction.TransactionStatus = reader.ReadElementContentAsInt();
                            break;
                        case SerializerHelper.GrossAmount:
                            transaction.GrossAmount = reader.ReadElementContentAsDecimal();
                            break;
                        case SerializerHelper.DiscountAmount:
                            transaction.DiscountAmount = reader.ReadElementContentAsDecimal();
                            break;
                        case SerializerHelper.FeeAmount:
                            transaction.FeeAmount = reader.ReadElementContentAsDecimal();
                            break;
                        case SerializerHelper.NetAmount:
                            transaction.NetAmount = reader.ReadElementContentAsDecimal();
                            break;
                        case SerializerHelper.ExtraAmount:
                            transaction.ExtraAmount = reader.ReadElementContentAsDecimal();
                            break;
                        case SerializerHelper.LastEventDate:
                            transaction.LastEventDate = reader.ReadElementContentAsDateTime();
                            break;
                        case PaymentMethodSerializer.PaymentMethod:
                            PaymentMethod paymentMethod = new PaymentMethod();
                            PaymentMethodSerializer.Read(reader, paymentMethod);
                            transaction.PaymentMethod = paymentMethod;
                            break;
                        default:
                            XMLParserUtils.SkipElement(reader);
                            break;
                    }
                }
                else
                {
                    XMLParserUtils.SkipNode(reader);
                }
            }
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: Japle/dotnet
        static void TransactionSummaryExample(TransactionSummary transactionSummary)
        {
            // Data da criação
            DateTime date = transactionSummary.Date;

            // Data da última atualização
            DateTime lastEventDate = transactionSummary.LastEventDate;

            // Código da transação
            string code = transactionSummary.Code;

            // Refência
            string reference = transactionSummary.Reference;

            // Valor bruto
            decimal grossAmount = transactionSummary.GrossAmount;

            // Tipo
            int type = transactionSummary.TransactionType;

            // Status
            int status = transactionSummary.TransactionStatus;

            // Valor líquido
            decimal netAmount = transactionSummary.NetAmount;

            // Valor das taxas cobradas
            decimal feeAmount = transactionSummary.FeeAmount;

            // Valor extra ou desconto
            decimal extraAmount = transactionSummary.ExtraAmount;

            // Tipo de meio de pagamento
            PaymentMethod paymentMethod = transactionSummary.PaymentMethod;
        }