Esempio n. 1
0
        // GET: Forms_financas
        public ActionResult FrmBuscarContasAPagar()
        {
            ContaPagarDAO contaPagarDAO = new ContaPagarDAO();

            ViewBag.lstContaPagar = contaPagarDAO.buscaTipo();
            return(View());
        }
        public ActionResult Index()
        {
            var dao = new ContaPagarDAO();

            ModelState.Clear();
            return(View(dao.SelecionarCompra()));
        }
 public ContaPagarService(ContaPagarDAO dAO, UserDAO userDAO, UserRequest userRequest, CompraDAO compraDAO)
 {
     ContaPagarDAO = dAO ?? throw new ArgumentNullException(nameof(dAO));
     UserDAO       = userDAO ?? throw new ArgumentNullException(nameof(userDAO));
     CompraDAO     = compraDAO ?? throw new ArgumentNullException(nameof(compraDAO));
     UserRequest   = userRequest ?? throw new ArgumentNullException(nameof(userRequest));
 }
        public ActionResult AlteraContasAPagar(ContaPagar obj)
        {
            ContaPagarDAO dao = new ContaPagarDAO();

            dao.altera(obj);
            return(RedirectToAction("frmBuscaContasAPagar"));
        }
Esempio n. 5
0
        public CancelarContaPagarValidator(ContaPagarDAO contaPagarDAO, FornecedorDAO fornecedorDAO)
        {
            this.ContaPagarDAO = contaPagarDAO;
            this.FornecedorDAO = fornecedorDAO;

            RuleFor(e => e.Modelo)
            .NotEmpty().WithMessage("Informe o modelo.")
            .MaximumLength(2).WithMessage("Modelo só pode ter 2 caracteres.");

            RuleFor(e => e.Serie)
            .NotEmpty().WithMessage("Informe a série.")
            .MaximumLength(2).WithMessage("Série só pode ter 2 caracteres.");

            RuleFor(e => e.Numero)
            .NotEmpty().WithMessage("Informe o número.")
            .Must(ExistCondicaoPagamento).WithMessage("Conta a pagar não cadastrada.")
            .MaximumLength(20).WithMessage("Número só pode ter 2 caracteres.");

            RuleFor(e => e.FornecedorId)
            .NotEmpty().WithMessage("Informe o fornecedor.")
            .Must(ExistFornecedor).WithMessage("Fornecedor não cadastrado.");

            RuleFor(e => e.Parcela)
            .GreaterThan(0).WithMessage("Parcela deve ser superior a 0.")
            .NotEmpty().WithMessage("Informe a parcela.");
        }
Esempio n. 6
0
 public CompraService(CompraDAO compraDAO, ContaPagarDAO contaPagarDAO, CompraProdutoDAO compraProdutoDAO, ProdutoDAO produtoDAO, UserRequest userRequest, UserDAO userDAO)
 {
     this.UserDAO          = userDAO ?? throw new System.ArgumentNullException(nameof(userDAO));
     this.CompraDAO        = compraDAO ?? throw new System.ArgumentNullException(nameof(compraDAO));
     this.ProdutoDAO       = produtoDAO ?? throw new System.ArgumentNullException(nameof(produtoDAO));
     this.UserRequest      = userRequest ?? throw new System.ArgumentNullException(nameof(userRequest));
     this.ContaPagarDAO    = contaPagarDAO ?? throw new System.ArgumentNullException(nameof(contaPagarDAO));
     this.CompraProdutoDAO = compraProdutoDAO ?? throw new System.ArgumentNullException(nameof(compraProdutoDAO));
 }
