public KendoGridVm CotacoesDosFornecedoresResumido(int idProcessoCotacao) { List <FornecedorParticipante> fornecedoresParticipantes = (from p in _processosDeCotacao.BuscaPorId(idProcessoCotacao).GetQuery() from fp in p.FornecedoresParticipantes select fp).ToList(); var registros = new List <ProcessoCotacaoFornecedorVm>(); foreach (var fornecedorParticipante in fornecedoresParticipantes) { ProcessoCotacaoIteracaoUsuario iteracaoUsuario = _iteracoesUsuario.BuscaPorIdParticipante(fornecedorParticipante.Id); var vm = new ProcessoCotacaoFornecedorVm { IdFornecedorParticipante = fornecedorParticipante.Id, Codigo = fornecedorParticipante.Fornecedor.Codigo, Nome = fornecedorParticipante.Fornecedor.Nome, VisualizadoPeloFornecedor = iteracaoUsuario != null && iteracaoUsuario.VisualizadoPeloFornecedor ? "Sim" : "Não" }; if (fornecedorParticipante.Cotacao != null) { var cotacaoItem = fornecedorParticipante.Cotacao.Itens.SingleOrDefault(); if (cotacaoItem != null) { vm.Selecionado = (cotacaoItem.Selecionada ? "Sim" : "Não"); vm.ValorLiquido = cotacaoItem.Preco; vm.ValorComImpostos = cotacaoItem.ValorComImpostos; vm.QuantidadeDisponivel = cotacaoItem.QuantidadeDisponivel; } } registros.Add(vm); } var kendoGridVm = new KendoGridVm() { QuantidadeDeRegistros = registros.Count, Registros = registros.Cast <ListagemVm>().ToList() }; return(kendoGridVm); }
public void ConsigoConsultarCotacaoResumidaDosFornecedoresDeUmProcessoDeCotacaoDeFrete() { ProcessoDeCotacaoDeFrete processo = DefaultObjects.ObtemProcessoDeCotacaoDeFreteComCotacaoNaoSelecionada(); DefaultPersistedObjects.PersistirProcessoDeCotacaoDeFrete(processo); FornecedorParticipante fornecedorParticipante = processo.FornecedoresParticipantes.Single(); Fornecedor fornecedor = fornecedorParticipante.Fornecedor; CotacaoItem cotacaoItem = fornecedorParticipante.Cotacao.Itens.Single(); var consulta = ObjectFactory.GetInstance <IConsultaProcessoDeCotacaoDeFrete>(); KendoGridVm kendoGridVm = consulta.CotacoesDosFornecedoresResumido(processo.Id); Assert.AreEqual(1, kendoGridVm.QuantidadeDeRegistros); ProcessoCotacaoFornecedorVm vm = kendoGridVm.Registros.Cast <ProcessoCotacaoFornecedorVm>().Single(); Assert.AreEqual(fornecedor.Codigo, vm.Codigo); Assert.AreEqual(fornecedor.Nome, vm.Nome); Assert.AreEqual(fornecedorParticipante.Id, vm.IdFornecedorParticipante); Assert.AreEqual(cotacaoItem.QuantidadeDisponivel, vm.QuantidadeDisponivel); Assert.AreEqual("Não", vm.Selecionado); Assert.AreEqual(cotacaoItem.ValorComImpostos, vm.ValorComImpostos); Assert.AreEqual(cotacaoItem.Preco, vm.ValorLiquido); }