public void QuandoAlteroADescricaoDaCondicaoDePagamentoAPropriedadeFicaComONovoValor()
        {
            var condiaoDePagamento = new CondicaoDePagamento("C001", "CONDICAO 0001");

            condiaoDePagamento.AtualizarDescricao("CONDICAO 0001 atualizada");
            Assert.AreEqual("CONDICAO 0001 atualizada", condiaoDePagamento.Descricao);
        }
        public void QuandoCrioUmaCondicaoDePagamentoConsigoAcessarAsPropriedades()
        {
            var condiaoDePagamento = new CondicaoDePagamento("C001", "CONDICAO 0001");

            Assert.AreEqual("C001", condiaoDePagamento.Codigo);
            Assert.AreEqual("CONDICAO 0001", condiaoDePagamento.Descricao);
        }
Esempio n. 3
0
        public void QuandoConsultoUmaCondicaoDePagamentoComCodigoSapInexistenteDeveRetornarNull()
        {
            var condicoesDePagamento = ObjectFactory.GetInstance <ICondicoesDePagamento>();
            CondicaoDePagamento condicaoDePagamento = condicoesDePagamento.BuscaPeloCodigo("C002");

            Assert.IsNull(condicaoDePagamento);
        }
Esempio n. 4
0
        public void QuandoAtualizaoUmaCotacaoAsPropriedadesSaoCriadasCorretamente()
        {
            ProcessoDeCotacaoDeMaterial processoDeCotacao = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialComCotacaoDoFornecedor();
            var condicaoDePagamento = new CondicaoDePagamento("C1", "CONDIÇÃO ALTERAÇÃO");
            var incoterm            = new Incoterm("I1", "INCOTERM ALTERAÇÃO");
            var cotacao             = (CotacaoMaterial)processoDeCotacao.FornecedoresParticipantes.First().Cotacao;

            cotacao.Atualizar(condicaoDePagamento, incoterm, "INCOTERM ALTERADO");
            Assert.AreSame(incoterm, cotacao.Incoterm);
            Assert.AreEqual("INCOTERM ALTERADO", cotacao.DescricaoIncoterm);
            Assert.AreSame(condicaoDePagamento, cotacao.CondicaoDePagamento);
        }
Esempio n. 5
0
        public void QuandoCrioUmaCotacaoAsPropriedadesSaoIniciadasCorretamente()
        {
            CondicaoDePagamento         condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            Incoterm                    incoterm            = DefaultObjects.ObtemIncotermPadrao();
            ProcessoDeCotacaoDeMaterial processoDeCotacao   = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAbertoPadrao();
            var fornecedor = processoDeCotacao.FornecedoresParticipantes.First().Fornecedor.Codigo;
            var cotacao    = processoDeCotacao.InformarCotacao(fornecedor, condicaoDePagamento, incoterm, "Descrição do Incoterm");

            Assert.AreSame(incoterm, cotacao.Incoterm);
            Assert.AreEqual("Descrição do Incoterm", cotacao.DescricaoIncoterm);
            Assert.AreSame(condicaoDePagamento, cotacao.CondicaoDePagamento);
        }
 public void Novo(CondicaoDePagamentoCadastroVm condicaoDePagamentoCadastroVm)
 {
     try
     {
         _unitOfWork.BeginTransaction();
         var condicaoDePagamento = new CondicaoDePagamento(condicaoDePagamentoCadastroVm.CodigoSap, condicaoDePagamentoCadastroVm.Descricao);
         _condicoesDePagamento.Save(condicaoDePagamento);                
         _unitOfWork.Commit();
     }
     catch (Exception)
     {
         _unitOfWork.RollBack();                
         throw;
     }
 }
Esempio n. 7
0
        private void AtualizarCondicaoDePagamento(CondicaoDePagamentoCadastroVm condicaoDePagamentoCadastroVm)
        {
            CondicaoDePagamento condicaoDePagamento =
                _condicoesDePagamentoConsultadas.SingleOrDefault(x => x.Codigo == condicaoDePagamentoCadastroVm.Codigo);

            if (condicaoDePagamento != null)
            {
                condicaoDePagamento.AtualizarDescricao(condicaoDePagamentoCadastroVm.Descricao);
            }
            else
            {
                condicaoDePagamento = new CondicaoDePagamento(condicaoDePagamentoCadastroVm.Codigo,
                                                              condicaoDePagamentoCadastroVm.Descricao);
            }
            _condicoesDePagamento.Save(condicaoDePagamento);
        }