Esempio n. 7
0
        public PagarContaPagarValidator(ContaPagarDAO contaPagarDAO, FornecedorDAO fornecedorDAO, FormaPagamentoDAO formaPagamentoDAO)
        {
            this.ContaPagarDAO     = contaPagarDAO;
            this.FornecedorDAO     = fornecedorDAO;
            this.FormaPagamentoDAO = formaPagamentoDAO;

            RuleFor(e => e.Modelo)
            .NotEmpty().WithMessage("Informe o modelo.")
            .MaximumLength(2).WithMessage("Modelo só pode ter 2 caracteres.");

            RuleFor(e => e.Serie)
            .NotEmpty().WithMessage("Informe a série.")
            .MaximumLength(2).WithMessage("Série só pode ter 2 caracteres.");

            RuleFor(e => e.Numero)
            .NotEmpty().WithMessage("Informe o número.")
            .MaximumLength(20).WithMessage("Número só pode ter 2 caracteres.");

            RuleFor(e => e.FornecedorId)
            .NotEmpty().WithMessage("Informe o fornecedor.")
            .Must(ExistFornecedor).WithMessage("Fornecedor não cadastrado.");

            RuleFor(e => e.Parcela)
            .GreaterThan(0).WithMessage("Parcela deve ser superior a 0.")
            .NotEmpty().WithMessage("Informe a parcela.");

            RuleFor(e => e.Desconto)
            .Must(e => e >= 0 || e == null).WithMessage("Desconto não pode ser negativo.");

            RuleFor(e => e.Multa)
            .Must(e => e >= 0 || e == null).WithMessage("Multa não pode ser negativo.");

            RuleFor(e => e.Juro)
            .Must(e => e >= 0 || e == null).WithMessage("Juro não pode ser negativo.");

            RuleFor(e => e.FormaPagamentoId)
            .NotEmpty().WithMessage("Informe a forma de pagamento.")
            .Must(ExistFormaPagamento).WithMessage("Forma de pagamento não cadastrado.");


            RuleFor(e => e.DataVencimento)
            .NotEmpty().WithMessage("Informe a data de vencimento.")
            .Must(CheckDataVencimento).WithMessage("Data de vencimento inválida.");


            RuleFor(e => e.DataPagamento)
            .NotEmpty().WithMessage("Informe a data de Pagamento.")
            .Must((e, a) => CheckDataVencimento(e, a.Value)).WithMessage("Data de Pagamento inválida.")
            .Must(e => e <= DateTime.UtcNow).WithMessage("Data de pagamento futura.");

            RuleFor(e => e.Descricao)
            .MaximumLength(255).WithMessage("Descrição deve ter menos de 255 caracteres.");
        }
        public ContaPagarValidator(ContaPagarDAO contaPagarDAO, FornecedorDAO fornecedorDAO, FormaPagamentoDAO formaPagamentoDAO)
        {
            this.ContaPagarDAO     = contaPagarDAO;
            this.FornecedorDAO     = fornecedorDAO;
            this.FormaPagamentoDAO = formaPagamentoDAO;

            RuleFor(e => e.Modelo)
            .NotEmpty().WithMessage("Informe o modelo.")
            .MaximumLength(2).WithMessage("Modelo só pode ter 2 caracteres.");

            RuleFor(e => e.Serie)
            .NotEmpty().WithMessage("Informe a série.")
            .MaximumLength(2).WithMessage("Série só pode ter 2 caracteres.");

            RuleFor(e => e.Numero)
            .NotEmpty().WithMessage("Informe o número.")
            .MaximumLength(20).WithMessage("Número só pode ter 2 caracteres.");

            RuleFor(e => e.FornecedorId)
            .NotEmpty().WithMessage("Informe o fornecedor.")
            .Must(ExistFornecedor).WithMessage("Fornecedor não cadastrado.");

            RuleFor(e => e.Parcela)
            .GreaterThan(0).WithMessage("Parcela deve ser superior a 0.")
            .NotEmpty().WithMessage("Informe a parcela.");

            RuleFor(e => e.Valor)
            .Must(e => e >= 0).WithMessage("Valor não pode ser negativo.");

            RuleFor(e => e.Desconto)
            .Must((parcela, desconto) => parcela.Valor >= desconto || desconto is null).WithMessage("Desconto não pode ser maior que o valor.")
            .Must(e => e >= 0 || e == null).WithMessage("Desconto não pode ser negativo.");

            RuleFor(e => e.Multa)
            .Must(e => e >= 0 || e == null).WithMessage("Multa não pode ser negativo.");

            RuleFor(e => e.Juro)
            .Must(e => e >= 0 || e == null).WithMessage("Juro não pode ser negativo.");

            RuleFor(e => e.FormaPagamentoId)
            .NotEmpty().WithMessage("Informe a forma de pagamento.")
            .Must(ExistFormaPagamento).WithMessage("Forma de pagamento não cadastrado.");

            RuleFor(e => e.DataEmissao)
            .NotEmpty().WithMessage("Informe a data de emissão.");

            RuleFor(e => e.DataVencimento)
            .NotEmpty().WithMessage("Informe a data de vencimento.")
            .Must((contaPagar, vencimento) => contaPagar.DataVencimento >= contaPagar.DataEmissao).WithMessage("Data de vencimento inválida.");

            RuleFor(e => e.Descricao)
            .MaximumLength(255).WithMessage("Descrição deve ter menos de 255 caracteres.");
        }
 private ActionResult GetViewDetails(string nrModelo, string nrSerie, int nrNota, int?nrParcela, int?IdFornecedor)
 {
     try
     {
         var Dao        = new ContaPagarDAO();
         var contaPagar = Dao.GetContaDetais(null, nrModelo, nrSerie, nrNota, nrParcela, IdFornecedor);
         return(View(contaPagar));
     }
     catch (Exception)
     {
         return(View());
     }
 }
 public ActionResult Create(ContaPagar contaPagar, string nrModelo, string nrSerie, int nrNota, int IdFornecedor, int nrParcela)
 {
     if (contaPagar.ContaBancaria.IdConta == null)
     {
         ModelState.AddModelError("ContaBancaria.IdConta", "Informe a Conta Bancaria");
     }
     try
     {
         var dao = new ContaPagarDAO();
         dao.PagarCompra(contaPagar, nrModelo, nrSerie, nrNota, IdFornecedor, nrParcela);
         this.AddFlashMessage("Conta Paga com sucesso!");
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
Esempio n. 11
0
 public ContaPagarController(ContaPagarDAO dao, ContaPagarService contaPagarService)
 {
     this.DAO = dao;
     this.ContaPagarService = contaPagarService;
 }
        public CompraValidator(CompraDAO compraDAO, FornecedorDAO fornecedorDAO, ProdutoDAO produtoDAO,
                               FormaPagamentoDAO formaPagamentoDAO, ContaPagarDAO contaPagarDAO)
        {
            this.CompraDAO         = compraDAO;
            this.ProdutoDAO        = produtoDAO;
            this.FornecedorDAO     = fornecedorDAO;
            this.ContaPagarDAO     = contaPagarDAO;
            this.FormaPagamentoDAO = formaPagamentoDAO;


            RuleFor(e => e.Modelo)
            .NotEmpty().WithMessage("Informe o modelo.")
            .MaximumLength(2).WithMessage("Modelo só pode ter 2 caracteres.");

            RuleFor(e => e.Serie)
            .NotEmpty().WithMessage("Informe a série.")
            .MaximumLength(2).WithMessage("Série só pode ter 2 caracteres.");

            RuleFor(e => e.Numero)
            .NotEmpty().WithMessage("Informe o número.")
            .MaximumLength(6).WithMessage("Número só pode ter 6 caracteres.")
            .Must(VerifyId).WithMessage("Compra já cadastrada.");

            RuleFor(e => e.FornecedorId)
            .NotEmpty().WithMessage("Informe o fornecedor.")
            .Must(ExistFornecedor).WithMessage("Fornecedor não cadastrado.");

            RuleFor(e => e.DataEmissao)
            .NotEmpty().WithMessage("Infome a Data de Emissão.");

            RuleFor(e => e.DataChegada)
            .NotEmpty().WithMessage("Informe a Data de Chegada.")
            .Must((e, a) => e.DataChegada >= e.DataEmissao).WithMessage("Data de Chegada não poder ser posterior a data de Emissão");

            RuleFor(e => e.Frete)
            .Must(e => e >= 0 || e == null).WithMessage("Frete inválido.");

            RuleFor(e => e.Seguro)
            .Must(e => e >= 0 || e == null).WithMessage("Seguro inválido.");

            RuleFor(e => e.OutrasDespesas)
            .Must(e => e >= 0 || e == null).WithMessage("Outras Despesas inválido.");

            RuleFor(e => e.CondicaoPagamentoId)
            .NotEmpty().WithMessage("Infome a condição de pagamento.");

            RuleFor(e => e.Observacoes)
            .MaximumLength(255).WithMessage("Observação não pode ter mais de 255 caracteres.");

            RuleFor(e => e.Produtos)
            .Must(e => e.Count > 0).WithMessage("Adicine produtos a compra.")
            .Must(e => e.Select(a => a.ProdutoId).Distinct().Count() == e.Count()).WithMessage("Existem produtos repetidos na compra.");

            RuleForEach(e => e.Produtos)
            .Must(e => ExistProduto(e.ProdutoId)).WithMessage("Produto não cadastrado.")
            .Must(e => e.Quantidade > 0).WithMessage("Quantidade inválida.")
            .Must(e => e.ValorUnitario > 0).WithMessage("Valor inválido.")
            .Must(e => e.Desconto >= 0 || e.Desconto == null).WithMessage("Desconto inválido.")
            .Must(e => e.IPI > 0 || e.IPI == null).WithMessage("IPI inválido.");

            RuleFor(e => e.Parcelas)
            .NotEmpty().WithMessage("Adicione parcelas a compra.")
            .Must(VerifyValues).WithMessage("Soma das parcelas não confere com o valor da compra.");

            RuleForEach(e => e.Parcelas)
            .NotEmpty().WithMessage("Informe as parcelas.")
            .Must(e => e.Parcela >= 0).WithMessage("Parcelas inválida.")
            .Must(e => ExistFormaPagamento(e.FormaPagamentoId)).WithMessage("Forma de pagamento não cadastrada.")
            .Must(e => e.DataVencimento != null).WithMessage("Data de Vencimento inválida.")
            .Must((c, p) => !ExistParcela(c, p)).WithMessage((c, p) => $"Parcela {p.Parcela} já cadastrada.");
        }