/**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 protected function create(array $data)
 {
     $user = Usuario::create(['nome' => $data['nome'], 'sobrenome' => $data['sobrenome'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]);
     $role = Defender::findRole('gestor');
     $user->attachRole($role);
     return $user;
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $data = Defender::findPermissionById($id);
     if ($data) {
         return view('forone::' . self::URI . "/edit", compact('data'));
     } else {
         return $this->redirectWithError('数据未找到');
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $this->validate($request, ['nome' => 'required|min:3|max:255', 'sobrenome' => 'required|min:3|max:255', 'email' => 'required|email|unique:usuarios,email', 'iniciativa_id' => 'required|exists:iniciativas,idIniciativa']);
     $password = str_random(8);
     $request['password'] = bcrypt($password);
     $usuario = Usuario::create($request->all());
     /*Role 2 => Usuario Gestor*/
     $role = Defender::findRole('gestor');
     $usuario->attachRole($role);
     Mail::send('emails.newUser', ['nome' => $request['nome'], 'email' => $request['email'], 'senha' => $password], function ($m) use($request) {
         $m->to($request['email'], $request['nome'])->subject('Bem vindo ao SisMid');
     });
     return $this->show($usuario->idUsuario);
 }
 /**
  * 分配权限
  */
 public function assignPermission(Request $request)
 {
     $role = Defender::findRoleById($request->get('id'));
     $permissionNameParams = $request->except(['_token', 'id']);
     $permissionNames = array_keys($permissionNameParams);
     $permissions = [];
     foreach ($permissionNames as $permissionName) {
         $permissions[] = str_replace('_', '.', $permissionName);
     }
     // 删除 roles 所有权限
     $role->revokePermissions();
     $permissions = Permission::whereIn('name', $permissions)->get();
     $permissions->each(function ($per) use($role) {
         $role->attachPermission($per);
     });
     return redirect()->route('admin.roles.index');
 }
 public function storeGerenciaAdmin(Request $request)
 {
     $this->validate($request, ['nome' => 'required|max:255', 'sobrenome' => 'required|max:255', 'email' => 'required|email|max:255']);
     $password = str_random(8);
     $user = Usuario::create(['nome' => $request['nome'], 'sobrenome' => $request['sobrenome'], 'email' => $request['email'], 'password' => bcrypt($password)]);
     $role = Defender::findRole('admin');
     $user->attachRole($role);
     Mail::send('emails.newUser', ['nome' => $request['nome'], 'email' => $request['email'], 'senha' => $password], function ($m) use($request) {
         $m->to($request['email'], $request['nome'])->subject('Bem vindo ao SisMid');
     });
     return redirect(route("admin.gerencia.index"))->with(['flash_type_message' => 'alert-success', 'flash_message' => 'Administrador cadastrado com sucesso']);
 }
 /**
  * 分配角色
  */
 public function assignRole(Request $request)
 {
     $admin = Admin::findOrFail($request->get('id'));
     // detach roles
     $admin->roles()->detach();
     $role = Defender::findRoleById($request->get('role_id'));
     $admin->attachRole($role);
     return redirect()->route('admin.admins.index');
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function edit($id)
 {
     if (Defender::hasRole('gestor')) {
         $instituicao = Instituicao::findOrFail($id);
         if ($instituicao->usuario_id != Auth::user()->idUsuario) {
             abort(401, 'Unauthorized action.');
         }
     }
     $uf = DB::table('uf')->orderBy('uf')->lists('uf', 'idUf');
     $localidades = DB::table('localidades')->orderBy('localidade')->lists('localidade', 'idLocalidade');
     $localizacoes = DB::table('localizacoes')->orderBy('localizacao')->lists('localizacao', 'idLocalizacao');
     $naturezasJuridicas = DB::table('naturezasJuridicas')->orderBy('naturezaJuridica')->lists('naturezaJuridica', 'idNatureza');
     $telefoneTipos = DB::table('telefoneTipos')->orderBy('tipo')->lists('tipo', 'idTipo');
     return view('instituicoes.edit', compact('uf', 'localidades', 'localizacoes', 'naturezasJuridicas', 'telefoneTipos'));
 }
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function edit($id)
 {
     if (Defender::hasRole('gestor')) {
         if (Auth::user()->iniciativa_id != $id) {
             abort(401, 'Unauthorized action.');
         }
     }
     $uf = DB::table('uf')->orderBy('uf')->lists('uf', 'idUf');
     $localidades = DB::table('localidades')->orderBy('localidade')->lists('localidade', 'idLocalidade');
     $localizacoes = DB::table('localizacoes')->orderBy('localizacao')->lists('localizacao', 'idLocalizacao');
     $naturezasJuridicas = DB::table('naturezasJuridicas')->orderBy('naturezaJuridica')->lists('naturezaJuridica', 'idNatureza');
     $telefoneTipos = DB::table('telefoneTipos')->orderBy('tipo')->lists('tipo', 'idTipo');
     $dimensoes = Dimensao::all()->lists('dimensao', 'idDimensao');
     return view('iniciativas.edit', compact('uf', 'localidades', 'localizacoes', 'naturezasJuridicas', 'telefoneTipos', 'dimensoes'));
 }
 private function getDadosAgrupadosByCidade($tipo, $cidade, $ativo, $usuarios, $agrupado)
 {
     $iniciativas = DB::table('iniciativas')->join('enderecos', 'iniciativas.endereco_id', '=', 'enderecos.idEndereco')->select('uf.uf', 'uf.idUf', DB::raw('COUNT( uf.uf ) as total'))->join('cidades', 'enderecos.cidade_id', '=', 'cidades.idCidade')->join('uf', 'cidades.uf_id', '=', 'uf.idUf')->whereIn('iniciativas.tipo_id', $tipo)->where('cidades.idCidade', '=', $cidade);
     if (in_array(0, $tipo)) {
         $pids = DB::table('pids')->join('enderecos', 'pids.endereco_id', '=', 'enderecos.idEndereco')->select('uf.uf', 'uf.idUf', DB::raw('COUNT( uf.uf ) as total'))->join('cidades', 'enderecos.cidade_id', '=', 'cidades.idCidade')->join('uf', 'cidades.uf_id', '=', 'uf.idUf')->where('cidades.idCidade', '=', $cidade)->where('pids.ativo', '=', $ativo);
         if (Defender::is($usuarios)) {
             $pids->union($iniciativas);
         }
         if ($agrupado) {
             return $pids->groupby('uf.uf')->get();
         } else {
             return $pids->get();
         }
     } else {
         return $iniciativas->get();
     }
 }
Beispiel #10
0
 /**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function edit($id)
 {
     if (Defender::hasRole('gestor')) {
         $pids = DB::table('pid_iniciativas')->select('pid_id')->where('iniciativa_id', '=', Auth::user()->iniciativa_id)->lists('pid_id');
         if (!in_array($id, $pids)) {
             abort(401, 'Unauthorized action.');
         }
     }
     $uf = DB::table('uf')->orderBy('uf')->lists('uf', 'idUf');
     $localidades = DB::table('localidades')->orderBy('localidade')->lists('localidade', 'idLocalidade');
     $localizacoes = DB::table('localizacoes')->orderBy('localizacao')->lists('localizacao', 'idLocalizacao');
     $telefoneTipos = DB::table('telefoneTipos')->orderBy('tipo')->lists('tipo', 'idTipo');
     $pidTipos = DB::table('pidTipos')->orderBy('tipo')->lists('tipo', 'idTipo');
     $servicos = Servico::all()->lists('servico', 'idServico');
     $emRevisao = DB::table('pid_revisao')->where('pid_id', $id)->where('valido', 1)->count();
     return view('pids.edit', compact('uf', 'localidades', 'localizacoes', 'telefoneTipos', 'pidTipos', 'servicos', 'emRevisao'));
 }