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); } }
public Cidade Obter(int Codigo) { return(cidadeRepositorio.Obter(Codigo)); }