public ActionResult PessoaModalVisualizar(int id, int internoId = 0, bool isConjuge = false) { PessoaVM vm = new PessoaVM(); if (id > 0) { vm.Pessoa = _bus.Obter(id); } else { vm.Pessoa = _bus.ObterPessoa(interno: internoId); vm.Pessoa.Id = _bus.Obter(vm.Pessoa.CPFCNPJ, simplificado: true, credenciadoId: _bus.User.FuncionarioId).Id; if (vm.Pessoa.IsJuridica) { vm.Pessoa.Juridica.Representantes.ForEach(representante => { representante.IsCopiado = true; }); } } vm.CpfCnpjValido = true; vm.ExibirMensagensPartial = true; vm.OcultarLimparPessoa = true; vm.IsVisualizar = true; vm.IsConjuge = isConjuge; vm.TipoCadastro = vm.Pessoa.Tipo; CarregaCampos(vm); PreencheSalvarVM(vm); vm.UrlAcao = Url.Action("Visualizar", "Pessoa"); return(PartialView("PessoaModal", vm)); }
public bool Salvar(Empreendimento empreendimento) { try { if (_validar.Salvar(empreendimento)) { Mensagem erros = VerificarLocalizacaoEmpreendimento(empreendimento.Coordenada.EastingUtmTexto, empreendimento.Coordenada.NorthingUtmTexto, empreendimento.Enderecos[0].EstadoId, empreendimento.Enderecos[0].MunicipioId); if (erros.Texto != null) { Validacao.Add(erros); return(Validacao.EhValido); } empreendimento.CredenciadoId = User.FuncionarioId; if (empreendimento.InternoId.GetValueOrDefault() > 0) { empreendimento.InternoTid = new EmpreendimentoInternoBus().ObterSimplificado(empreendimento.InternoId.Value).Tid; } if (empreendimento.Coordenada.Tipo.Id > 0) { empreendimento.Coordenada.Datum.Sigla = ListaCredenciadoBus.Datuns.SingleOrDefault(x => Equals(x.Id, empreendimento.Coordenada.Datum.Id)).Sigla; } #region Utilizar o mesmo endereço de localização if (empreendimento.Enderecos.Count == 1) { Endereco enderecoLocalizacao = empreendimento.Enderecos.First(); Endereco endereco = new Endereco(); endereco.Correspondencia = 1; endereco.Cep = enderecoLocalizacao.Cep; endereco.Logradouro = enderecoLocalizacao.Logradouro; endereco.Bairro = enderecoLocalizacao.Bairro; endereco.EstadoId = enderecoLocalizacao.EstadoId; endereco.MunicipioId = enderecoLocalizacao.MunicipioId; endereco.Numero = enderecoLocalizacao.Numero; endereco.DistritoLocalizacao = enderecoLocalizacao.DistritoLocalizacao; endereco.Complemento = enderecoLocalizacao.Complemento; empreendimento.Enderecos.Add(endereco); } #endregion GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); PessoaCredenciadoBus pessoaCredenciadoBus = new PessoaCredenciadoBus(); Pessoa aux; List <Mensagem> mensagens = new List <Mensagem>(); foreach (Responsavel responsavel in empreendimento.Responsaveis) { if (responsavel.Id <= 0) { aux = pessoaCredenciadoBus.ObterPessoa(interno: responsavel.InternoId); Pessoa pessoaCredenciado = pessoaCredenciadoBus.Obter(aux.CPFCNPJ, bancoDeDados, simplificado: true, credenciadoId: User.FuncionarioId); aux.Id = pessoaCredenciado.Id; pessoaCredenciadoBus.Salvar(aux, bancoDeDados); responsavel.Id = aux.Id; if (!Validacao.EhValido) { mensagens.Add(Mensagem.Pessoa.DadosRepresentanteIncompleto(aux.NomeRazaoSocial)); } } } if (!Validacao.EhValido) { mensagens.ForEach(msg => { msg.Texto = msg.Texto.Replace("representante", "responsável"); }); Validacao.Erros = mensagens; bancoDeDados.Rollback(); return(false); } _da.Salvar(empreendimento, bancoDeDados); #region Solicitação de CAR CARSolicitacaoBus carSolicitacaoBus = new CARSolicitacaoBus(); CARSolicitacao carSolicitacao = new CARSolicitacao(); carSolicitacao.Empreendimento.Id = empreendimento.Id; //carSolicitacaoBus.AlterarSituacao(carSolicitacao, new CARSolicitacao() { SituacaoId = (int)eCARSolicitacaoSituacao.Invalido }, bancoDeDados); #endregion bancoDeDados.Commit(); } } } catch (Exception exc) { Validacao.AddErro(exc); } return(Validacao.EhValido); }
public bool Salvar(CredenciadoPessoa credenciado, bool isPublico = false) { if (credenciado.Tipo <= 0) { Validacao.Add(Mensagem.Credenciado.TipoObrigatorio); } #region Orgao Parceiro/ Conveniado if (credenciado.Tipo == (int)eCredenciadoTipo.OrgaoParceiroConveniado) { if (!credenciado.Pessoa.IsFisica) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroPessoaTipoInvalido); return(Validacao.EhValido); } if (credenciado.OrgaoParceiroId <= 0) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroObrigatorio); } if (credenciado.OrgaoParceiroUnidadeId <= 0) { if (_busOrgaoParceiro.ExisteUnidade(credenciado.OrgaoParceiroId)) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroUnidadeObrigatoria); } } if (Validacao.EhValido) { OrgaoParceiroConveniado orgaoParceiro = _busOrgaoParceiro.Obter(credenciado.OrgaoParceiroId); if (orgaoParceiro.Id <= 0) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroInexistente); } else { if (orgaoParceiro.SituacaoId == (int)eOrgaoParceiroConveniadoSituacao.Bloqueado) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroSituacaoInvalida(orgaoParceiro.Sigla)); } if (!orgaoParceiro.Unidades.Exists(x => x.Id == credenciado.OrgaoParceiroUnidadeId) && _busOrgaoParceiro.ExisteUnidade(credenciado.OrgaoParceiroId)) { Validacao.Add(Mensagem.Credenciado.OrgaoParceiroUnidadeInexistente); } } } } #endregion if (isPublico) { credenciado.Pessoa.Fisica.ConjugeId = 0; } else { credenciado.Pessoa.Fisica.Conjuge = _busPessoa.ObterPessoa(credenciado.Pessoa.Fisica.ConjugeCPF); } VerificarPessoaCriar(credenciado, isPublico); VerificarExisteTelefone(credenciado); VerificarEmail(credenciado.Pessoa); VerificarEndereco(credenciado.Pessoa.Endereco); return(Validacao.EhValido); }