Ejemplo n.º 1
0
        public static void GravaDebito(BalcaoVendas balcaoVendas, IContasReceberData contaReceberData, ContextPage contexto, OrgConfig orgConfig)
        {
            ContasReceber contaReceber = new ContasReceber();

            contaReceber.valor              = balcaoVendas.valorTotal;
            contaReceber.valorRestante      = balcaoVendas.valorTotal;
            contaReceber.idReference        = balcaoVendas.id;
            contaReceber.tipoLancamento     = CustomEnum.TipoLancamento.automatico;
            contaReceber.statusContaReceber = CustomEnumStatus.StatusContaReceber.agendado;
            contaReceber.origemContaReceber = CustomEnum.OrigemContaReceber.BalcaoVendas;

            if (balcaoVendas.idCliente != Guid.Empty)
            {
                contaReceber.idCliente = balcaoVendas.idCliente;
            }

            contaReceber.numeroReferencia = balcaoVendas.codigo;

            if (balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.CartaoDebito & orgConfig.debitoGeraContasReceber == true)
            {
                contaReceber.titulo        = "Débito - Venda Balcão";
                contaReceber.dataPagamento = DateTime.Now;
                contaReceber.dataPagamento = contaReceber.dataPagamento.AddDays(orgConfig.qtdDiasCartaoDebito);
                ContasReceberRules.ContasReceberCreate(contaReceber, contaReceberData, contexto);
            }
        }
Ejemplo n.º 2
0
 public ContasReceberController(ContexDataService db, IHttpContextAccessor httpContext, SqlGenericData _sqlData)
 {
     this.contasReceberData = new ContasReceberData(db);
     this.pagamentoData     = new PagamentoData(db);
     this.sqlData           = _sqlData;
     this.contexto          = new ContextPage().ExtractContext(httpContext);
     this.clienteData       = new ClienteData(db);
     this.balcaoVendasData  = new BalcaoVendasData(db);
 }
Ejemplo n.º 3
0
        public static void GravaParcela(BalcaoVendas balcaoVendas, IContasReceberData contaReceberData, ContextPage contexto, OrgConfig orgConfig)
        {
            decimal valorParcela = balcaoVendas.valorTotal / balcaoVendas.parcelas;

            DateTime dataCredito = DateTime.Now.AddDays(orgConfig.qtdDiasCartaoCredito);

            int parcela = 1;

            for (int i = 0; i < balcaoVendas.parcelas; i++)
            {
                ContasReceber contaReceber = new ContasReceber();
                contaReceber.valor              = valorParcela;
                contaReceber.valorRestante      = valorParcela;
                contaReceber.tipoLancamento     = CustomEnum.TipoLancamento.automatico;
                contaReceber.statusContaReceber = CustomEnumStatus.StatusContaReceber.agendado;
                contaReceber.origemContaReceber = CustomEnum.OrigemContaReceber.BalcaoVendas;
                contaReceber.idReference        = balcaoVendas.id;

                if (balcaoVendas.idCliente != Guid.Empty)
                {
                    contaReceber.idCliente = balcaoVendas.idCliente;
                }

                contaReceber.numeroReferencia = balcaoVendas.codigo;

                if (balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Boleto || balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.Cheque)
                {
                    contaReceber.titulo        = "Parcela Boleto/Cheque -" + parcela.ToString() + "/" + balcaoVendas.parcelas.ToString() + " - Venda Balcão";
                    contaReceber.dataPagamento = new DateTime(DateTime.Now.Year, DateTime.Now.Month, balcaoVendas.diaVencimento);
                    contaReceber.dataPagamento = contaReceber.dataPagamento.AddMonths(parcela);
                    ContasReceberRules.ContasReceberCreate(contaReceber, contaReceberData, contexto);
                }

                if (balcaoVendas.tipoPagamento == CustomEnum.tipoPagamento.CartaoCredito & orgConfig.creditoGeraContasReceber == true)
                {
                    contaReceber.titulo = "Parcela Cartão Crédito -" + parcela.ToString() + "/" + balcaoVendas.parcelas.ToString() + " - Venda Balcão";

                    if (i == 0)
                    {
                        contaReceber.dataPagamento = dataCredito;
                    }
                    else
                    {
                        dataCredito = dataCredito.AddMonths(1);
                        contaReceber.dataPagamento = dataCredito;
                    }

                    ContasReceberRules.ContasReceberCreate(contaReceber, contaReceberData, contexto);
                }

                parcela++;
            }
        }
