Example #1
0
        private LaudoViewModel PreencherViewModel(Laudo laudo)
        {
            var opcoesHelper = new OpcoesHelper(laudo);

            var viewModel = new LaudoViewModel
            {
                Laudo                      = laudo,
                LaudoId                    = laudo.LaudoID,
                StatusLaudo                = ((EnumStatusLaudo)laudo.Status).ToString(),
                MetodoDefinicaoValor       = RadioButtonHelper.ParseEnumToRadioButtonList((EnumMetodoDefinicaoValor)laudo.MetodoDefinicaoValor),
                DesempenhoMercado          = RadioButtonHelper.ParseEnumToRadioButtonList((EnumDesempenhoMercado)laudo.DesempenhoMercado),
                AbsorcaoMercado            = RadioButtonHelper.ParseEnumToRadioButtonList((EnumAbsorcaoMercado)laudo.AbsorcaoMercado),
                NumeroOfertas              = RadioButtonHelper.ParseEnumToRadioButtonList((EnumNivelImobiliario)laudo.NivelOfertas),
                NivelDemanda               = RadioButtonHelper.ParseEnumToRadioButtonList((EnumNivelImobiliario)laudo.NivelDemanda),
                FatoresLiquidezValorImovel = RadioButtonHelper.ParseEnumToRadioButtonList((EnumFatoresLiquidezValorImovel)laudo.FatoresLiquidezValorImovel),
                EstabilidadeSolidez        = RadioButtonHelper.ParseEnumToRadioButtonList((EnumEstabilidadeSimOuNao)laudo.EstabilidadeSolidez),
                ViciosConstrucao           = RadioButtonHelper.ParseEnumToRadioButtonList((EnumVicioSimOuNao)laudo.ViciosConstrucao),
                CondicoesHabitabilidade    = RadioButtonHelper.ParseEnumToRadioButtonList((EnumHabitabilidadeSimOuNao)laudo.Habitabilidade),
                AceitoComoGarantia         = RadioButtonHelper.ParseEnumToRadioButtonList((EnumGarantiaSimOuNao)laudo.AceitoComoGarantia),
                ConformidadeDocumentacao   = RadioButtonHelper.ParseEnumToRadioButtonList((EnumConformidadeDocumentacaoSimOuNao)laudo.ConformidadeDocumentacao),
                // Identificação
                ListaEstados         = opcoesHelper.ObterOpcoesEstado(EstadoRepositorio.BuscarTodos(WorkLifetimeManager.Value)),
                ListaCidades         = opcoesHelper.ObterOpcoesCidade(CidadeRepositorio.BuscarTodasEstado(WorkLifetimeManager.Value, laudo.Imovel.Cidade.Estado.Sigla)),
                ListaTiposLogradouro = opcoesHelper.ObterOpcoesTipoLogradouro(TipoLogradouroRepositorio.BuscarTodos(WorkLifetimeManager.Value)),
                ListaFontes          = opcoesHelper.ObterOpcoesFonte(FonteRepositorio.BuscarTodos(WorkLifetimeManager.Value)),
                ListaLinhas          = opcoesHelper.ObterOpcoesLinha(LinhaRepositorio.BuscarTodos(WorkLifetimeManager.Value)),
                ListaProdutos        = opcoesHelper.ObterOpcoesProduto(ProdutoRepositorio.BuscarTodos(WorkLifetimeManager.Value)),
                // Caracterização da Região
                ListaServicosPublicosComunitarios = opcoesHelper.ObterOpcoesEnum <EnumServicoPublicoComunitario>(),
                ListaInfraEstruturasUrbanas       = opcoesHelper.ObterOpcoesEnum <EnumInfraEstruturaUrbana>(),
                // Final
                ListaComarcas             = opcoesHelper.ObterOpcoesCidade(CidadeRepositorio.BuscarTodasEstado(WorkLifetimeManager.Value, laudo.Imovel.Cidade.Estado.Sigla)),
                ListaResponsaveisTecnicos = opcoesHelper.ObterOpcoesResponsaveisTecnicos(UsuarioRepositorio.BuscarPorPerfil(WorkLifetimeManager.Value, EnumPerfil.UsuarioComum)),
                ListaRepresentantesLegais = opcoesHelper.ObterOpcoesRepresentantesLegais(UsuarioRepositorio.BuscarPorPerfil(WorkLifetimeManager.Value, EnumPerfil.Administrador)),
            };

            MarcarServicosPublicosComunitarios(viewModel.ListaServicosPublicosComunitarios, laudo.ListaServicoPublicoComunitario);
            MarcarInfraEstruturasUrbanas(viewModel.ListaInfraEstruturasUrbanas, laudo.ListaInfraEstruturaUrbana);

            if (laudo.DataHoraVistoria.HasValue)
            {
                viewModel.DataVistoria = laudo.DataHoraVistoria.Value.Date.ToString("dd/MM/yyyy");
                viewModel.HoraVistoria = laudo.DataHoraVistoria.Value.ToString("HH:mm");
            }

            return(viewModel);
        }
