Exemplo n.º 1
0
        public AgendamentoSaida(Agendamento agendamento)
        {
            if (agendamento == null)
            {
                return;
            }

            this.Id = agendamento.Id;
            this.CodigoTipoMetodoPagamento    = agendamento.TipoMetodoPagamento;
            this.DescricaoTipoMetodoPagamento = agendamento.TipoMetodoPagamento.ObterDescricao();
            this.Observacao                 = agendamento.Observacao;
            this.Conta                      = agendamento.IdConta.HasValue ? new ContaSaida(agendamento.Conta) : null;
            this.CartaoCredito              = agendamento.IdCartaoCredito.HasValue ? new CartaoCreditoSaida(agendamento.CartaoCredito) : null;
            this.Pessoa                     = agendamento.IdPessoa.HasValue ? new PessoaSaida(agendamento.Pessoa) : null;
            this.Categoria                  = new CategoriaSaida(agendamento.Categoria);
            this.Parcelas                   = agendamento.Parcelas.Select(x => new ParcelaSaida(x));
            this.DataProximaParcelaAberta   = agendamento.ObterDataProximaParcelaAberta();
            this.ValorProximaParcelaAberta  = agendamento.ObterValorProximaParcelaAberta();
            this.DataUltimaParcelaAberta    = agendamento.ObterDataUltimaParcelaAberta();
            this.QuantidadeParcelas         = agendamento.ObterQuantidadeParcelas();
            this.QuantidadeParcelasAbertas  = agendamento.ObterQuantidadeParcelasAbertas();
            this.QuantidadeParcelasFechadas = agendamento.ObterQuantidadeParcelasFechadas();
            this.Concluido                  = agendamento.VerificarSeConcluido();
            this.ValorTotal                 = agendamento.ObterValorTotal();
            this.PercentualConclusao        = agendamento.ObterPercentualConclusao();
        }