Ejemplo n.º 4
0
 public BalcaoVendasAPIController(SqlGeneric _sqlGeneric, SqlGenericRules _sqlRules, IHttpContextAccessor httpContext, ContexDataService db)
 {
     this.balcaoVendasData = new BalcaoVendasData(db);
     this.contaReceberData = new ContasReceberData(db);
     this.produtoData      = new ProdutoData(db);
     this.orgConfigData    = new OrgConfigData(db);
     this.sqlServices      = _sqlRules;
     this.sqlGeneric       = _sqlGeneric;
     this.contexto         = new ContextPage().ExtractContext(httpContext);
     this.clienteData      = new ClienteData(db);
     this.orgConfig        = this.orgConfigData.Get(this.contexto.idOrganizacao);
 }
Ejemplo n.º 5
0
        public static bool ValidaCreate(PagamentoViewModel entrada, IContasReceberData contasReceberData)
        {
            if (entrada.contasReceber != null)
            {
                ContasReceber contasReceber = contasReceberData.Get(entrada.contasReceber.id);

                if (entrada.pagamento.valor > contasReceber.valorRestante)
                {
                    return(false);
                }
            }

            return(true);
        }
Ejemplo n.º 6
0
        public static bool ContasReceberCreate(ContasReceber entrada, IContasReceberData contaReceberData, ContextPage contexto)
        {
            entrada.codigo = AutoNumber.GeraCodigo(21, contexto.idOrganizacao);

            if (entrada.codigo != null)
            {
                //************ Objetos de controle de acesso ******************
                entrada.criadoEm          = DateTime.Now;
                entrada.criadoPor         = contexto.idUsuario;
                entrada.criadoPorName     = contexto.nomeUsuario;
                entrada.modificadoEm      = DateTime.Now;
                entrada.modificadoPor     = contexto.idUsuario;
                entrada.modificadoPorName = contexto.nomeUsuario;
                entrada.idOrganizacao     = contexto.idOrganizacao;
                //************ FIM Objetos de controle de acesso ***************

                contaReceberData.Add(entrada);

                return(true);
            }
            return(false);
        }
 public ContasReceberAPIController(ContexDataService db, SqlGenericRules _sqlRules, IHttpContextAccessor httpContext)
 {
     this.serviceData = new ContasReceberData(db);
     this.sqlServices = _sqlRules;
     this.contexto    = new ContextPage().ExtractContext(httpContext);
 }
Ejemplo n.º 8
0
        public static void CalculoPagamento(Guid idContasReceber, IPagamentoData pagamentoData, IContasReceberData contasReceberData)
        {
            List <Pagamento> pagamentos    = new List <Pagamento>();
            ContasReceber    contasReceber = contasReceberData.Get(idContasReceber);

            pagamentos = pagamentoData.GetAllByContasReceber(idContasReceber);

            decimal Total = 0;

            foreach (var item in pagamentos)
            {
                Total += item.valor;
            }

            SqlGeneric sql = new SqlGeneric();

            sql.AtualizaContasReceber(Total, contasReceber.valor - Total, contasReceber.id);
        }
Ejemplo n.º 9
0
 public PagamentoController(ContexDataService db, IHttpContextAccessor httpContext)
 {
     this.pagamentoData     = new PagamentoData(db);
     this.contasReceberData = new ContasReceberData(db);
     this.contexto          = new ContextPage().ExtractContext(httpContext);
 }