public Laudo GerarLaudoAPartirArquivo(Stream stream) { List <string> linhas = new List <string>(); using (StreamReader reader = new StreamReader(stream, System.Text.Encoding.UTF8)) { string linha; while ((linha = reader.ReadLine()) != null) { linhas.Add(linha); } reader.Close(); } var linhasArquivo = linhas.ToArray(); var referencia = ObterTexto(linhasArquivo[REFERENCIA], 30); var textoSolicitante = linhasArquivo[SOLICITANTE].Trim() + linhasArquivo[SOLICITANTE2].Trim(); Laudo laudo = LaudoRepository.ObterPorReferencia(UnitOfWork, referencia) ?? new Laudo { Referencia = referencia, Solicitante = ObterSolicitante(textoSolicitante), Produto = ProdutoRepositorio.ObterPorCodigo(UnitOfWork, ObterNumero(linhasArquivo[PRODUTO], 3)), Linha = LinhaRepositorio.ObterPorCodigo(UnitOfWork, ObterNumero(linhasArquivo[LINHA], 3)), Fonte = FonteRepositorio.ObterPorCodigo(UnitOfWork, ObterNumero(linhasArquivo[FONTE], 3)), Status = (int)EnumStatusLaudo.Importado, FormaTerreno = (int)EnumFormaTerreno.Retangular, InclinacaoTerreno = (int)EnumInclinacaoTerreno.Plano, SituacaoTerreno = (int)EnumSituacaoTerreno.MeioQuadra, SuperficieTerreno = (int)EnumSuperficieTerreno.Seco, FracaoIdealTerreno = 0.000000f, AceitoComoGarantia = (int)EnumGarantiaSimOuNao.GarSim, EstabilidadeSolidez = (int)EnumEstabilidadeSimOuNao.EstSim, Habitabilidade = (int)EnumHabitabilidadeSimOuNao.HabitSim, ViciosConstrucao = (int)EnumVicioSimOuNao.VicioNao, FatoresLiquidezValorImovel = (int)EnumFatoresLiquidezValorImovel.Nenh, ConformidadeDocumentacao = (int)EnumConformidadeDocumentacaoSimOuNao.DocSim }; laudo.Imovel = GerarImovelAPartirArquivo(linhasArquivo); return(laudo); }
public LaudoService(LaudoRepository laudoRepository) { this.laudoRepository = laudoRepository; }