Esempio n. 8
0
        public void QuandoAtualizarUmaCotacaoDoProcessoAsPropriedadesSaoAtualizadas()
        {
            ProcessoDeCotacaoDeMaterial processoDeCotacao = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAtualizado();
            Fornecedor fornecedor = DefaultObjects.ObtemFornecedorPadrao();

            processoDeCotacao.AdicionarFornecedor(fornecedor);
            processoDeCotacao.Abrir(DefaultObjects.ObtemUsuarioPadrao());
            Incoterm            incoterm            = DefaultObjects.ObtemIncotermPadrao();
            CondicaoDePagamento condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();

            processoDeCotacao.InformarCotacao(fornecedor.Codigo, condicaoDePagamento, incoterm, "Descrição do Incoterm 2");

            var cotacao = (CotacaoMaterial)processoDeCotacao.FornecedoresParticipantes.First().Cotacao;

            Assert.IsNotNull(cotacao);
            Assert.AreSame(condicaoDePagamento, cotacao.CondicaoDePagamento);
            Assert.AreSame(incoterm, cotacao.Incoterm);
            Assert.AreEqual("Descrição do Incoterm 2", cotacao.DescricaoIncoterm);
        }
Esempio n. 9
0
        public void QuandoSelecionaUmFornecedorACotacaoFicaMarcadaComoSelecionadaQuantidadeAdquiridaEIvaSaoPreenchidos()
        {
            ProcessoDeCotacaoDeMaterial processoDeCotacao = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAtualizado();
            Fornecedor fornecedor = DefaultObjects.ObtemFornecedorPadrao();

            processoDeCotacao.AdicionarFornecedor(fornecedor);
            processoDeCotacao.Abrir(DefaultObjects.ObtemUsuarioPadrao());
            Incoterm            incoterm            = DefaultObjects.ObtemIncotermPadrao();
            CondicaoDePagamento condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            var processoCotacaoItem = processoDeCotacao.Itens.First();
            var cotacao             = processoDeCotacao.InformarCotacao(fornecedor.Codigo, condicaoDePagamento, incoterm, "Descrição do Incoterm 2");
            var cotacaoItem         = (CotacaoMaterialItem)cotacao.InformarCotacaoDeItem(processoCotacaoItem, new decimal(150.20), 180, 10, DateTime.Today.AddMonths(1), "obs fornec");
            Iva iva = DefaultObjects.ObtemIvaPadrao();

            cotacaoItem.Selecionar(new decimal(120.00), iva);

            Assert.IsTrue(cotacaoItem.Selecionada);
            Assert.AreEqual(new decimal(120.00), cotacaoItem.QuantidadeAdquirida);
            Assert.AreEqual(iva.Codigo, cotacaoItem.Iva.Codigo);
        }
Esempio n. 10
0
        public void QuandoFiltroPorListaDeCodigoTemQueRetornarIncotermsCorrespondenteAosCodigos()
        {
            UnitOfWorkNh.BeginTransaction();
            CondicaoDePagamento condicaoDePagamento1 = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            CondicaoDePagamento condicaoDePagamento2 = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            CondicaoDePagamento condicaoDePagamento3 = DefaultObjects.ObtemCondicaoDePagamentoPadrao();

            UnitOfWorkNh.Session.Save(condicaoDePagamento1);
            UnitOfWorkNh.Session.Save(condicaoDePagamento2);
            UnitOfWorkNh.Session.Save(condicaoDePagamento3);
            UnitOfWorkNh.Commit();
            UnitOfWorkNh.Session.Clear();

            var condicoesDePagamento = ObjectFactory.GetInstance <ICondicoesDePagamento>();

            IList <CondicaoDePagamento> condicoesConsultadas = condicoesDePagamento.FiltraPorListaDeCodigos(new[] { condicaoDePagamento1.Codigo, condicaoDePagamento2.Codigo }).List();

            Assert.AreEqual(2, condicoesConsultadas.Count);
            Assert.AreEqual(1, condicoesConsultadas.Count(x => x.Codigo == condicaoDePagamento1.Codigo));
            Assert.AreEqual(1, condicoesConsultadas.Count(x => x.Codigo == condicaoDePagamento2.Codigo));
        }
