private function exibir($request, $id, $preview, $perfil) { if (\App\ValidacoesAcesso::PodeAcessarPagina(\Config::get('app.profile')) == false) { return redirect('home'); } //preview = true, somente visualizacao, desabilita botao gravar $dados = users::findOrfail($id); $where = ['empresas.id' => $this->dados_login->empresas_id, 'clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id]; //Todas igrejas/instituições pertencentes a igreja sede $empresas = \App\Models\empresas::select('id', 'razaosocial')->where($where)->get(); return view('profile.perfil', ['dados' => $dados, 'preview' => $preview, 'dados_login' => $this->dados_login]); }
public function index() { if (\App\ValidacoesAcesso::PodeAcessarPagina(\Config::get('app.empresas')) == false) { return redirect('home'); } //Só exibir todas empresas se for usuário master if ($this->dados_login->master == 1) { $where = ['clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id]; } else { $where = ['clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id, 'id' => $this->dados_login->empresas_id]; } $emp = empresas::select('id', 'razaosocial', 'nomefantasia', 'cnpj', 'inscricaoestadual', 'igreja_sede')->where($where)->get(); return view('empresas.index', compact('emp')); }
private function exibir($request, $id, $preview, $perfil) { if ($request->ajax()) { return URL::to('usuarios/' . $id . '/edit'); } if (\App\ValidacoesAcesso::PodeAcessarPagina(\Config::get('app.profile')) == false) { return redirect('home'); } //Pega dados do grupo do usuario cadastrado $grupo_do_usuario = \App\Models\usuarios_grupo::select('usuarios.admin', 'usuarios_grupo.grupos_id', 'usuarios_grupo.usuarios_empresas_id', 'usuarios_grupo.usuarios_empresas_clientes_cloud_id')->join('usuarios', 'usuarios.id', '=', 'usuarios_grupo.usuarios_id')->join('grupos', 'grupos.id', '=', 'usuarios_grupo.grupos_id')->where('usuarios_grupo.usuarios_id', $id)->get(); //Todos grupos da empresa $grupos = \App\Models\grupos::select('id', 'nome')->where('empresas_id', $this->dados_login->empresas_id)->where('empresas_clientes_cloud_id', $this->dados_login->empresas_clientes_cloud_id)->get(); //preview = true, somente visualizacao, desabilita botao gravar $dados = users::findOrfail($id); //Só exibir todas empresas se for usuário master if ($this->dados_login->master == 1) { $where = ['clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id]; } else { $where = ['empresas.id' => $this->dados_login->empresas_id, 'clientes_cloud_id' => $this->dados_login->empresas_clientes_cloud_id]; } //Todas igrejas/instituições pertencentes a igreja sede $empresas = \App\Models\empresas::select('id', 'razaosocial')->where($where)->get(); if ($perfil == 'true') { return view('profile.perfil', ['dados' => $dados, 'preview' => $preview, 'grupos' => $grupos, 'empresas' => $empresas, 'grupo_do_usuario' => $grupo_do_usuario, 'dados_login' => $this->dados_login]); } else { return view('profile.edit', ['dados' => $dados, 'preview' => $preview, 'grupos' => $grupos, 'empresas' => $empresas, 'grupo_do_usuario' => $grupo_do_usuario, 'dados_login' => $this->dados_login]); } }
/** * Register any application authentication / authorization services. * * @param \Illuminate\Contracts\Auth\Access\Gate $gate * @return void */ public function boot(GateContract $gate) { $this->registerPolicies($gate); //Verificação : Se for usuário recém cadastrado, verifica se já cadastrou os dados da empresa $gate->define('verifica_permissao', function ($user, $pagina, $acao) { //--------Verificar se o usuario ja cadastrou os dados da empresa $cadastrou = \App\Models\usuario::find($user->id); if ($cadastrou) { //Verifica se a empresa logada é sede, para das as devidas permissoes ao master $verifica_sede = \App\Models\empresas::select('igreja_sede')->findOrfail($cadastrou->empresas_id); $nome_igreja = \App\Models\empresas::select('razaosocial', 'caminhologo')->findOrfail($cadastrou->empresas_id); \Session::put('master_sede', $verifica_sede); \Session::put('nome_igreja', $nome_igreja->razaosocial); \Session::put('logo', $nome_igreja->caminhologo); \Session::put('dados_login', $cadastrou); \Session::put('tour_rapido', $cadastrou->tutorial); \Session::put('admin', $cadastrou->admin); \Session::put('tour_visaogeral', $cadastrou->tutorial_visaogeral); \Session::put('membro', $cadastrou->membro); //Ler todas permissoes do usuarios $permissoes = \DB::select('select incluir, alterar, excluir, visualizar, exportar, acessar, imprimir from view_permissoes_grupo where view_permissoes_grupo.usuario = ? and id_pagina = ? ', [$user->id, $pagina]); if ($permissoes) { switch ($acao) { case 'incluir': if ($permissoes[0]->incluir == 1) { return true; } break; case 'alterar': if ($permissoes[0]->alterar == 1) { return true; } break; case 'excluir': if ($permissoes[0]->excluir == 1) { return true; } break; case 'visualizar': if ($permissoes[0]->visualizar == "1") { return true; } break; case 'exportar': if ($permissoes[0]->exportar == 1) { return true; } break; case 'imprimir': if ($permissoes[0]->imprimir == 1) { return true; } break; case 'acessar': if ($permissoes[0]->acessar == "1") { return true; } break; default: return true; //retorna true mesmo nao encontrando a ação, pois pode ser validacao somente se o usuario cadastrou os dados da empresa break; } } else { return false; } } else { return false; } }); //Verificação : Se for usuário recém cadastrado, verifica se já cadastrou os dados da empresa $gate->define('verifica_permissao_modulo', function ($user, $modulo) { if ($user) { //--------Verificar se o usuario ja cadastrou os dados da empresa $cadastrou = \App\Models\usuario::find($user->id); if ($cadastrou != null) { //Ler todas permissoes do usuarios $permissoes_modulos = \DB::select('select sum(acessar) as permissao_modulo, menu from view_permissoes_grupo where usuario = ? and menu = ? group by menu', [$user->id, $modulo]); if ($permissoes_modulos) { if ($permissoes_modulos[0]->permissao_modulo > 0) { return true; } } else { return false; } } else { return false; } } else { return false; } }); }
public function salvar($request, $id, $tipo_operacao) { $guarda_pai = 0; $input = $request->except(array('_token', 'ativo')); //não levar o token $this->validate($request, ['pessoas' => 'required', 'dia_encontro' => 'required', 'horario' => 'required']); if ($tipo_operacao == "create") { $dados = new celulas(); } else { $dados = celulas::findOrfail($id); $guarda_pai = $dados->celulas_pai_id; } $dados->dia_encontro = $input['dia_encontro']; if ($input["horario"] < "12:00") { $dados->turno = "M"; } else { if ($input["horario"] > "12:00" && $input["horario"] < "18:00") { $dados->turno = "T"; } else { if ($input["horario"] > "18:00") { $dados->turno = "N"; } } } //$dados->turno = $input['turno']; $dados->regiao = $input['regiao']; $dados->horario = $input['horario']; $dados->horario2 = $input['horario2']; $dados->segundo_dia_encontro = $input['segundo_dia_encontro']; $dados->obs = $input['obs']; $dados->email_grupo = $input['email_grupo']; $dados->faixa_etaria_id = $input['faixa_etaria'] == "" ? null : $input['faixa_etaria']; $dados->publico_alvo_id = $input['publico_alvo'] == "" ? null : $input['publico_alvo']; $dados->nome = $input['nome']; $dados->cor = $input['cor']; $dados->data_previsao_multiplicacao = $this->formatador->FormatarData($input["data_previsao_multiplicacao"]); $dados->celulas_nivel1_id = $input['nivel1'] == "" ? null : $input['nivel1']; $dados->celulas_nivel2_id = $input['nivel2'] == "" ? null : $input['nivel2']; $dados->celulas_nivel3_id = $input['nivel3'] == "" ? null : $input['nivel3']; $dados->celulas_nivel4_id = $input['nivel4'] == "" ? null : $input['nivel4']; $dados->celulas_nivel5_id = $input['nivel5'] == "" ? null : $input['nivel5']; $dados->lider_pessoas_id = $input['pessoas'] == "" ? null : substr($input['pessoas'], 0, 9); $dados->vicelider_pessoas_id = $input['vicelider_pessoas_id'] == "" ? null : substr($input['vicelider_pessoas_id'], 0, 9); $dados->suplente1_pessoas_id = $input['suplente1_pessoas_id'] == "" ? null : substr($input['suplente1_pessoas_id'], 0, 9); $dados->suplente2_pessoas_id = $input['suplente2_pessoas_id'] == "" ? null : substr($input['suplente2_pessoas_id'], 0, 9); $dados->empresas_clientes_cloud_id = $this->dados_login->empresas_clientes_cloud_id; $dados->empresas_id = $this->dados_login->empresas_id; $dados->celulas_pai_id = $input['celulas_pai_id'] == "" ? null : $input['celulas_pai_id']; //SE FOR EDICAO E USUARIO TENTAR COLOCAR A CELULA PAI DA PROPRIA CELULA... NAO DEIXAR if ($tipo_operacao != "create") { if ($dados->celulas_pai_id == $id) { $dados->celulas_pai_id = null; } } $dados->origem = $input['origem'] == "" ? null : $input['origem']; if (isset($input["endereco_encontro"])) { $dados->endereco_encontro = $input['endereco_encontro'] == "" ? null : $input['endereco_encontro']; } if ($input["origem"] == "1") { $dados->data_multiplicacao = date('Y-m-d'); } //BUSCAR SE O PAI TEM GERACAO GRAVADA //Se for NULO, considerar então celulas_pai_id, caso contrario , pega o conteudo celulas_id_geracao do PAI e replica na celula que esta sendo gravada if ($input["origem"] != "") { if ($dados->celulas_pai_id != null && $dados->celulas_pai_id != 0) { if ($guarda_pai == 0) { $guarda_pai = $dados->celulas_pai_id; } //BUSCA NA CELULA PAI SE TEM GERACAO INFORMADA $busca_geracao = \App\Models\celulas::select('celulas_id_geracao')->where('id', $dados->celulas_pai_id)->get(); if ($busca_geracao[0]->celulas_id_geracao == null) { $dados->celulas_id_geracao = $dados->celulas_pai_id; } else { $dados->celulas_id_geracao = $busca_geracao[0]->celulas_id_geracao; } } } $dados->qual_endereco = $input['local'] == "" ? null : $input['local']; //Verifique qual endereco sera o encontro conforme selecao do local if (isset($input["endereco_encontro"])) { if ($dados->qual_endereco != "6") { switch ($dados->qual_endereco) { case '1': //lider $id_pessoa_endereco = $dados->lider_pessoas_id; break; case '2': //lider em treinamento $id_pessoa_endereco = $dados->vicelider_pessoas_id; break; case '3': //anfitriao $id_pessoa_endereco = $dados->suplente1_pessoas_id; break; case '4': //suplente $id_pessoa_endereco = $dados->suplente2_pessoas_id; break; default: $id_pessoa_endereco = ""; break; } if ($dados->qual_endereco == '5') { $pegar_endereco = \App\Models\empresas::select('endereco', 'numero', 'bairro', 'cidade', 'estado', 'complemento')->findOrfail($this->dados_login->empresas_id); $dados->endereco_encontro = $pegar_endereco->endereco . ', ' . $pegar_endereco->numero . ' - ' . $pegar_endereco->bairro . ' ' . $pegar_endereco->complemento; } else { if ($id_pessoa_endereco != "") { $pegar_endereco = \App\Models\pessoas::select('endereco', 'numero', 'bairro', 'cidade', 'estado', 'complemento')->findOrfail($id_pessoa_endereco); $dados->endereco_encontro = $pegar_endereco->endereco . ', ' . $pegar_endereco->numero . ' - ' . $pegar_endereco->bairro . ' ' . $pegar_endereco->complemento; } } } } $dados->data_inicio = $input["data_inicio"] != "" ? $this->formatador->FormatarData($input["data_inicio"]) : date('Y-m-d'); $dados->save(); //BUSCAR QTD DE FILHAS APOS INCLUSAO OU ALTERACAO DA CELULA if ($guarda_pai != 0 && $guarda_pai != null) { //PRIMEIRO PAI DO VETOR $this->qtd_pais[] = $guarda_pai; //MONTA VETOR COM TODOS OS PAIS A PARTIR DESSE PAI $this->buscaPai($guarda_pai); } if (isset($this->qtd_pais)) { for ($iSeq = 0; $iSeq < count($this->qtd_pais); $iSeq++) { if ($this->qtd_pais[$iSeq] != 0) { $this->gravaQtdFilhos($this->qtd_pais[$iSeq]); } } } return $dados->id; }