private function reportIniciativaDimensaoByCidade($cidade)
 {
     $dados = \Lava::DataTable();
     $dados->addStringColumn('Dimensões')->addNumberColumn('Qtd');
     $dimensoes = Dimensao::all();
     foreach ($dimensoes as $dm) {
         $qt = DB::table('iniciativas')->join('enderecos', 'iniciativas.endereco_id', '=', 'enderecos.idEndereco')->where('enderecos.cidade_id', $cidade)->whereRaw('iniciativas.idIniciativa IN (SELECT iniciativa_id FROM iniciativa_dimensoes WHERE dimensao_id =' . $dm->idDimensao . ' )')->count();
         $dados->addRow([$dm->dimensao, $qt]);
     }
     $qt = DB::table('iniciativas')->join('enderecos', 'iniciativas.endereco_id', '=', 'enderecos.idEndereco')->where('enderecos.cidade_id', $cidade)->whereRaw('iniciativas.idIniciativa NOT IN (SELECT iniciativa_id FROM iniciativa_dimensoes)')->count();
     $dados->addRow(['Nenhum', $qt]);
     return $dados;
 }
 /**
  * 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'));
 }