Example #1
0
 public LancamentoCobrancaViewModel(LancamentoCobranca lancamentoCobranca)
 {
     Id                       = lancamentoCobranca.Id;
     DataInsercao             = lancamentoCobranca.DataInsercao;
     ContaFinanceira          = lancamentoCobranca?.ContaFinanceira != null ? new ContaFinanceiraViewModel(lancamentoCobranca.ContaFinanceira) : new ContaFinanceiraViewModel();
     Cliente                  = lancamentoCobranca.Cliente != null && lancamentoCobranca.Cliente.Id > 0 ? new ClienteViewModel(lancamentoCobranca?.Cliente) : null;
     Unidade                  = lancamentoCobranca?.Unidade != null ? new UnidadeViewModel(lancamentoCobranca.Unidade) : new UnidadeViewModel();
     DataGeracao              = lancamentoCobranca.DataGeracao;
     DataVencimento           = lancamentoCobranca.DataVencimento;
     DataCompetencia          = lancamentoCobranca.DataCompetencia.HasValue ? lancamentoCobranca.DataCompetencia : new DateTime(lancamentoCobranca.DataVencimento.Year, lancamentoCobranca.DataVencimento.Month, 1);
     DataBaixa                = lancamentoCobranca.DataBaixa;
     ValorContrato            = lancamentoCobranca.ValorContrato.ToString("0.00");
     TipoValorMulta           = lancamentoCobranca.TipoValorMulta;
     ValorMulta               = lancamentoCobranca.ValorMulta.ToString("0.00");
     TipoValorJuros           = lancamentoCobranca.TipoValorJuros;
     ValorJuros               = lancamentoCobranca.ValorJuros.ToString("0.00");
     ValorRecebido            = lancamentoCobranca.ValorRecebido;
     TipoServico              = lancamentoCobranca.TipoServico;
     StatusLancamentoCobranca = lancamentoCobranca.StatusLancamentoCobranca;
     CiaSeguro                = lancamentoCobranca.CiaSeguro;
     ValorTotal               = lancamentoCobranca.ValorTotal.ToString();
     ValorTotalPago           = (lancamentoCobranca.Recebimento?.Pagamentos?.Sum(x => x.ValorPago) ?? 0).ToString("C2");
     DataUltimoPagamento      = lancamentoCobranca?.Recebimento?.Pagamentos.LastOrDefault()?.DataPagamento;
     NumeroRecibo             = lancamentoCobranca?.Recebimento?.Pagamentos.LastOrDefault()?.NumeroRecibo;
     NumeroContratoOuRegistro = lancamentoCobranca?.NumerosContratos;
     PossueCnab               = lancamentoCobranca.PossueCnab;
     Observacao               = lancamentoCobranca.Observacao;
 }
        public BaixaManualViewModel(LancamentoCobranca lancamentoCobranca)
        {
            Id                       = lancamentoCobranca.Id;
            DataInsercao             = lancamentoCobranca.DataInsercao;
            DataVencimento           = lancamentoCobranca.DataVencimento;
            DataCompetencia          = lancamentoCobranca.DataCompetencia;
            StatusLancamentoCobranca = lancamentoCobranca.StatusLancamentoCobranca;
            DataBaixa                = lancamentoCobranca.DataBaixa;
            ValorContrato            = lancamentoCobranca.ValorContrato;
            ValorMulta               = lancamentoCobranca.ValorMulta;
            ValorJuros               = lancamentoCobranca.ValorJuros;
            ValorAReceber            = lancamentoCobranca.ValorAReceber;
            ValorRecebido            = lancamentoCobranca.ValorRecebido;
            ValorTotal               = lancamentoCobranca.ValorTotal;

            ContaFinanceira = new ContaFinanceiraViewModel(lancamentoCobranca?.ContaFinanceira) ?? new ContaFinanceiraViewModel();
            Cliente         = new ClienteViewModel(lancamentoCobranca?.Cliente) ?? new ClienteViewModel();

            TipoServico = lancamentoCobranca.TipoServico;
        }
Example #3
0
        public GeracaoCNABLancamentoCobrancaViewModel(LancamentoCobranca lancamentoCobranca)
        {
            Id              = lancamentoCobranca.Id;
            DataInsercao    = lancamentoCobranca.DataInsercao;
            DataGeracao     = lancamentoCobranca.DataGeracao;
            DataVencimento  = lancamentoCobranca.DataVencimento;
            DataCompetencia = lancamentoCobranca.DataCompetencia;
            DataBaixa       = lancamentoCobranca.DataBaixa;
            ValorContrato   = lancamentoCobranca.ValorContrato;
            ValorMulta      = lancamentoCobranca.ValorMulta;
            ValorJuros      = lancamentoCobranca.ValorJuros;
            ValorAReceber   = lancamentoCobranca.ValorAReceber;
            ValorRecebido   = lancamentoCobranca.ValorRecebido;
            ValorTotal      = lancamentoCobranca.ValorTotal;

            Banco           = new BancoViewModel(lancamentoCobranca?.ContaFinanceira?.Banco) ?? new BancoViewModel();
            ContaFinanceira = new ContaFinanceiraViewModel(lancamentoCobranca?.ContaFinanceira) ?? new ContaFinanceiraViewModel();
            Cliente         = new ClienteViewModel(lancamentoCobranca?.Cliente) ?? new ClienteViewModel();
            Unidade         = new UnidadeViewModel(lancamentoCobranca?.Unidade) ?? new UnidadeViewModel();

            TipoServico = lancamentoCobranca.TipoServico;
        }
