示例#1
0
        public JsonResult DeletePlanoPagamento(long ID)
        {
            PlanoPagamento labUpdate = PlanoPagamentoDao.FindAllByIDPlanoPagamento(ID);

            PlanoPagamentoDao.Delete(labUpdate);
            return(Json("Response from Delete"));
        }
示例#2
0
        public ActionResult Edit(int IdPlanoPagamento)
        {
            PlanoPagamento pp = PlanoPagamentoDao.FindAllByIDPlanoPagamento(IdPlanoPagamento);

            ViewBag.ID    = IdPlanoPagamento;
            ViewBag.erros = new List <string>();
            return(View(new PlanoPagamentoDTO(pp)));
        }
示例#3
0
        public void Preco_DeveUsarPrecoVista(decimal precoVenda, decimal?precoVista, decimal?precoPrazo)
        {
            Venda          venda     = new Venda();
            Preco          preco     = new Preco(precoVenda, precoVista, precoPrazo);
            Produto        produto   = new Produto("Meia Branca", preco, 1);
            PlanoPagamento pagamento = new PlanoPagamento("vista", 1, FormaPagamento.Vista, null, null);

            venda.AdicionarProduto(produto);
            venda.DefinirPlanoPagamento(pagamento);

            Assert.Equal(preco.PrecoVista.Value, produto.PegarPrecoPeloPlano());
        }
示例#4
0
 public PlanoPagamentoDTO(PlanoPagamento planoPagamento)
 {
     ID                  = planoPagamento.ID;
     Nome                = planoPagamento.Nome;
     NumeroParcelas      = planoPagamento.NumeroParcelas;
     Periodicidade       = planoPagamento.Periodicidade;
     DataPrimeiraParcela = planoPagamento.DataPrimeiraParcela;
     Desconto            = planoPagamento.Desconto;
     Juros               = planoPagamento.Juros;
     Multa               = planoPagamento.Multa;
     DataAlteracao       = planoPagamento.DataAlteracao;
     UsuarioAlteracao    = planoPagamento.UsuarioAlteracao;
     Ativo               = planoPagamento.Ativo;
 }
示例#5
0
        public PlanoPagamento ParseToPlanoPagamento(PlanoPagamento planoPagamento)
        {
            planoPagamento.Nome                = Nome;
            planoPagamento.Periodicidade       = Periodicidade;
            planoPagamento.DataPrimeiraParcela = DataPrimeiraParcela;
            planoPagamento.Desconto            = Desconto;
            planoPagamento.Juros               = Juros;
            planoPagamento.Multa               = Multa;
            planoPagamento.DataAlteracao       = DataAlteracao;
            planoPagamento.UsuarioAlteracao    = UsuarioAlteracao;
            planoPagamento.Ativo               = Ativo;

            return(planoPagamento);
        }
示例#6
0
        public PlanoPagamento CriarPlanoPagamentoPorInfoPagamentoOferta(Oferta oferta)
        {
            InfoPagamento infoPagamento = oferta.InfoPagamento;
            var valorTotalParcelado = infoPagamento.ValorTotalPlano - infoPagamento.Entrada;
            var valorPorParcela = valorTotalParcelado / infoPagamento.NumeroParcelas;

            PlanoPagamento planoPagamento = new PlanoPagamento();
            ItemPlanoPagamento itemPlanoPagamento = null;
            planoPagamento.Entrada = infoPagamento.Entrada;
            for (int i = 0; i < infoPagamento.NumeroParcelas; i++) {
                itemPlanoPagamento = CriarItemPlanoPagamento(valorPorParcela);
                planoPagamento.ItensPlanoPagamento.Add(itemPlanoPagamento);
            }
            return planoPagamento;
        }
示例#7
0
        public ActionResult Create(PlanoPagamentoDTO plano)
        {
            var erros = plano.validate();

            if (erros.Count == 0)
            {
                PlanoPagamento planos = plano.ParseToPlanoPagamento();

                PlanoPagamentoDao.Save(planos);
                SessionHelper.AddMensagemToView("Plano de Pagamento criado com sucesso");

                return(RedirectToAction("Index", "PlanoPagamento"));
            }
            ViewBag.erros = erros;
            SessionHelper.AddMensagemToView("Revise os campos destacados", MensagemDTO.EnumTipoMensagem.info);
            return(View(plano));
        }
示例#8
0
        public PlanoPagamento ParseToPlanoPagamento()
        {
            PlanoPagamento planoPagamento = new PlanoPagamento()
            {
                Nome                = Nome,
                NumeroParcelas      = NumeroParcelas,
                Periodicidade       = Periodicidade,
                DataPrimeiraParcela = DataPrimeiraParcela,
                Desconto            = Desconto,
                Juros               = Juros,
                Multa               = Multa,
                DataAlteracao       = DataAlteracao,
                UsuarioAlteracao    = UsuarioAlteracao,
                Ativo               = Ativo,
                ID = ID
            };

            return(planoPagamento);
        }
示例#9
0
        public ActionResult Edit(PlanoPagamentoDTO pp)
        {
            var erros = pp.validateEdit();

            if (erros.Count == 0)
            {
                PlanoPagamento pps = PlanoPagamentoDao.Find(pp.ID);

                pps = pp.ParseToPlanoPagamento(pps);
                PlanoPagamentoDao.SaveUpdateAll();

                SessionHelper.AddMensagemToView("Plano editado com sucesso");
                return(RedirectToAction("Index"));
            }

            ViewBag.erros = erros;

            SessionHelper.AddMensagemToView("Revise os campos destacados", MensagemDTO.EnumTipoMensagem.info);
            return(View(pp));
        }
示例#10
0
        public void PlanoPrazo_Entrada100_DeveSerInvalido()
        {
            PlanoPagamento planoPagamento = new PlanoPagamento("2X CARNE", 2, FormaPagamento.Prazo, 100m, null);

            Assert.False(planoPagamento.Valid);
        }
示例#11
0
        public void PlanoVista_NumeroParcelas2_DeveSerInvalido()
        {
            var plano = new PlanoPagamento("VISTA", 2, FormaPagamento.Vista, 100m, null);

            Assert.False(plano.Valid);
        }
示例#12
0
        public void PlanoVista_EntradaMenor100_DeveSerInvalido()
        {
            var plano = new PlanoPagamento("VISTA", 1, FormaPagamento.Vista, 25.5m, null);

            Assert.False(plano.Valid);
        }
示例#13
0
 public void CriarCobrancas(PlanoPagamento planoPagamento)
 {
     //INterface para o sistema de cobranca
 }