public ActionResult Criar(PessoaVM vm) { string urlRedireciona = Url.Action("Criar", "Pessoa"); vm.CpfCnpjValido = true; vm.Pessoa.Ativa = 1; //Indica que pessoa está ativa no sistema if (vm.TipoCadastro != 0) { vm.Pessoa.Tipo = (vm.TipoCadastro == 2) ? PessoaTipo.JURIDICA : PessoaTipo.FISICA; } CarregaCampos(vm); if (vm.TipoCadastro == 1 && !vm.Pessoa.IsCopiado && (vm.Pessoa.Fisica.EstadoCivil == 2 || vm.Pessoa.Fisica.EstadoCivil == 5)) { vm.Pessoa.Fisica.ConjugeId = -1; } if (vm.Pessoa.IsFisica) { vm.Pessoa.IsValidarConjuge = !vm.IsConjuge; } if (_bus.Salvar(vm.Pessoa)) { Validacao.Add(Mensagem.Pessoa.Salvar); urlRedireciona += "?Msg=" + Validacao.QueryParam(); } return(Json(new { IsPessoaSalva = Validacao.EhValido, UrlRedireciona = urlRedireciona, @Pessoa = vm.Pessoa, Msg = Validacao.Erros })); }
public bool AlterarDados(CredenciadoPessoa credenciado, string senha, string confirmarSenha) { try { credenciado.Id = credenciado.Pessoa.CredenciadoId.GetValueOrDefault(); credenciado.Usuario.Id = User.UsuarioId; credenciado.Usuario.Login = User.Login; if (_validar.VerificarAlterarDados(credenciado, senha, confirmarSenha)) { GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(UsuarioCredenciado)) { bancoDeDados.IniciarTransacao(); #region Alterar senha if (credenciado.AlterarSenha) { string hashSenha = GerenciarAutenticacao.Criptografar(credenciado.Usuario.Login, senha); _busUsuario.AlterarSenha(credenciado.Usuario, hashSenha, GerenciarAutenticacao.ObterAutenticacaoExecutor(), bancoDeDados); } #endregion #region Pessoa _pessoaCredenciadoBus.Salvar(credenciado.Pessoa, bancoDeDados); CredenciadoPessoa aux = Obter(credenciado.Id, true); _da.Salvar(aux, bancoDeDados); bancoDeDados.Commit(); #endregion } } } catch (Exception exc) { Validacao.AddErro(exc); } return(Validacao.EhValido); }
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); }