public Visualizacao(RegistroVenda venda) { ID = venda.Id.ToString().ToUpper(); NFeRelacionada = venda.NotaFiscalRelacionada; DataVenda = venda.DataHoraVenda.ToString("dd-MM-yyyy"); Emitente = DefinicoesTemporarias.EmitenteAtivo; TipoFrete = venda.TipoFrete; PrazoEntrega = venda.PrazoEntrega != default(DateTime) ? venda.PrazoEntrega.ToString("dd/MM/yyyy") : null; PrazoPagamento = venda.PrazoPagamento; FormaPagamento = venda.FormaPagamento; CondicaoPagamento = venda.CondicaoPagamento; Observacoes = venda.Observações; using (var repo = new BaseGeral.Repositorio.Leitura()) { Cliente = repo.ObterCliente(venda.Cliente); Comprador = venda.Comprador != Guid.Empty ? repo.ObterComprador(venda.Comprador) : null; Motorista = venda.Motorista != Guid.Empty ? repo.ObterMotorista(venda.Motorista) : null; Vendedor = venda.Vendedor != Guid.Empty ? repo.ObterVendedor(venda.Vendedor) : null; ProdutosCompletos = venda.Produtos.Select(x => repo.ObterProduto(x.IdBase)).ToArray(); if (venda.Cancelado) { Cancelamento = repo.ObterCRV(venda.Id); } } Produtos = venda.Produtos.Select(x => new Produto { Descricao = ProdutosCompletos.First(k => k.Id == x.IdBase).Descricao, Quantidade = x.Quantidade.ToString("N2"), TotalBruto = (x.Quantidade * x.ValorUnitario).ToString("N2") }).ToList(); }