예제 #1
0
 private void ValidaDadosClienteEmissaoCartao(CartaoCreditoCobranca cartaoCreditoCobranca)
 {
     if (!cartaoCreditoCobranca && Cobranca.FormaPagamentoCartao)
     {
         throw new CobrancasComCartaoDevemPossuirClienteComCartaoCreditoVinculadoException(Cobranca, this);
     }
 }
예제 #2
0
 public static Cobranca Cartao(
     string decricao, decimal valor, DateTime vencimento, string configuracaoEmissaoId, string nomeCliente,
     string cpfCnpjCliente, string emailCliente, Telefone telefoneCliente,
     CartaoCreditoCobranca cartaoCreditoCliente, Endereco enderecoCliente = null, string tenantIdCliente = null)
 => new Cobranca(decricao, valor, vencimento, configuracaoEmissaoId,
                 Transacao.Cartao(), nomeCliente, cpfCnpjCliente, emailCliente,
                 telefoneCliente, enderecoCliente, tenantIdCliente, cartaoCreditoCliente);
예제 #3
0
        public ClienteCobranca AlterarCartaoCredito(CartaoCreditoCobranca cartaoCreditoCobranca)
        {
            ValidaAlteracaoCliente();

            if (Cobranca.FormaPagamentoBoleto)
            {
                throw new CobrancaBoletoNaoDeveConterCartaoNoClienteException();
            }

            CartaoCreditoCobranca = cartaoCreditoCobranca;
            return(this);
        }
예제 #4
0
 private Cobranca(string decricao, decimal valor, DateTime vencimento, string configuracaoEmissaoId,
                  Transacao transacao, string nomeCliente, string cpfCnpjCliente, string emailCliente, Telefone telefoneCliente,
                  Endereco enderecoCliente, string tenantIdCliente, CartaoCreditoCobranca cartaoCreditoCobranca = null)
 {
     Descricao             = decricao;
     Valor                 = valor;
     Vencimento            = vencimento;
     ConfiguracaoEmissaoId = configuracaoEmissaoId;
     Transacao             = transacao;
     ClienteCobranca       = new ClienteCobranca(this, nomeCliente, cpfCnpjCliente, emailCliente, tenantIdCliente, telefoneCliente, enderecoCliente, cartaoCreditoCobranca);
     AddEvent(new CobrancaCriadaEvent(Id.ToString()));
 }
예제 #5
0
        public ClienteCobranca(Cobranca cobranca, string nome, string cpfCnpj,
                               string email, string tenantId, Telefone telefone,
                               Endereco endereco, CartaoCreditoCobranca cartaoCreditoCobranca)
        {
            TenantId = tenantId;
            Nome     = nome;
            CpfCnpj  = cpfCnpj;
            Email    = email;
            Telefone = telefone;
            Cobranca = cobranca;
            CartaoCreditoCobranca = cartaoCreditoCobranca;
            Endereco = endereco;

            ValidaDadosClienteEmissaoCartao(cartaoCreditoCobranca);
            ValidaDadosClienteEmissaoBoleto();
        }