public void DepoisDePersistirUmaRequisicaoDeCompraConsigoConsultar() { var requisicaoDeCompra = DefaultObjects.ObtemRequisicaoDeCompraPadrao(); DefaultPersistedObjects.PersistirRequisicaoDeCompra(requisicaoDeCompra); UnitOfWorkNh.Session.Clear(); RequisicaoDeCompra requisicaoConsultada = _requisicoesDeCompra.BuscaPeloId(requisicaoDeCompra.Id); Assert.IsNotNull(requisicaoConsultada); Assert.AreEqual(requisicaoDeCompra.Criador.Login, requisicaoConsultada.Criador.Login); Assert.AreEqual("requisitante", requisicaoConsultada.Requisitante); Assert.AreEqual(requisicaoDeCompra.FornecedorPretendido.Codigo, requisicaoConsultada.FornecedorPretendido.Codigo); Assert.AreEqual(requisicaoDeCompra.Material.Codigo, requisicaoConsultada.Material.Codigo); Assert.AreEqual(DateTime.Today.AddDays(-2), requisicaoConsultada.DataDeRemessa); Assert.AreEqual(DateTime.Today.AddDays(-1), requisicaoConsultada.DataDeLiberacao); Assert.AreEqual(DateTime.Today, requisicaoConsultada.DataDeSolicitacao); Assert.AreEqual("C001", requisicaoConsultada.Centro); Assert.AreEqual(requisicaoDeCompra.UnidadeMedida.CodigoInterno, requisicaoConsultada.UnidadeMedida.CodigoInterno); Assert.AreEqual(1000, requisicaoConsultada.Quantidade); Assert.AreEqual("Requisição de Compra enviada pelo SAP", requisicaoConsultada.Descricao); Assert.AreEqual(requisicaoDeCompra.Numero, requisicaoConsultada.Numero); Assert.AreEqual(requisicaoDeCompra.NumeroItem, requisicaoConsultada.NumeroItem); Assert.AreEqual(requisicaoDeCompra.CodigoGrupoDeCompra, requisicaoConsultada.CodigoGrupoDeCompra); Assert.AreEqual(requisicaoDeCompra.Mrp, requisicaoConsultada.Mrp); }
public void Bloquear(int idRequisicaoDeCompra) { try { _unitOfWork.BeginTransaction(); int quantidadeDeProcessosVinculados = _processosDeCotacaoDeMaterial.GeradosPelaRequisicaoDeCompra(idRequisicaoDeCompra).Count(); if (quantidadeDeProcessosVinculados > 0) { throw new RequisicaoDeCompraComProcessoDeCotacaoBloqueioException(); } RequisicaoDeCompra requisicaoDeCompra = _requisicoesDeCompra.BuscaPeloId(idRequisicaoDeCompra); requisicaoDeCompra.Bloquear(); _requisicoesDeCompra.Save(requisicaoDeCompra); _unitOfWork.Commit(); } catch (Exception) { _unitOfWork.RollBack(); throw; } }