Esempio n. 11
0
        public void QuandoCrioUmItemDeCotacaoAsPropriedasSaoIniciadasCorretamente()
        {
            CondicaoDePagamento         condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            Incoterm                    incoterm            = DefaultObjects.ObtemIncotermPadrao();
            ProcessoDeCotacaoDeMaterial processoDeCotacao   = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAbertoPadrao();
            var fornecedor     = processoDeCotacao.FornecedoresParticipantes.First().Fornecedor.Codigo;
            var cotacao        = processoDeCotacao.InformarCotacao(fornecedor, condicaoDePagamento, incoterm, "Descrição do Incoterm");
            var itemDoProcesso = processoDeCotacao.Itens.First();
            var cotacaoItem    = (CotacaoMaterialItem)cotacao.InformarCotacaoDeItem(itemDoProcesso, 110, 5, 80, DateTime.Today.AddMonths(1), "observacoes");

            Assert.IsFalse(cotacaoItem.Selecionada);
            Assert.IsNull(cotacaoItem.Iva);
            Assert.IsNull(cotacaoItem.QuantidadeAdquirida);
            Assert.AreEqual(110, cotacaoItem.Preco);
            Assert.AreEqual(110, cotacaoItem.PrecoInicial);
            Assert.AreEqual(110, cotacaoItem.ValorComImpostos);
            Assert.AreEqual(110, cotacaoItem.Custo);
            Assert.AreEqual(5, cotacaoItem.Mva);
            Assert.AreEqual(80, cotacaoItem.QuantidadeDisponivel);
            Assert.AreEqual(DateTime.Today.AddMonths(1), cotacaoItem.PrazoDeEntrega);
            Assert.AreEqual("observacoes", cotacaoItem.Observacoes);
        }
Esempio n. 12
0
        public int AtualizarCotacao(CotacaoMaterialInformarVm cotacaoInformarVm)
        {
            try
            {
                _unitOfWork.BeginTransaction();
                var processoDeCotacao = (ProcessoDeCotacaoDeMaterial)_processosDeCotacao.BuscaPorId(cotacaoInformarVm.IdProcessoCotacao).Single();
                CondicaoDePagamento condicaoDePagamento = _condicoesDePagamento.BuscaPeloCodigo(cotacaoInformarVm.CodigoCondicaoPagamento);
                Incoterm            incoterm            = _incoterms.BuscaPeloCodigo(cotacaoInformarVm.CodigoIncoterm).Single();

                var cotacao = processoDeCotacao.InformarCotacao(cotacaoInformarVm.CodigoFornecedor, condicaoDePagamento, incoterm,
                                                                cotacaoInformarVm.DescricaoIncoterm);

                _processosDeCotacao.Save(processoDeCotacao);
                _unitOfWork.Commit();
                return(cotacao.Id);
            }
            catch (Exception)
            {
                _unitOfWork.RollBack();
                throw;
            }
        }