Example #4
0
        public HttpResponseMessage MonthlyPayments([FromBody] PagamentoMensalidadeSoftparkViewModel pagamentoMensalidadeVM)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.ErrorMessage));

                    if (string.IsNullOrEmpty(JsonResult.Message))
                    {
                        JsonResult.Message = String.Join(" ", ModelState.Values.SelectMany(value => value.Errors).Select(x => x.Exception.Message));
                    }

                    return(Request.CreateResponse(HttpStatusCode.PreconditionFailed, JsonResult));
                }

                var cliente = pagamentoMensalidadeVM.Condutor.ERPId.HasValue ? _clienteAplicacao.BuscarPorId(pagamentoMensalidadeVM.Condutor.ERPId.Value) : null;
                if (cliente == null)
                {
                    cliente = pagamentoMensalidadeVM.Condutor.ToCliente(null);
                }

                if (cliente.Id == 0)
                {
                    cliente = _clienteAplicacao.SalvarComRetorno(cliente);
                }

                var unidade = _unidadeAplicacao.BuscarPorId(pagamentoMensalidadeVM.Estacionamento.Id);

                var mensagemDeErro = Validar(pagamentoMensalidadeVM, cliente, unidade);
                if (mensagemDeErro != null)
                {
                    return(mensagemDeErro);
                }

                var lancamentoCobranca = _lancamentoCobrancaAplicacao
                                         .PrimeiroPor(x => x.Cliente.Id == cliente.Id &&
                                                      x.DataVencimento > SqlDateTime.MinValue.Value && x.DataVencimento.Date == pagamentoMensalidadeVM.DataValidade.Date);

                if (lancamentoCobranca == null)
                {
                    lancamentoCobranca = new LancamentoCobranca
                    {
                        Unidade        = unidade,
                        Cliente        = cliente,
                        TipoServico    = TipoServico.Mensalista,
                        DataGeracao    = DateTime.Now,
                        DataVencimento = pagamentoMensalidadeVM.DataValidade,
                        ValorContrato  = pagamentoMensalidadeVM.Valor
                    };
                }

                if (lancamentoCobranca.Recebimento == null)
                {
                    lancamentoCobranca.Recebimento = new Recebimento();
                }
                if (lancamentoCobranca.Recebimento.Pagamentos == null)
                {
                    lancamentoCobranca.Recebimento.Pagamentos = new List <Pagamento>();
                }

                if (lancamentoCobranca.Recebimento.Pagamentos
                    .Any(x => x.PagamentoMensalistaId == pagamentoMensalidadeVM.Id &&
                         x.Unidade.Id == pagamentoMensalidadeVM.Estacionamento.Id))
                {
                    JsonResult.Message = "Já existe um pagamento com esse Id para esta Unidade";
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError, JsonResult));
                }

                lancamentoCobranca.StatusLancamentoCobranca = StatusLancamentoCobranca.Pago;
                lancamentoCobranca.DataBaixa = pagamentoMensalidadeVM.DataPagamento;

                var pagamento = pagamentoMensalidadeVM.ToPagamento(lancamentoCobranca.Recebimento);
                pagamento.Unidade = unidade;

                lancamentoCobranca.Recebimento.Pagamentos.Add(pagamento);

                lancamentoCobranca.StatusLancamentoCobranca = StatusLancamentoCobranca.Pago;
                lancamentoCobranca.DataBaixa = pagamento.DataPagamento;

                _lancamentoCobrancaAplicacao.Salvar(lancamentoCobranca);

                return(Request.CreateResponse(HttpStatusCode.Created, JsonResult.Message = "Pagamento Cadastrado!"));
            }
            catch (Exception ex)
            {
                JsonResult.Status  = false;
                JsonResult.Message = ex.Message;
                return(Request.CreateResponse(HttpStatusCode.BadRequest, JsonResult));
            }
        }
Example #5
0
 public string GerarBoletoBancarioHtml(LancamentoCobranca lancamento)
 {
     return(_lancamentoCobrancaPedidoSeloServico.GerarBoletoBancarioHtml(lancamento));
 }