Example #2
0
        public Imovel GerarImovelAPartirArquivo(string[] linhasArquivo)
        {
            var imovel = new Imovel
            {
                TipoLogradouro       = TipoLogradouroRepositorio.ObterPorSigla(UnitOfWork, ExtrairTipoLogradouro(linhasArquivo[LOGRADOURO_ENDERECO])),
                NomeCliente          = ObterTexto(linhasArquivo[CLIENTE]),
                IdentificacaoCliente = ObterTexto(linhasArquivo[IDENTIFICACAO_CLIENTE]),
                Endereco             = ObterEndereco(linhasArquivo[LOGRADOURO_ENDERECO]),
                Numero      = ObterNumero(linhasArquivo[NUMERO], 3),
                Complemento = ObterTextoSegundoCampo(linhasArquivo[NUMERO]),
                CEP         = ObterTexto(linhasArquivo[CEP_BAIRRO], 10),
                Bairro      = ObterTextoSegundoCampo(linhasArquivo[CEP_BAIRRO])
            };

            PreencherCidadeUF(linhasArquivo[CIDADE_UF], imovel);

            return(imovel);
        }
Example #3
0
        private void AtualizarLaudo(Laudo laudo, LaudoViewModel model)
        {
            #region Identificação
            if (laudo.Imovel.Cidade.Estado.EstadoID != model.Laudo.Imovel.Cidade.Estado.EstadoID)
            {
                laudo.Imovel.Cidade.Estado = EstadoRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.Imovel.Cidade.Estado.EstadoID);
            }
            if (laudo.Imovel.Cidade.CidadeID != model.Laudo.Imovel.Cidade.CidadeID)
            {
                laudo.Imovel.Cidade = CidadeRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.Imovel.Cidade.CidadeID);
            }
            if (laudo.Imovel.TipoLogradouro.TipoLogradouroID != model.Laudo.Imovel.TipoLogradouro.TipoLogradouroID)
            {
                laudo.Imovel.TipoLogradouro = TipoLogradouroRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.Imovel.TipoLogradouro.TipoLogradouroID);
            }

            laudo.Imovel.Endereco    = model.Laudo.Imovel.Endereco;
            laudo.Imovel.Numero      = model.Laudo.Imovel.Numero;
            laudo.Imovel.Complemento = model.Laudo.Imovel.Complemento;
            laudo.Produto            = model.Laudo.Produto;
            laudo.Linha = model.Laudo.Linha;
            laudo.Fonte = model.Laudo.Fonte;
            laudo.Imovel.NomeCliente = model.Laudo.Imovel.NomeCliente;
            #endregion

            #region Caracterização da Região
            laudo.UsosPredominantes = model.Laudo.UsosPredominantes;

            RemoverOuAdicionarServicosPublicos(laudo, model);

            RemoverOuAdicionarInfraEstruturaUrbana(laudo, model);
            #endregion

            #region Terreno
            laudo.FormaTerreno          = model.Laudo.FormaTerreno;
            laudo.CotaGreideTerreno     = model.Laudo.CotaGreideTerreno;
            laudo.InclinacaoTerreno     = model.Laudo.InclinacaoTerreno;
            laudo.SituacaoTerreno       = model.Laudo.SituacaoTerreno;
            laudo.SuperficieTerreno     = model.Laudo.SuperficieTerreno;
            laudo.MedidaAreaTerreno     = model.Laudo.MedidaAreaTerreno;
            laudo.MedidaFrenteTerreno   = model.Laudo.MedidaFrenteTerreno;
            laudo.MedidaFundosTerreno   = model.Laudo.MedidaFundosTerreno;
            laudo.MedidaDireitaTerreno  = model.Laudo.MedidaDireitaTerreno;
            laudo.MedidaEsquerdaTerreno = model.Laudo.MedidaEsquerdaTerreno;
            laudo.FracaoIdealTerreno    = model.Laudo.FracaoIdealTerreno;
            #endregion

            #region Edificação
            laudo.TipoEdificacao                = model.Laudo.TipoEdificacao;
            laudo.UsoEdificacao                 = model.Laudo.UsoEdificacao;
            laudo.NumeroPavimentos              = model.Laudo.NumeroPavimentos;
            laudo.IdadeEdificio                 = model.Laudo.IdadeEdificio;
            laudo.PosicaoEdificacao             = model.Laudo.PosicaoEdificacao;
            laudo.PadraoAcabamento              = model.Laudo.PadraoAcabamento;
            laudo.EstadoConservacao             = model.Laudo.EstadoConservacao;
            laudo.Tetos                         = model.Laudo.Tetos;
            laudo.FechamentoParedes             = model.Laudo.FechamentoParedes;
            laudo.NumeroVagasCobertas           = model.Laudo.NumeroVagasCobertas;
            laudo.NumeroVagasDescobertas        = model.Laudo.NumeroVagasDescobertas;
            laudo.AreaUnidadePrivativa          = model.Laudo.AreaUnidadePrivativa;
            laudo.AreaUnidadeComum              = model.Laudo.AreaUnidadeComum;
            laudo.AreaUnidadeTotal              = model.Laudo.AreaUnidadeTotal;
            laudo.AreaEstacionamentoPrivativa   = model.Laudo.AreaEstacionamentoPrivativa;
            laudo.AreaEstacionamentoComum       = model.Laudo.AreaEstacionamentoComum;
            laudo.AreaEstacionamentoTotal       = model.Laudo.AreaEstacionamentoTotal;
            laudo.AreaOutrosPrivativa           = model.Laudo.AreaOutrosPrivativa;
            laudo.AreaOutrosComum               = model.Laudo.AreaOutrosComum;
            laudo.AreaOutrosTotal               = model.Laudo.AreaOutrosTotal;
            laudo.AreaTotalPrivativa            = model.Laudo.AreaTotalPrivativa;
            laudo.AreaTotalComum                = model.Laudo.AreaTotalComum;
            laudo.AreaTotalAverbada             = model.Laudo.AreaTotalAverbada;
            laudo.AreaTotalNaoAverbada          = model.Laudo.AreaTotalNaoAverbada;
            laudo.SomatorioAreas                = model.Laudo.SomatorioAreas;
            laudo.NumeroQuartos                 = model.Laudo.NumeroQuartos;
            laudo.NumeroSalas                   = model.Laudo.NumeroSalas;
            laudo.NumeroCirculacao              = model.Laudo.NumeroCirculacao;
            laudo.NumeroBanheiros               = model.Laudo.NumeroBanheiros;
            laudo.NumeroSuites                  = model.Laudo.NumeroSuites;
            laudo.NumeroClosets                 = model.Laudo.NumeroClosets;
            laudo.NumeroCopas                   = model.Laudo.NumeroCopas;
            laudo.NumeroCozinhas                = model.Laudo.NumeroCozinhas;
            laudo.NumeroAreasServico            = model.Laudo.NumeroAreasServico;
            laudo.NumeroVarandas                = model.Laudo.NumeroVarandas;
            laudo.NumeroTerracosCobertos        = model.Laudo.NumeroTerracosCobertos;
            laudo.NumeroTerracosDescobertos     = model.Laudo.NumeroTerracosDescobertos;
            laudo.UsoPredio                     = model.Laudo.UsoPredio;
            laudo.NumeroPavimentosPredio        = model.Laudo.NumeroPavimentosPredio;
            laudo.NumeroUnidadesPredio          = model.Laudo.NumeroUnidadesPredio;
            laudo.NumeroElevadoresPredio        = model.Laudo.NumeroElevadoresPredio;
            laudo.PosicaoPredio                 = model.Laudo.PosicaoPredio;
            laudo.PadraoConstrutivoPredio       = model.Laudo.PadraoConstrutivoPredio;
            laudo.EstadoConservacaoPredio       = model.Laudo.EstadoConservacaoPredio;
            laudo.IdentificacaoPavimentosPredio = model.Laudo.IdentificacaoPavimentosPredio;
            laudo.IdadeAparentePredio           = model.Laudo.IdadeAparentePredio;
            #endregion

            #region Avaliação
            laudo.ValorAvaliacao                 = model.Laudo.ValorAvaliacao;
            laudo.ValorAvaliacaoExtenso          = model.Laudo.ValorAvaliacaoExtenso;
            laudo.MetodoDefinicaoValor           = (int)model.MetodoDefinicaoValor.SelectedValue;
            laudo.AreaGlobal                     = model.Laudo.AreaGlobal;
            laudo.ValorMetroQuadradoGlobal       = model.Laudo.ValorMetroQuadradoGlobal;
            laudo.ValorTotalGlobal               = model.Laudo.ValorTotalGlobal;
            laudo.AreaTerreno                    = model.Laudo.AreaTerreno;
            laudo.AreaEdificacao                 = model.Laudo.AreaEdificacao;
            laudo.AreaBenfeitorias               = model.Laudo.AreaBenfeitorias;
            laudo.ValorMetroQuadradoTerreno      = model.Laudo.ValorMetroQuadradoTerreno;
            laudo.ValorMetroQuadradoEdificacao   = model.Laudo.ValorMetroQuadradoEdificacao;
            laudo.ValorMetroQuadradoBenfeitorias = model.Laudo.ValorMetroQuadradoBenfeitorias;
            laudo.ProdutoTerreno                 = model.Laudo.ProdutoTerreno;
            laudo.ProdutoEdificacao              = model.Laudo.ProdutoEdificacao;
            laudo.ProdutoBenfeitorias            = model.Laudo.ProdutoBenfeitorias;
            laudo.ValorTotalItemizada            = model.Laudo.ValorTotalItemizada;
            laudo.PrecisaoFundamentacao          = model.Laudo.PrecisaoFundamentacao;
            laudo.MetodologiaAvaliacao           = model.Laudo.MetodologiaAvaliacao;
            laudo.DesempenhoMercado              = (int)model.DesempenhoMercado.SelectedValue;
            laudo.AbsorcaoMercado                = (int)model.AbsorcaoMercado.SelectedValue;
            laudo.NivelOfertas                   = (int)model.NumeroOfertas.SelectedValue;
            laudo.NivelDemanda                   = (int)model.NivelDemanda.SelectedValue;
            laudo.ObservacoesAvaliacao           = model.Laudo.ObservacoesAvaliacao;
            #endregion

            #region Informações Complementares
            laudo.EstabilidadeSolidez = model.Laudo.EstabilidadeSolidez;
            laudo.EstabilidadeSolidezJustificativa = model.Laudo.EstabilidadeSolidezJustificativa;
            laudo.ViciosConstrucao            = model.Laudo.ViciosConstrucao;
            laudo.ViciosConstrucaoRelacao     = model.Laudo.ViciosConstrucaoRelacao;
            laudo.Habitabilidade              = model.Laudo.Habitabilidade;
            laudo.HabitabilidadeJustificativa = model.Laudo.HabitabilidadeJustificativa;
            laudo.FatoresLiquidezValorImovel  = (int)model.FatoresLiquidezValorImovel.SelectedValue;
            laudo.FatoresLiquidezExplicitacao = model.Laudo.FatoresLiquidezExplicitacao;
            #endregion

            #region Garantia, Documentação Apresentada
            laudo.AceitoComoGarantia = (int)model.AceitoComoGarantia.SelectedValue;

            laudo.MatriculaRGI = model.Laudo.MatriculaRGI;
            laudo.Oficio       = model.Laudo.Oficio;

            if (model.Laudo.Comarca == null || model.Laudo.Comarca.CidadeID == 0)
            {
                laudo.Comarca = null;
            }
            else if (laudo.Comarca == null || laudo.Comarca.CidadeID != model.Laudo.Comarca.CidadeID)
            {
                laudo.Comarca = CidadeRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.Comarca.CidadeID);
            }

            laudo.OutrosDocumentos         = model.Laudo.OutrosDocumentos;
            laudo.ConformidadeDocumentacao = (int)model.ConformidadeDocumentacao.SelectedValue;
            laudo.Divergencia = model.Laudo.Divergencia;
            #endregion

            #region Observações Finais
            laudo.ObservacoesFinais = model.Laudo.ObservacoesFinais;
            laudo.LocalEmissaoLaudo = model.Laudo.LocalEmissaoLaudo;

            if (model.Laudo.ResponsavelTecnico == null || model.Laudo.ResponsavelTecnico.UsuarioId == 0)
            {
                laudo.ResponsavelTecnico = null;
            }
            else if (laudo.ResponsavelTecnico == null || laudo.ResponsavelTecnico.UsuarioId != model.Laudo.ResponsavelTecnico.UsuarioId)
            {
                laudo.ResponsavelTecnico = UsuarioRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.ResponsavelTecnico.UsuarioId);
            }

            if (model.Laudo.RepresentanteLegalEmpresa == null || model.Laudo.RepresentanteLegalEmpresa.UsuarioId == 0)
            {
                laudo.RepresentanteLegalEmpresa = null;
            }
            else if (laudo.RepresentanteLegalEmpresa == null || laudo.RepresentanteLegalEmpresa.UsuarioId != model.Laudo.RepresentanteLegalEmpresa.UsuarioId)
            {
                laudo.RepresentanteLegalEmpresa = UsuarioRepositorio.Obter(WorkLifetimeManager.Value, model.Laudo.RepresentanteLegalEmpresa.UsuarioId);
            }
            #endregion

            if (laudo.Status == (int)EnumStatusLaudo.AFazer)
            {
                VerificarStatusLaudo(laudo);
            }
        }