private function exibir($request, $id, $id_tipo_pessoa, $preview, $bool_exibir_perfil) { if ($request->ajax()) { return URL::to($this->rota . '/' . $id . '/edit'); } //Validação de permissão if (\App\ValidacoesAcesso::PodeAcessarPagina(\Config::get('app.' . $this->rota)) == false) { return redirect('home'); } //Verificar qual o tipo de pessoa para habilitar ou não abas e campos conforme o tipo //Ex; Pessoa fisica, habilita cpf e rg, juridica habilita CNPJ, MEMBRO habilita dados especificos de membresia. $habilitar_interface = \App\Models\tipospessoas::findOrfail($id_tipo_pessoa); //Listagem grupos de pessoas (Para carregar dropdown ) $grupos = \App\Models\grupospessoas::where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->orderBy('nome', 'ASC')->get(); //Listagem de bancos (Para carregar dropdown ) $bancos = \App\Models\bancos::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome')->get(); $tipos_pessoas = \App\Models\tipospessoas::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome')->get(); /*Pessoas e dados financeiros*/ /*Usado dessa forma para formatar a data de nascimento */ $sQuery = "select to_char(datanasc, 'DD-MM-YYYY') AS datanasc_formatada, pessoas.*, financ_pessoas.id as id_financ, financ_pessoas.bancos_id, financ_pessoas.endereco as endereco_cobranca, financ_pessoas.numero as numero_cobranca, financ_pessoas.bairro as bairro_cobranca, financ_pessoas.cidade as cidade_cobranca, financ_pessoas.estado as estado_cobranca, financ_pessoas.cep as cep_cobranca, financ_pessoas.complemento as complemento_cobranca"; $sQuery .= " from pessoas left join financ_pessoas on financ_pessoas.pessoas_id = pessoas.id"; $sQuery .= " where pessoas.id = ? "; $sQuery .= " and pessoas.empresas_id = ? "; $sQuery .= " and pessoas.empresas_clientes_cloud_id = ? "; $sQuery .= " order by razaosocial "; $pessoas = \DB::select($sQuery, [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); /*Busca */ $celulas = \DB::select('select id, descricao_concatenada as nome from view_celulas_simples where empresas_id = ? and empresas_clientes_cloud_id = ? ', [$this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); /*Se for MEMBRO, busca informacoes em tabelas especificas*/ if ($habilitar_interface->membro) { //VERIFICA SE PARTICIPA DE CELULAS $membros_celula = \DB::select("select celulas_id, to_char(to_date(data_entrada_celula, 'yyyy-MM-dd'), 'DD-MM-YYYY') AS data_entrada_celula, descricao_concatenada_scod as nome from view_celulas_pessoas where pessoas_id = ? and empresas_id = ? and empresas_clientes_cloud_id = ? ", [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); if ($membros_celula == null) { unset($membros_celula); } /*Dados complementares de membros*/ $membros_dados_pessoais = \App\Models\membros_dados::select('membros_dados_pessoais.*', 'pessoas.razaosocial')->leftjoin('pessoas', 'pessoas.id', '=', 'membros_dados_pessoais.familias_id')->where('membros_dados_pessoais.empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('membros_dados_pessoais.empresas_id', $this->dados_login->empresas_id)->where('membros_dados_pessoais.pessoas_id', $id)->get(); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_dados_pessoais->count() == 0) { unset($membros_dados_pessoais); } /* Membros Historico Eclesiastico */ $sQuery = " select pessoas_id, empresas_id, empresas_clientes_cloud_id, "; $sQuery .= " igreja_anterior, fone_igreja_anterior, religioes_id, cep_igreja_anterior, endereco_igreja_anterior, "; $sQuery .= " numero_igreja_anterior, bairro_igreja_anterior, complemento_igreja_anterior, cidade_igreja_anterior, estado_igreja_anterior, "; $sQuery .= " igreja_batismo, celebrador, ata_entrada, ata_saida, motivos_saida_id, motivos_entrada_id, observacoes_hist, "; $sQuery .= " to_char(to_date(data_entrada, 'yyyy-MM-dd'), 'DD-MM-YYYY') AS data_entrada, "; $sQuery .= " to_char(to_date(data_saida, 'yyyy-MM-dd'), 'DD-MM-YYYY') AS data_saida, "; $sQuery .= " to_char(to_date(data_batismo, 'yyyy-MM-dd'), 'DD-MM-YYYY') AS data_batismo "; $sQuery .= " from membros_historicos "; $sQuery .= " where membros_historicos.pessoas_id = ? "; $sQuery .= " and membros_historicos.empresas_id = ? "; $sQuery .= " and membros_historicos.empresas_clientes_cloud_id = ? "; $membros_historico = \DB::select($sQuery, [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_historico == null) { unset($membros_historico); } /*Membros Filhos*/ $sQuery = " select membros_filhos.id as id_seq, filhos_id as id, filhos_id, nome_filho, sexo, status_id, estadocivil_id, estados_civis.id as id_estadocivil, estados_civis.nome as desc_estcivil, status.id as id_status, status.nome as desc_status, "; $sQuery .= " to_char(data_nasc, 'DD/MM/YYYY') AS data_nasc, "; $sQuery .= " to_char(data_falecimento, 'DD/MM/YYYY') AS data_falecimento "; $sQuery .= " from membros_filhos "; $sQuery .= " left join estados_civis on estados_civis.id = membros_filhos.estadocivil_id and estados_civis.clientes_cloud_id = membros_filhos.empresas_clientes_cloud_id"; $sQuery .= " left join status on status.id = membros_filhos.status_id and status.clientes_cloud_id = membros_filhos.empresas_clientes_cloud_id"; $sQuery .= " where membros_filhos.pessoas_id = ? "; $sQuery .= " and membros_filhos.empresas_id = ? "; $sQuery .= " and membros_filhos.empresas_clientes_cloud_id = ? "; $membros_filhos = \DB::select($sQuery, [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_filhos == null) { unset($membros_filhos); } /*Situacoes Membros*/ $membros_situacoes = \App\Models\membros_situacoes::select('situacoes_id as id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_situacoes->count() == 0) { unset($membros_situacoes); } /*Dados Profissionais Membros*/ $membros_profissionais = \App\Models\membros_profissionais::where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_profissionais->count() == 0) { unset($membros_profissionais); } /*CURSOS EVENTOS*/ $membros_cursos = \App\Models\membros_cursos::select('cursos.nome', 'data_inicio', 'data_fim', 'observacao', 'cursos.id', 'membros_cursos.ministrante_id', 'membros_cursos.pessoas_id', 'pessoas.razaosocial')->join('cursos', 'cursos.id', '=', 'membros_cursos.cursos_id')->leftjoin('pessoas', 'pessoas.id', '=', 'membros_cursos.ministrante_id')->where('membros_cursos.empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('membros_cursos.empresas_id', $this->dados_login->empresas_id)->where('membros_cursos.pessoas_id', $id)->get(); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_cursos->count() == 0) { unset($membros_cursos); } $sQuery = " select p3.razaosocial as razaosocial_mae, p2.razaosocial as razaosocial_pai, pessoas.razaosocial, pessoas_id, membros_familiares.empresas_id, membros_familiares.empresas_clientes_cloud_id, conjuge_id, nome_conjuge, "; $sQuery .= " to_char(data_falecimento, 'DD-MM-YYYY') AS data_falecimento, "; $sQuery .= " to_char(to_date(data_casamento, 'yyyy-MM-dd'), 'DD/MM/YYYY') AS data_casamento, "; $sQuery .= " to_char(data_nasc, 'DD-MM-YYYY') AS data_nasc,"; $sQuery .= " to_char(data_falecimento_pai, 'DD-MM-YYYY') AS data_falecimento_pai, "; $sQuery .= " to_char(data_falecimento_mae, 'DD-MM-YYYY') AS data_falecimento_mae, "; $sQuery .= " status_id, profissoes_id, igreja_casamento, pai_id, mae_id, nome_pai, nome_mae, status_pai_id, status_mae_id "; $sQuery .= " from membros_familiares"; $sQuery .= " left join pessoas on pessoas.id = membros_familiares.conjuge_id and pessoas.empresas_id = membros_familiares.empresas_id and pessoas.empresas_clientes_cloud_id = membros_familiares.empresas_clientes_cloud_id"; $sQuery .= " left join pessoas p2 on p2.id = membros_familiares.pai_id and p2.empresas_id = membros_familiares.empresas_id and p2.empresas_clientes_cloud_id = membros_familiares.empresas_clientes_cloud_id"; $sQuery .= " left join pessoas p3 on p3.id = membros_familiares.mae_id and p3.empresas_id = membros_familiares.empresas_id and p3.empresas_clientes_cloud_id = membros_familiares.empresas_clientes_cloud_id"; $sQuery .= " where membros_familiares.pessoas_id = ? "; $sQuery .= " and membros_familiares.empresas_id = ? "; $sQuery .= " and membros_familiares.empresas_clientes_cloud_id = ? "; $membros_familiares = \DB::select($sQuery, [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); /*Se nao retornar dados, inicializar variavel com uma colection qualquer*/ if ($membros_familiares == null) { unset($membros_familiares); } /*Dados Formacoes*/ $membros_formacoes = \App\Models\membros_formacoes::select('formacoes_id as id', 'nome')->join('areas_formacao', 'areas_formacao.id', '=', 'membros_formacoes.formacoes_id')->where('membros_formacoes.empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('membros_formacoes.empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_formacoes->count() == 0) { unset($membros_formacoes); } /*Dados idiomas*/ $membros_idiomas = \App\Models\membros_idiomas::select('idiomas_id as id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_idiomas->count() == 0) { unset($membros_idiomas); } /*Dons*/ $membros_dons = \App\Models\membros_dons::select('dons_id as id', 'dons.nome')->join('dons', 'dons.id', '=', 'membros_dons.dons_id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_dons->count() == 0) { unset($membros_dons); } /*habilidades*/ $membros_habilidades = \App\Models\membros_habilidades::select('habilidades_id as id', 'habilidades.nome')->join('habilidades', 'habilidades.id', '=', 'membros_habilidades.habilidades_id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_habilidades->count() == 0) { unset($membros_habilidades); } /*atividades*/ $membros_atividades = \App\Models\membros_atividades::select('atividades_id as id', 'atividades.nome')->join('atividades', 'atividades.id', '=', 'membros_atividades.atividades_id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_atividades->count() == 0) { unset($membros_atividades); } /*ministerios*/ $membros_ministerios = \App\Models\membros_ministerios::select('ministerios_id as id', 'ministerios.nome')->join('ministerios', 'ministerios.id', '=', 'membros_ministerios.ministerios_id')->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('empresas_id', $this->dados_login->empresas_id)->where('pessoas_id', $id)->get(); if ($membros_ministerios->count() == 0) { unset($membros_ministerios); } /*membros Relacionamentos*/ $membros_relacionamentos = \App\Models\membros_relacionamentos::select('tipos_relacionamentos_id as id', 'membros_relacionamentos.pessoas2_id', 'pessoas.razaosocial', 'tipos_relacionamentos.nome')->join('tipos_relacionamentos', 'tipos_relacionamentos.id', '=', 'membros_relacionamentos.tipos_relacionamentos_id')->join('pessoas', 'pessoas.id', '=', 'membros_relacionamentos.pessoas2_id')->where('membros_relacionamentos.empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->where('membros_relacionamentos.empresas_id', $this->dados_login->empresas_id)->where('membros_relacionamentos.pessoas_id', $id)->get(); if ($membros_relacionamentos->count() == 0) { unset($membros_relacionamentos); } } if ($habilitar_interface->membro) { /* Para preencher combos Dados eclesiasticos */ $cursos = \App\Models\cursos::where(['empresas_id' => $this->dados_login->empresas_id, 'empresas_clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id])->orderBy('nome', 'ASC')->get(); $igrejas = \App\Models\igrejas::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $situacoes = \App\Models\situacoes::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $idiomas = \App\Models\idiomas::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $status = \App\Models\status::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $profissoes = \App\Models\profissoes::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $ramos = \App\Models\ramos::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $cargos = \App\Models\cargos::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $graus = \App\Models\graus::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $formacoes = \App\Models\areas::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $estadoscivis = \App\Models\civis::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $disponibilidades = \App\Models\disponibilidades::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $dons = \App\Models\dons::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $tiposrelacionamentos = \App\Models\tiposrelacionamentos::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $habilidades = \App\Models\habilidades::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $religioes = \App\Models\religioes::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $atividades = \App\Models\atividades::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $ministerios = \App\Models\ministerios::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); $motivos = \App\Models\tiposmovimentacao::where('clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->orderBy('nome', 'ASC')->get(); /* FIM Para preencher combos Dados eclesiasticos*/ $view_pessoas_movimentacoes = \DB::select("select * from view_pessoas_movimentacoes where id = ? ", [$id]); if ($bool_exibir_perfil == "true") { $perfil = \DB::select("select * from view_perfil where id = ? and empresas_id = ? and empresas_clientes_cloud_id = ? ", [$id, $this->dados_login->empresas_id, $this->dados_login->empresas_clientes_cloud_id]); $pessoas_timeline = \DB::select("select to_char(datanasc, 'DD/MM/YYYY') AS datanasc, to_char(to_date(data_entrada, 'yyyy-MM-dd'), 'DD/MM/YYYY') AS data_entrada, to_char(to_date(data_entrada_celula, 'yyyy-MM-dd'), 'DD/MM/YYYY') AS data_entrada_celula, to_char(to_date(data_saida, 'yyyy-MM-dd'), 'DD/MM/YYYY') AS data_saida, to_char(to_date(data_batismo, 'yyyy-MM-dd'), 'DD/MM/YYYY') AS data_batismo from view_pessoas_timeline where id = ? ", [$id]); } else { $perfil = null; $pessoas_timeline = null; } //COLLECTION COM DADOS DA PESSOA $var_collections = array('grupos' => $grupos, 'preview' => $preview, 'interface' => $habilitar_interface, 'bancos' => $bancos, 'pessoas' => $pessoas, 'igrejas' => $igrejas, 'situacoes' => $situacoes, 'status' => $status, 'idiomas' => $idiomas, 'profissoes' => $profissoes, 'ramos' => $ramos, 'graus' => $graus, 'formacoes' => $formacoes, 'religioes' => $religioes, 'disponibilidades' => $disponibilidades, 'dons' => $dons, 'habilidades' => $habilidades, 'estadoscivis' => $estadoscivis, 'motivos' => $motivos, 'atividades' => $atividades, 'ministerios' => $ministerios, 'cargos' => $cargos, 'celulas' => $celulas, 'perfil' => $perfil, 'cursos' => $cursos, 'pessoas_timeline' => $pessoas_timeline, 'view_pessoas_movimentacoes' => $view_pessoas_movimentacoes, 'tiposrelacionamentos' => $tiposrelacionamentos, 'tipos_pessoas' => $tipos_pessoas); //ACRESCENTA AS COLLECTIONS SOMENTE SE HOUVEREM DADOS if (isset($membros_celula)) { $var_collections = array_add($var_collections, 'membros_celula', $membros_celula); } if (isset($membros_situacoes)) { $var_collections = array_add($var_collections, 'membros_situacoes', $membros_situacoes); } if (isset($membros_formacoes)) { $var_collections = array_add($var_collections, 'membros_formacoes', $membros_formacoes); } if (isset($membros_idiomas)) { $var_collections = array_add($var_collections, 'membros_idiomas', $membros_idiomas); } if (isset($membros_atividades)) { $var_collections = array_add($var_collections, 'membros_atividades', $membros_atividades); } if (isset($membros_historico)) { $var_collections = array_add($var_collections, 'membros_historico', $membros_historico); } if (isset($membros_ministerios)) { $var_collections = array_add($var_collections, 'membros_ministerios', $membros_ministerios); } if (isset($membros_familiares)) { $var_collections = array_add($var_collections, 'membros_familiares', $membros_familiares); } if (isset($membros_dons)) { $var_collections = array_add($var_collections, 'membros_dons', $membros_dons); } if (isset($membros_filhos)) { $var_collections = array_add($var_collections, 'membros_filhos', $membros_filhos); } if (isset($membros_habilidades)) { $var_collections = array_add($var_collections, 'membros_habilidades', $membros_habilidades); } if (isset($membros_profissionais)) { $var_collections = array_add($var_collections, 'membros_profissionais', $membros_profissionais); } if (isset($membros_relacionamentos)) { $var_collections = array_add($var_collections, 'membros_relacionamentos', $membros_relacionamentos); } if (isset($membros_cursos)) { $var_collections = array_add($var_collections, 'membros_cursos', $membros_cursos); } if (isset($membros_dados_pessoais)) { $var_collections = array_add($var_collections, 'membros_dados_pessoais', $membros_dados_pessoais); } //dd($var_collections); return view($this->rota . ($bool_exibir_perfil == "true" ? '.perfil' : '.edit'), $var_collections); } else { return view($this->rota . '.edit', ['grupos' => $grupos, 'preview' => $preview, 'interface' => $habilitar_interface, 'bancos' => $bancos, 'pessoas' => $pessoas, 'tipos_pessoas' => $tipos_pessoas]); } }
/** * Excluir registro do banco. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $dados = igrejas::findOrfail($id); $dados->delete(); return redirect($this->rota); }