Esempio n. 13
0
        public void QuandoAtualizoUmItemDeCotacaoAsPropriedadesSaoAlteradasCorretamente()
        {
            CondicaoDePagamento         condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            Incoterm                    incoterm            = DefaultObjects.ObtemIncotermPadrao();
            ProcessoDeCotacaoDeMaterial processoDeCotacao   = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAbertoPadrao();
            var fornecedor     = processoDeCotacao.FornecedoresParticipantes.First().Fornecedor.Codigo;
            var cotacao        = processoDeCotacao.InformarCotacao(fornecedor, condicaoDePagamento, incoterm, "Descrição do Incoterm");
            var itemDoProcesso = processoDeCotacao.Itens.First();
            var cotacaoItem    = (CotacaoMaterialItem)cotacao.InformarCotacaoDeItem(itemDoProcesso, 110, 0, 80, DateTime.Today.AddMonths(1), "observacoes");

            decimal valorLiquidoInicial = cotacaoItem.Preco;

            cotacaoItem.Atualizar(220, 10, 90, DateTime.Today.AddMonths(2), "observacoes alteradas");

            Assert.AreEqual(220, cotacaoItem.Preco);
            Assert.AreEqual(valorLiquidoInicial, cotacaoItem.PrecoInicial);
            Assert.AreEqual(220, cotacaoItem.ValorComImpostos);
            Assert.AreEqual(220, cotacaoItem.Custo);
            Assert.AreEqual(10, cotacaoItem.Mva);
            Assert.AreEqual(DateTime.Today.AddMonths(2), cotacaoItem.PrazoDeEntrega);
            Assert.AreEqual(90, cotacaoItem.QuantidadeDisponivel);
            Assert.AreEqual("observacoes alteradas", cotacaoItem.Observacoes);
        }
Esempio n. 14
0
        public void QuandoPersistoUmaCondicaoDePagamentoComSucessoConsigoConsultarPosteriormente()
        {
            try
            {
                UnitOfWorkNh.BeginTransaction();

                var condicaoDePagamento = new CondicaoDePagamento("C001", "CONDICAO 0001");
                UnitOfWorkNh.Session.Save(condicaoDePagamento);

                UnitOfWorkNh.Commit();
            }
            catch (Exception)
            {
                UnitOfWorkNh.RollBack();
                throw;
            }

            var condicoesDePagamento = ObjectFactory.GetInstance <ICondicoesDePagamento>();
            CondicaoDePagamento condicaoDePagamentoConsulta = condicoesDePagamento.BuscaPeloCodigo("C001");

            Assert.IsNotNull(condicaoDePagamentoConsulta);
            Assert.AreEqual("C001", condicaoDePagamentoConsulta.Codigo);
        }
Esempio n. 15
0
        public void QuandoRemoverASelecaoDeUmaCotacaoFicaDesmarcadaESemQuantidade()
        {
            ProcessoDeCotacaoDeMaterial processoDeCotacao = DefaultObjects.ObtemProcessoDeCotacaoDeMaterialAtualizado();
            Fornecedor fornecedor = DefaultObjects.ObtemFornecedorPadrao();

            processoDeCotacao.AdicionarFornecedor(fornecedor);
            processoDeCotacao.Abrir(DefaultObjects.ObtemUsuarioPadrao());
            Incoterm            incoterm            = DefaultObjects.ObtemIncotermPadrao();
            CondicaoDePagamento condicaoDePagamento = DefaultObjects.ObtemCondicaoDePagamentoPadrao();
            var cotacao             = processoDeCotacao.InformarCotacao(fornecedor.Codigo, condicaoDePagamento, incoterm, "Descrição do Incoterm 2");
            var processoCotacaoItem = processoDeCotacao.Itens.First();
            var cotacaoItem         = (CotacaoMaterialItem)cotacao.InformarCotacaoDeItem(processoCotacaoItem, new decimal(150.20), 180, 10, DateTime.Today.AddMonths(1), "obs fornec");
            Iva iva = DefaultObjects.ObtemIvaPadrao();

            cotacaoItem.Selecionar(new decimal(120.00), iva);

            Iva ivaAlteracao = DefaultObjects.ObtemIvaPadrao();

            cotacaoItem.RemoverSelecao(ivaAlteracao);

            Assert.IsFalse(cotacaoItem.Selecionada);
            Assert.IsNull(cotacaoItem.QuantidadeAdquirida);
            Assert.AreSame(ivaAlteracao, cotacaoItem.Iva);
        }
Esempio n. 16
0
 private static void PersistirCondicaoDePagamento(CondicaoDePagamento condicaoDePagamento)
 {
     PersistirEntidade(condicaoDePagamento);
 }
Esempio n. 17
0
 protected bool Equals(CondicaoDePagamento other)
 {
     return(string.Equals(Codigo, other.Codigo));
 }