示例#1
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);
            }
        }
示例#2
0
 public Cidade Obter(int Codigo)
 {
     return(cidadeRepositorio.Obter(Codigo));
 }