From bebbdd4c1e3dba24c0462e8162ca3fbfdf6e512b Mon Sep 17 00:00:00 2001
From: alissonalbuquerque <alissonalbuquerque.dev@gmail.com>
Date: Thu, 27 Oct 2022 15:39:13 -0300
Subject: [PATCH] =?UTF-8?q?atualiza=C3=A7=C3=A3o=20de=20rotas=20e=20views?=
 =?UTF-8?q?=20de=20cruds?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../Tabelas/Ensino/EnsinoOutrosController.php | 204 ++++++++++++++++++
 .../Extensao/ExtensaoOutrosController.php     | 203 +++++++++++++++++
 ...denacaoProgramaInstitucionalController.php |   1 -
 .../Tabelas/Gestao/GestaoOutrosController.php | 197 +++++++++++++++++
 .../Pesquisa/PesquisaOutrosController.php     | 203 +++++++++++++++++
 app/Models/Tabelas/Ensino/EnsinoOutros.php    |   2 +-
 .../Tabelas/Extensao/ExtensaoOutros.php       |   4 +-
 app/Models/Tabelas/Gestao/GestaoOutros.php    |   2 +-
 .../Tabelas/Pesquisa/PesquisaOutros.php       |   2 +-
 app/Models/Util/Avaliacao.php                 |  28 +--
 app/Models/Util/PadTables.php                 |  21 ++
 .../Tabelas/Extensao/ExtensaoOutrosQuery.php  |   2 +-
 .../ensino/outros/form_create.blade.php       |   0
 .../ensino/outros/form_update.blade.php       |   0
 .../coordenacao/form_create.blade.php         |   2 +-
 .../extensao/orientacao/form_create.blade.php |   2 +-
 .../extensao/outros/form_create.blade.php     |   0
 .../extensao/outros/form_update.blade.php     |   0
 .../form_create.blade.php                     |   2 +-
 .../form_create.blade.php                     |   2 +-
 .../membro_camaras/form_create.blade.php      |   2 +-
 .../membro_comissao/form_create.blade.php     |   2 +-
 .../membro_conselho/form_create.blade.php     |   2 +-
 .../form_create.blade.php                     |   2 +-
 .../gestao/outros/form_create.blade.php       |   0
 .../gestao/outros/form_update.blade.php       |   0
 .../form_create.blade.php                     |   2 +-
 .../coordenacao/form_create.blade.php         |   2 +-
 .../pesquisa/orientacao/form_create.blade.php |   2 +-
 .../pesquisa/outros/form_create.blade.php     |   0
 .../pesquisa/outros/form_update.blade.php     |   0
 routes/dimensao/ensino.php                    |  14 ++
 routes/dimensao/extensao.php                  |  15 ++
 routes/dimensao/gestao.php                    |  14 ++
 routes/dimensao/pesquisa.php                  |  14 ++
 35 files changed, 918 insertions(+), 30 deletions(-)
 create mode 100644 app/Http/Controllers/Dimensao/Tabelas/Ensino/EnsinoOutrosController.php
 create mode 100644 app/Http/Controllers/Dimensao/Tabelas/Extensao/ExtensaoOutrosController.php
 create mode 100644 app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoOutrosController.php
 create mode 100644 app/Http/Controllers/Dimensao/Tabelas/Pesquisa/PesquisaOutrosController.php
 create mode 100644 resources/views/pad/components/templates/dimensao/ensino/outros/form_create.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/ensino/outros/form_update.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/extensao/outros/form_create.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/extensao/outros/form_update.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/gestao/outros/form_create.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/gestao/outros/form_update.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/pesquisa/outros/form_create.blade.php
 create mode 100644 resources/views/pad/components/templates/dimensao/pesquisa/outros/form_update.blade.php

diff --git a/app/Http/Controllers/Dimensao/Tabelas/Ensino/EnsinoOutrosController.php b/app/Http/Controllers/Dimensao/Tabelas/Ensino/EnsinoOutrosController.php
new file mode 100644
index 0000000..a4ba56c
--- /dev/null
+++ b/app/Http/Controllers/Dimensao/Tabelas/Ensino/EnsinoOutrosController.php
@@ -0,0 +1,204 @@
+<?php
+
+namespace App\Http\Controllers\Dimensao\Tabelas\Ensino;
+
+use App\Http\Controllers\Controller;
+use App\Models\Avaliacao;
+use App\Models\Planejamento;
+use App\Models\Tabelas\Constants;
+use App\Models\Tabelas\Ensino\EnsinoOutros;
+use App\Models\Tabelas\Pesquisa\PesquisaCoordenacao;
+use App\Models\Util\Avaliacao as UtilAvaliacao;
+use App\Models\Util\CargaHorariaValidation;
+use App\Models\Util\Dimensao;
+use App\Models\Util\MenuItemsTeacher;
+use App\Models\Util\PadTables;
+use App\Models\Util\Status;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Response;
+use Illuminate\Support\Facades\Validator;
+
+class EnsinoOutrosController extends Controller
+{
+    public function index($user_pad_id)
+    {
+        $atividades =
+                EnsinoOutros::initQuery()
+                        ->whereUserPad($user_pad_id)
+                        ->orderBy('cod_atividade')
+                        ->get();
+
+        $divs = PadTables::tablesEnsino($user_pad_id);
+
+        return view('pad.components.templates.dimensao.ensino.outros.form_create', [
+            'atividades' => $atividades,
+
+            'divs' => $divs,
+
+            'user_pad_id' => $user_pad_id,
+            'index_menu' => MenuItemsTeacher::PAD,
+        ]);
+    }
+    
+    public function edit($id) {
+
+        $model = EnsinoOutros::find($id);
+        
+        return view('pad.components.templates.dimensao.ensino.outros.form_update', [
+            'model' => $model,
+        ]);
+    }
+
+    public function viewResolucao()
+    {   
+        $resolucoes = EnsinoOutros::getPlanejamentos();
+        return view('pad.components.templates.resolucao', ['resolucoes' => $resolucoes]);
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create(Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('E-18')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(EnsinoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(EnsinoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('ensino_outros_index', ['user_pad_id' => $request->user_pad_id,])
+                        ->withErrors($validator)
+                        ->withInput();
+        }
+
+        $user_pad_id = $request->user_pad_id;
+
+        $model = new EnsinoOutros($request->all());
+        $model->dimensao = Dimensao::ENSINO;
+
+        if($model->save())
+        {
+            $avaliacao = new Avaliacao([
+                'tarefa_id' => $model->id,
+                'type' => UtilAvaliacao::ENSINO_OUTROS,
+                'status' => Status::PENDENTE,
+            ]);
+
+            if(!$avaliacao->save())
+            {
+                return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+            }
+
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Cadastro realizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+        }
+        
+    }
+    
+    public function update($id, Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('E-18')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(EnsinoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(EnsinoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        $model = EnsinoOutros::find($id);
+        $model->fill($request->all());
+
+        $user_pad_id = $model->user_pad_id;
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                        ->with('fail', 'Erro ao atualizar Atividade!');
+        }
+
+        if($model->save()) {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atualizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao atualizar a Atividade!');
+        }
+    }
+    
+    public function delete($id)
+    {
+        $model = EnsinoOutros::find($id);
+        
+        $user_pad_id = $model->user_pad_id;
+
+        if($model->delete()) {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atividade removida com Sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao remover atividade!');
+        }
+    }
+
+    public function search($user_pad_id = null) {
+
+        $query = EnsinoOutros::initQuery();
+
+        if($user_pad_id) {
+            $query->whereUserPad($user_pad_id)->orderBy('cod_atividade');
+        }
+        
+        return Response::json($query->get());
+    }
+
+    public function ajaxValidation(Request $request)
+    {   
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('E-18')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(EnsinoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(EnsinoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->passes()) {
+            return Response::json(['message' => true, 'status' => 200]);
+        }
+
+        return Response::json(['errors' => $validator->errors(), 'status' => 400]);
+    }
+}
diff --git a/app/Http/Controllers/Dimensao/Tabelas/Extensao/ExtensaoOutrosController.php b/app/Http/Controllers/Dimensao/Tabelas/Extensao/ExtensaoOutrosController.php
new file mode 100644
index 0000000..79fb79f
--- /dev/null
+++ b/app/Http/Controllers/Dimensao/Tabelas/Extensao/ExtensaoOutrosController.php
@@ -0,0 +1,203 @@
+<?php
+
+namespace App\Http\Controllers\Dimensao\Tabelas\Extensao;
+
+use App\Http\Controllers\Controller;
+use App\Models\Avaliacao;
+use App\Models\Planejamento;
+use App\Models\Tabelas\Ensino\EnsinoOutros;
+use App\Models\Tabelas\Extensao\ExtensaoOutros;
+use App\Models\Util\Avaliacao as UtilAvaliacao;
+use App\Models\Util\CargaHorariaValidation;
+use App\Models\Util\Dimensao;
+use App\Models\Util\MenuItemsTeacher;
+use App\Models\Util\PadTables;
+use App\Models\Util\Status;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Response;
+use Illuminate\Support\Facades\Validator;
+
+class ExtensaoOutrosController extends Controller
+{
+    public function index($user_pad_id)
+    {
+        $atividades =
+                ExtensaoOutros::initQuery()
+                        ->whereUserPad($user_pad_id)
+                        ->orderBy('cod_atividade')
+                        ->get();
+
+        $divs = PadTables::tablesEnsino($user_pad_id);
+
+        return view('pad.components.templates.dimensao.extensao.outros.form_create', [
+            'atividades' => $atividades,
+
+            'divs' => $divs,
+
+            'user_pad_id' => $user_pad_id,
+            'index_menu' => MenuItemsTeacher::PAD,
+        ]);
+    }
+    
+    public function edit($id) {
+
+        $model = EnsinoOutros::find($id);
+        
+        return view('pad.components.templates.dimensao.extensao.outros.form_update', [
+            'model' => $model,
+        ]);
+    }
+
+    public function viewResolucao()
+    {   
+        $resolucoes = ExtensaoOutros::getPlanejamentos();
+        return view('pad.components.templates.resolucao', ['resolucoes' => $resolucoes]);
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create(Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('X-3')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(ExtensaoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(ExtensaoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('pesquisa_outros_index', ['user_pad_id' => $request->user_pad_id,])
+                        ->withErrors($validator)
+                        ->withInput();
+        }
+
+        $user_pad_id = $request->user_pad_id;
+
+        $model = new EnsinoOutros($request->all());
+        $model->dimensao = Dimensao::PESQUISA;
+
+        if($model->save())
+        {
+            $avaliacao = new Avaliacao([
+                'tarefa_id' => $model->id,
+                'type' => UtilAvaliacao::ENSINO_OUTROS,
+                'status' => Status::PENDENTE,
+            ]);
+
+            if(!$avaliacao->save())
+            {
+                return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+            }
+
+            return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Cadastro realizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+        }
+        
+    }
+    
+    public function update($id, Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('X-3')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(ExtensaoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(ExtensaoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        $model = ExtensaoOutros::find($id);
+        $model->fill($request->all());
+
+        $user_pad_id = $model->user_pad_id;
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('extensao_outros_index', ['user_pad_id' => $user_pad_id])
+                        ->with('fail', 'Erro ao atualizar Atividade!');
+        }
+
+        if($model->save()) {
+            return redirect()
+                    ->route('extensao_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atualizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('extensao_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao atualizar a Atividade!');
+        }
+    }
+    
+    public function delete($id)
+    {
+        $model = ExtensaoOutros::find($id);
+        
+        $user_pad_id = $model->user_pad_id;
+
+        if($model->delete()) {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atividade removida com Sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao remover atividade!');
+        }
+    }
+
+    public function search($user_pad_id = null) {
+
+        $query = ExtensaoOutros::initQuery();
+
+        if($user_pad_id) {
+            $query->whereUserPad($user_pad_id)->orderBy('cod_atividade');
+        }
+        
+        return Response::json($query->get());
+    }
+
+    public function ajaxValidation(Request $request)
+    {   
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('X-3')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(ExtensaoOutros::rules(), $cargaHoraria->rules()),
+            array_merge(ExtensaoOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->passes()) {
+            return Response::json(['message' => true, 'status' => 200]);
+        }
+
+        return Response::json(['errors' => $validator->errors(), 'status' => 400]);
+    }
+}
diff --git a/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoCoordenacaoProgramaInstitucionalController.php b/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoCoordenacaoProgramaInstitucionalController.php
index 753f29a..c438547 100644
--- a/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoCoordenacaoProgramaInstitucionalController.php
+++ b/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoCoordenacaoProgramaInstitucionalController.php
@@ -5,7 +5,6 @@ namespace App\Http\Controllers\Dimensao\Tabelas\Gestao;
 use App\Http\Controllers\Controller;
 use App\Models\Avaliacao;
 use App\Models\Planejamento;
-use App\Models\Tabelas\Constants;
 use App\Models\Tabelas\Gestao\GestaoCoordenacaoProgramaInstitucional;
 use App\Models\Util\Dimensao;
 use App\Models\Util\Avaliacao as UtilAvaliacao;
diff --git a/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoOutrosController.php b/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoOutrosController.php
new file mode 100644
index 0000000..e0a6473
--- /dev/null
+++ b/app/Http/Controllers/Dimensao/Tabelas/Gestao/GestaoOutrosController.php
@@ -0,0 +1,197 @@
+<?php
+
+namespace App\Http\Controllers\Dimensao\Tabelas\Gestao;
+
+use App\Http\Controllers\Controller;
+use App\Models\Tabelas\Constants;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Response;
+use Illuminate\Support\Facades\Validator;
+use App\Models\Avaliacao;
+use App\Models\Planejamento;
+use App\Models\Tabelas\Gestao\GestaoMembroCamaras;
+use App\Models\Tabelas\Gestao\GestaoOutros;
+use App\Models\Util\Dimensao;
+use App\Models\Util\Avaliacao as UtilAvaliacao;
+use App\Models\Util\CargaHorariaValidation;
+use App\Models\Util\MenuItemsTeacher;
+use App\Models\Util\PadTables;
+use App\Models\Util\Status;
+
+class GestaoOutrosController extends Controller
+{
+    public function index($user_pad_id)
+    {
+        $atividades = 
+                GestaoOutros::initQuery()
+                    ->whereUserPad($user_pad_id)
+                    ->orderBy('cod_atividade')
+                    ->get();
+
+        $divs = PadTables::tablesGestao($user_pad_id);
+
+        return view('pad.components.templates.dimensao.gestao.outros.form_create', [
+            'atividades' => $atividades,
+
+            'divs' => $divs,
+            'user_pad_id' => $user_pad_id,
+            'index_menu' => MenuItemsTeacher::PAD,
+        ]);
+    }
+    
+    public function create(Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('G-4')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
+            array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('gestao_membro_camaras_index', ['user_pad_id' => $request->user_pad_id,])
+                        ->withErrors($validator)
+                        ->withInput();
+        }
+
+        $user_pad_id = $request->user_pad_id;
+
+        $model = new GestaoMembroCamaras($request->all());
+        $model->dimensao = Dimensao::GESTAO;
+
+        if($model->save())
+        {
+            $avaliacao = new Avaliacao([
+                'tarefa_id' => $model->id,
+                'type' => UtilAvaliacao::GESTAO_MEMBRO_CAMARAS,
+                'status' => Status::PENDENTE,
+            ]);
+
+            if(!$avaliacao->save())
+            {
+                return redirect()
+                    ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+            }
+
+            return redirect()
+                    ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Cadastro realizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+        }
+    }
+    
+    public function update($id, Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('G-4')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
+            array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
+        );
+
+        $model = GestaoMembroCamaras::find($id);
+        $model->fill($request->all());
+
+        $user_pad_id = $model->user_pad_id;
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                        ->with('fail', 'Erro ao atualizar Atividade!');
+        }
+
+        if($model->save()) {
+            return redirect()->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atualizado com sucesso!');
+        } else {
+            return redirect()->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao atualizar a Atividade!');
+        }
+    }
+
+    public function edit($id)
+    {
+        $model = GestaoMembroCamaras::find($id);
+        
+        return view('pad.components.templates.dimensao.gestao.membro_camaras.form_update', [
+            'model' => $model,
+        ]);
+    }
+
+    public function viewResolucao()
+    {
+        $resolucoes = GestaoMembroCamaras::getPlanejamentos();
+        return view('pad.components.templates.resolucao', [
+            'resolucoes' => $resolucoes
+        ]);
+    }
+
+    public function delete($id)
+    {
+        $model = GestaoMembroCamaras::find($id);
+        
+        $user_pad_id = $model->user_pad_id;
+
+        if($model->delete()) {
+            return redirect()
+                    ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atividade removida com Sucesso!');
+        } else {
+            return redirect()
+                    ->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao remover atividade!');
+        }
+    }
+    
+    public function search($user_pad_id = null)
+    {
+        $query = GestaoMembroCamaras::initQuery();
+
+        if($user_pad_id) {
+            $query->whereUserPad($user_pad_id)->orderBy('cod_atividade');
+        }
+        
+        return Response::json($query->get());
+    }
+
+    public function ajaxValidation(Request $request)
+    {   
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('G-4')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
+            array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->passes()) {
+            return Response::json(['message' => true, 'status' => 200]);
+        }
+
+        return Response::json(['errors' => $validator->errors(), 'status' => 400]);
+    }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Dimensao/Tabelas/Pesquisa/PesquisaOutrosController.php b/app/Http/Controllers/Dimensao/Tabelas/Pesquisa/PesquisaOutrosController.php
new file mode 100644
index 0000000..2fe3405
--- /dev/null
+++ b/app/Http/Controllers/Dimensao/Tabelas/Pesquisa/PesquisaOutrosController.php
@@ -0,0 +1,203 @@
+<?php
+
+namespace App\Http\Controllers\Dimensao\Tabelas\Pesquisa;
+
+use App\Http\Controllers\Controller;
+use App\Models\Avaliacao;
+use App\Models\Planejamento;
+use App\Models\Tabelas\Ensino\EnsinoOutros;
+use App\Models\Tabelas\Pesquisa\PesquisaOutros;
+use App\Models\Util\Avaliacao as UtilAvaliacao;
+use App\Models\Util\CargaHorariaValidation;
+use App\Models\Util\Dimensao;
+use App\Models\Util\MenuItemsTeacher;
+use App\Models\Util\PadTables;
+use App\Models\Util\Status;
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Response;
+use Illuminate\Support\Facades\Validator;
+
+class PesquisaOutrosController extends Controller
+{
+    public function index($user_pad_id)
+    {
+        $atividades =
+                PesquisaOutros::initQuery()
+                        ->whereUserPad($user_pad_id)
+                        ->orderBy('cod_atividade')
+                        ->get();
+
+        $divs = PadTables::tablesEnsino($user_pad_id);
+
+        return view('pad.components.templates.dimensao.pesquisa.outros.form_create', [
+            'atividades' => $atividades,
+
+            'divs' => $divs,
+
+            'user_pad_id' => $user_pad_id,
+            'index_menu' => MenuItemsTeacher::PAD,
+        ]);
+    }
+    
+    public function edit($id) {
+
+        $model = EnsinoOutros::find($id);
+        
+        return view('pad.components.templates.dimensao.pesquisa.outros.form_update', [
+            'model' => $model,
+        ]);
+    }
+
+    public function viewResolucao()
+    {   
+        $resolucoes = PesquisaOutros::getPlanejamentos();
+        return view('pad.components.templates.resolucao', ['resolucoes' => $resolucoes]);
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create(Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('P-5')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(PesquisaOutros::rules(), $cargaHoraria->rules()),
+            array_merge(PesquisaOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('pesquisa_outros_index', ['user_pad_id' => $request->user_pad_id,])
+                        ->withErrors($validator)
+                        ->withInput();
+        }
+
+        $user_pad_id = $request->user_pad_id;
+
+        $model = new EnsinoOutros($request->all());
+        $model->dimensao = Dimensao::PESQUISA;
+
+        if($model->save())
+        {
+            $avaliacao = new Avaliacao([
+                'tarefa_id' => $model->id,
+                'type' => UtilAvaliacao::ENSINO_OUTROS,
+                'status' => Status::PENDENTE,
+            ]);
+
+            if(!$avaliacao->save())
+            {
+                return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+            }
+
+            return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Cadastro realizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao cadastrar Atividade!');
+        }
+        
+    }
+    
+    public function update($id, Request $request)
+    {
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('P-5')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(PesquisaOutros::rules(), $cargaHoraria->rules()),
+            array_merge(PesquisaOutros::messages(), $cargaHoraria->messages())
+        );
+
+        $model = PesquisaOutros::find($id);
+        $model->fill($request->all());
+
+        $user_pad_id = $model->user_pad_id;
+
+        if($validator->fails())
+        {   
+            return redirect()
+                        ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                        ->with('fail', 'Erro ao atualizar Atividade!');
+        }
+
+        if($model->save()) {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atualizado com sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao atualizar a Atividade!');
+        }
+    }
+    
+    public function delete($id)
+    {
+        $model = PesquisaOutros::find($id);
+        
+        $user_pad_id = $model->user_pad_id;
+
+        if($model->delete()) {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('success', 'Atividade removida com Sucesso!');
+        } else {
+            return redirect()
+                    ->route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+                    ->with('fail', 'Erro ao remover atividade!');
+        }
+    }
+
+    public function search($user_pad_id = null) {
+
+        $query = PesquisaOutros::initQuery();
+
+        if($user_pad_id) {
+            $query->whereUserPad($user_pad_id)->orderBy('cod_atividade');
+        }
+        
+        return Response::json($query->get());
+    }
+
+    public function ajaxValidation(Request $request)
+    {   
+        $planejamento = Planejamento::initQuery()->whereCodDimensao('P-5')->first();
+        
+        $ch_min = $planejamento->ch_semanal;
+        $ch_max = $planejamento->ch_maxima;
+
+        $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max);
+
+        $validator = Validator::make(
+            $request->all(), 
+            array_merge(PesquisaOutros::rules(), $cargaHoraria->rules()),
+            array_merge(PesquisaOutros::messages(), $cargaHoraria->messages())
+        );
+
+        if($validator->passes()) {
+            return Response::json(['message' => true, 'status' => 200]);
+        }
+
+        return Response::json(['errors' => $validator->errors(), 'status' => 400]);
+    }
+}
diff --git a/app/Models/Tabelas/Ensino/EnsinoOutros.php b/app/Models/Tabelas/Ensino/EnsinoOutros.php
index 8b18f72..2f6aaf6 100644
--- a/app/Models/Tabelas/Ensino/EnsinoOutros.php
+++ b/app/Models/Tabelas/Ensino/EnsinoOutros.php
@@ -20,7 +20,7 @@ class EnsinoOutros extends Model
      * 
      * @var array
      */
-    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
+    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
 
     public static function rules()
     {
diff --git a/app/Models/Tabelas/Extensao/ExtensaoOutros.php b/app/Models/Tabelas/Extensao/ExtensaoOutros.php
index b7b58c1..2222160 100644
--- a/app/Models/Tabelas/Extensao/ExtensaoOutros.php
+++ b/app/Models/Tabelas/Extensao/ExtensaoOutros.php
@@ -3,7 +3,7 @@
 namespace App\Models\Tabelas\Extensao;
 
 use App\Models\Planejamento;
-use App\Queries\Tabelas\Pesquisa\ExtensaoOutrosQuery;
+use App\Queries\Tabelas\Extensao\ExtensaoOutrosQuery;
 use Illuminate\Database\Eloquent\Model;
 
 class ExtensaoOutros extends Model
@@ -20,7 +20,7 @@ class ExtensaoOutros extends Model
      * 
      * @var array
      */
-    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
+    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
 
     public static function rules()
     {
diff --git a/app/Models/Tabelas/Gestao/GestaoOutros.php b/app/Models/Tabelas/Gestao/GestaoOutros.php
index dcf159b..7be8641 100644
--- a/app/Models/Tabelas/Gestao/GestaoOutros.php
+++ b/app/Models/Tabelas/Gestao/GestaoOutros.php
@@ -20,7 +20,7 @@ class GestaoOutros extends Model
      * 
      * @var array
      */
-    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
+    protected $fillable = ['orientacao_id', 'user_pad_id', 'cod_dimensao', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
 
     public static function rules()
     {
diff --git a/app/Models/Tabelas/Pesquisa/PesquisaOutros.php b/app/Models/Tabelas/Pesquisa/PesquisaOutros.php
index a1da8d3..9d6a1d9 100644
--- a/app/Models/Tabelas/Pesquisa/PesquisaOutros.php
+++ b/app/Models/Tabelas/Pesquisa/PesquisaOutros.php
@@ -20,7 +20,7 @@ class PesquisaOutros extends Model
      * 
      * @var array
      */
-    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
+    protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
 
     public static function rules()
     {
diff --git a/app/Models/Util/Avaliacao.php b/app/Models/Util/Avaliacao.php
index 3b1a053..188d071 100644
--- a/app/Models/Util/Avaliacao.php
+++ b/app/Models/Util/Avaliacao.php
@@ -13,20 +13,24 @@ class Avaliacao
     const ENSINO_PROJETO = 6;
     const ENSINO_PARTICIPACAO = 7;
     const ENSINO_MEMBRO_DOCENTE = 8;
+    const ENSINO_OUTROS = 9;
 
-    const PESQUISA_COORDENACAO = 9;
-    const PESQUISA_ORIENTACAO = 10;
-    const PESQUISA_LIDERANCA = 11;
+    const PESQUISA_COORDENACAO = 10;
+    const PESQUISA_ORIENTACAO = 11;
+    const PESQUISA_LIDERANCA = 12;
+    const PESQUISA_OUTROS = 13;
 
-    const EXTENSAO_COORDENACAO = 12;
-    const EXTENSAO_ORIENTACAO = 13;
+    const EXTENSAO_COORDENACAO = 14;
+    const EXTENSAO_ORIENTACAO = 15;
+    const EXTENSAO_OUTROS = 16;
 
-    CONST GESTAO_COORDENACAO_LABORATORIOS_DIDATICOS = 14;
-    CONST GESTAO_MEMBRO_CONSELHO = 15;
-    CONST GESTAO_COORDENACAO_PROGRAMA_INSTITUCIONAL = 16;
-    CONST GESTAO_MEMBRO_TITULAR_CONSELHO = 17;
-    CONST GESTAO_MEMBRO_CAMARAS = 18;
-    CONST GESTAO_REPRESENTANTE_UNIDADE_EDUCACAO = 19;
-    CONST GESTAO_MEMBRO_COMISSAO = 20;
+    CONST GESTAO_COORDENACAO_LABORATORIOS_DIDATICOS = 17;
+    CONST GESTAO_MEMBRO_CONSELHO = 18;
+    CONST GESTAO_COORDENACAO_PROGRAMA_INSTITUCIONAL = 19;
+    CONST GESTAO_MEMBRO_TITULAR_CONSELHO = 20;
+    CONST GESTAO_MEMBRO_CAMARAS = 21;
+    CONST GESTAO_REPRESENTANTE_UNIDADE_EDUCACAO = 22;
+    CONST GESTAO_MEMBRO_COMISSAO = 23;
+    CONST GESTAO_OUTROS = 24;
     
 }
\ No newline at end of file
diff --git a/app/Models/Util/PadTables.php b/app/Models/Util/PadTables.php
index c680322..8a70c74 100644
--- a/app/Models/Util/PadTables.php
+++ b/app/Models/Util/PadTables.php
@@ -52,6 +52,12 @@ class PadTables {
                 'name' => '8. ENSINO (COORDENAÇÃO OU MEMBRO DE NÚCLEO DOCENTE ESTRUTURANTE OU NÚCLEO DOCENTE ESTRUTURANTE ASSISTENCIAL)',
                 'route' => route('ensino_membro_docente_index', ['user_pad_id' => $user_pad_id])
             ],
+            [
+                'id' => 'ensino_outros',
+                'name' => '9. ENSINO (OUTROS)',
+                'route' => route('ensino_outros_index', ['user_pad_id' => $user_pad_id])
+
+            ],
         ];
     }
 
@@ -72,6 +78,11 @@ class PadTables {
                 'name' => '3. PESQUISA (ORIENTAÇÃO DE INICIAÇÃO CIENTÍFICA DE PROJETOS VINCULADOS CADASTRADOS NO SISPG)',
                 'route' => route('pesquisa_orientacao_index', ['user_pad_id' => $user_pad_id])
             ],
+            [
+                'id' => 'pesquisa_outros',
+                'name' => '4. PESQUISA (OUTROS)',
+                'route' => route('pesquisa_outros_index', ['user_pad_id' => $user_pad_id])
+            ],
         ];
     }
 
@@ -87,6 +98,11 @@ class PadTables {
                 'name' => '2. EXTENSÃO (ORIENTAÇÃO OU ACOMPANHAMENTO DE ESTUDANTES EM ATIVIDADES DE EXTENSÃO HOMOLOGADAS PELA PROEC)',
                 'route' => route('extensao_orientacao_index', ['user_pad_id' => $user_pad_id])
             ],
+            [
+                'id' => 'extensao_outros',
+                'name' => '3. EXTENSÃO (OUTROS)',
+                'route' => route('extensao_outros_index', ['user_pad_id' => $user_pad_id])
+            ],
         ];
     }
 
@@ -127,6 +143,11 @@ class PadTables {
                 'name' => '7. GESTÃO (COORDENAÇÃO DE PROGRAMA INSTITUCIONAL)',
                 'route' => route('gestao_coordenacao_programa_institucional_index', ['user_pad_id' => $user_pad_id])
             ],
+            [
+                'id' => 'gestao_outros',
+                'name' => '8. GESTÃO (OUTROS)',
+                'route' => route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
+            ],
         ];
     }
 
diff --git a/app/Queries/Tabelas/Extensao/ExtensaoOutrosQuery.php b/app/Queries/Tabelas/Extensao/ExtensaoOutrosQuery.php
index 190cfef..62d66f0 100644
--- a/app/Queries/Tabelas/Extensao/ExtensaoOutrosQuery.php
+++ b/app/Queries/Tabelas/Extensao/ExtensaoOutrosQuery.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace App\Queries\Tabelas\Pesquisa;
+namespace App\Queries\Tabelas\Extensao;
 
 use App\Models\Tabelas\Extensao\ExtensaoOutros;
 use App\Queries\CustomQuery;
diff --git a/resources/views/pad/components/templates/dimensao/ensino/outros/form_create.blade.php b/resources/views/pad/components/templates/dimensao/ensino/outros/form_create.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/ensino/outros/form_update.blade.php b/resources/views/pad/components/templates/dimensao/ensino/outros/form_update.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/extensao/coordenacao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/extensao/coordenacao/form_create.blade.php
index 73a54eb..cd7eece 100644
--- a/resources/views/pad/components/templates/dimensao/extensao/coordenacao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/extensao/coordenacao/form_create.blade.php
@@ -163,7 +163,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '12-',
+        'cod_atividade' => '14-',
         'form_id' => 'extensao_coordenacao-form',
         'div_selected' => 'extensao_coordenacao',
         'route' => route('extensao_coordenacao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/extensao/orientacao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/extensao/orientacao/form_create.blade.php
index a894571..67d4a52 100644
--- a/resources/views/pad/components/templates/dimensao/extensao/orientacao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/extensao/orientacao/form_create.blade.php
@@ -153,7 +153,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '13-',
+        'cod_atividade' => '15-',
         'form_id' => 'extensao_orientacao-form',
         'div_selected' => 'extensao_coordenacao',
         'route' => route('extensao_orientacao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/extensao/outros/form_create.blade.php b/resources/views/pad/components/templates/dimensao/extensao/outros/form_create.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/extensao/outros/form_update.blade.php b/resources/views/pad/components/templates/dimensao/extensao/outros/form_update.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/gestao/coordenacao_laboratorios_didaticos/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/coordenacao_laboratorios_didaticos/form_create.blade.php
index 1cf691a..6426eda 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/coordenacao_laboratorios_didaticos/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/coordenacao_laboratorios_didaticos/form_create.blade.php
@@ -132,7 +132,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '19-',
+        'cod_atividade' => '22-',
         'form_id' => 'gestao_coordenacao_laboratorios_didaticos-form',
         'div_selected' => 'gestao_coordenacao_laboratorios_didaticos',
         'route' => route('gestao_coordenacao_laboratorios_didaticos_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/coordenacao_programa_institucional/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/coordenacao_programa_institucional/form_create.blade.php
index 0a52199..59f7ac0 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/coordenacao_programa_institucional/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/coordenacao_programa_institucional/form_create.blade.php
@@ -132,7 +132,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '20-',
+        'cod_atividade' => '23-',
         'form_id' => 'gestao_coordenacao_programa_institucional-form',
         'div_selected' => 'gestao_coordenacao_programa_institucional',
         'route' => route('gestao_coordenacao_programa_institucional_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/membro_camaras/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/membro_camaras/form_create.blade.php
index 403810e..058d97e 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/membro_camaras/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/membro_camaras/form_create.blade.php
@@ -131,7 +131,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '18-',
+        'cod_atividade' => '21-',
         'form_id' => 'gestao_membro_camaras-form',
         'div_selected' => 'gestao_membro_camaras',
         'route' => route('gestao_membro_camaras_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/membro_comissao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/membro_comissao/form_create.blade.php
index bc9f968..e0b1061 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/membro_comissao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/membro_comissao/form_create.blade.php
@@ -133,7 +133,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '14-',
+        'cod_atividade' => '17-',
         'form_id' => 'gestao_membro_comissao-form',
         'div_selected' => 'gestao_membro_comissao',
         'route' => route('gestao_membro_comissao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/membro_conselho/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/membro_conselho/form_create.blade.php
index c4eda16..76613f7 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/membro_conselho/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/membro_conselho/form_create.blade.php
@@ -132,7 +132,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '15-',
+        'cod_atividade' => '18-',
         'form_id' => 'gestao_membro_conselho-form',
         'div_selected' => 'gestao_membro_conselho',
         'route' => route('gestao_membro_conselho_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/membro_titular_conselho/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/membro_titular_conselho/form_create.blade.php
index 3b10c33..d3c8c33 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/membro_titular_conselho/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/membro_titular_conselho/form_create.blade.php
@@ -131,7 +131,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '16-',
+        'cod_atividade' => '19-',
         'form_id' => 'gestao_membro_titular_conselho-form',
         'div_selected' => 'gestao_membro_titular_conselho',
         'route' => route('gestao_membro_titular_conselho_search'),
diff --git a/resources/views/pad/components/templates/dimensao/gestao/outros/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/outros/form_create.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/gestao/outros/form_update.blade.php b/resources/views/pad/components/templates/dimensao/gestao/outros/form_update.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/gestao/representante_unidade_educacao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/gestao/representante_unidade_educacao/form_create.blade.php
index 8e6cd0f..ddcaab4 100644
--- a/resources/views/pad/components/templates/dimensao/gestao/representante_unidade_educacao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/gestao/representante_unidade_educacao/form_create.blade.php
@@ -133,7 +133,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '17-',
+        'cod_atividade' => '20-',
         'form_id' => 'gestao_representante_unidade_educacao-form',
         'div_selected' => 'gestao_representante_unidade_educacao',
         'route' => route('gestao_representante_unidade_educacao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/pesquisa/coordenacao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/pesquisa/coordenacao/form_create.blade.php
index 6e866d7..ad3ce20 100644
--- a/resources/views/pad/components/templates/dimensao/pesquisa/coordenacao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/pesquisa/coordenacao/form_create.blade.php
@@ -171,7 +171,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '9-',
+        'cod_atividade' => '10-',
         'form_id' => 'pesquisa_coordenacao-form',
         'div_selected' => 'pesquisa_coordenacao',
         'route' => route('pesquisa_coordenacao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/pesquisa/orientacao/form_create.blade.php b/resources/views/pad/components/templates/dimensao/pesquisa/orientacao/form_create.blade.php
index 8e13116..f7b6ff0 100644
--- a/resources/views/pad/components/templates/dimensao/pesquisa/orientacao/form_create.blade.php
+++ b/resources/views/pad/components/templates/dimensao/pesquisa/orientacao/form_create.blade.php
@@ -153,7 +153,7 @@
     @include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
 
     @include('pad.components.scripts.cod_atividade', [
-        'cod_atividade' => '10-',
+        'cod_atividade' => '12-',
         'form_id' => 'pesquisa_orientacao-form',
         'div_selected' => 'pesquisa_orientacao',
         'route' => route('pesquisa_orientacao_search'),
diff --git a/resources/views/pad/components/templates/dimensao/pesquisa/outros/form_create.blade.php b/resources/views/pad/components/templates/dimensao/pesquisa/outros/form_create.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/resources/views/pad/components/templates/dimensao/pesquisa/outros/form_update.blade.php b/resources/views/pad/components/templates/dimensao/pesquisa/outros/form_update.blade.php
new file mode 100644
index 0000000..e69de29
diff --git a/routes/dimensao/ensino.php b/routes/dimensao/ensino.php
index d24d6b8..32bd974 100644
--- a/routes/dimensao/ensino.php
+++ b/routes/dimensao/ensino.php
@@ -8,6 +8,7 @@ use App\Http\Controllers\Dimensao\Tabelas\Ensino\EnsinoParticipacaoController;
 use App\Http\Controllers\Dimensao\Tabelas\Ensino\EnsinoProjetoController;
 use App\Http\Controllers\Dimensao\Tabelas\Ensino\EnsinoSupervisaoController;
 use App\Http\Controllers\Dimensao\Tabelas\Ensino\EnsinoMembroDocenteController;
+use App\Http\Controllers\Dimensao\Tabelas\Ensino\EnsinoOutrosController;
 use Illuminate\Support\Facades\Route;
 
 /*
@@ -130,3 +131,16 @@ Route::prefix('/pad/dimensao/ensino/membro/docente')->group(function () {
     Route::get('/search/{user_pad_id?}', [EnsinoMembroDocenteController::class, 'search'])->name('ensino_membro_docente_search');
     Route::get('/resolucao', [EnsinoMembroDocenteController::class, 'viewResolucao'])->name('view_ensino_membro_docente_resolucao');
 });
+
+/* EnsinoOutrosController */
+Route::prefix('/pad/dimensao/ensino/outros')->group(function () {
+    Route::post('/create', [EnsinoOutrosController::class, 'create'])->name('ensino_outros_create');
+    Route::post('/update/{id}', [EnsinoOutrosController::class, 'update'])->name('ensino_outros_update');
+    Route::post('/validate', [EnsinoOutrosController::class, 'ajaxValidation'])->name('ensino_outros_validate');
+    Route::delete('/delete/{id}', [EnsinoOutrosController::class, 'delete'])->name('ensino_outros_delete');
+
+    Route::get('/index/{user_pad_id}', [EnsinoOutrosController::class, 'index'])->name('ensino_outros_index');
+    Route::get('/edit/{id?}', [EnsinoOutrosController::class, 'edit'])->name('view_ensino_outros_update');
+    Route::get('/search/{user_pad_id?}', [EnsinoOutrosController::class, 'search'])->name('ensino_outros_search');
+    Route::get('/resolucao', [EnsinoOutrosController::class, 'viewResolucao'])->name('view_ensino_outros_resolucao');
+});
diff --git a/routes/dimensao/extensao.php b/routes/dimensao/extensao.php
index 347a481..e4dc8a5 100644
--- a/routes/dimensao/extensao.php
+++ b/routes/dimensao/extensao.php
@@ -2,6 +2,7 @@
 
 use App\Http\Controllers\Dimensao\Tabelas\Extensao\ExtensaoCoordenacaoController;
 use App\Http\Controllers\Dimensao\Tabelas\Extensao\ExtensaoOrientacaoController;
+use App\Http\Controllers\Dimensao\Tabelas\Extensao\ExtensaoOutrosController;
 use Illuminate\Support\Facades\Route;
 
 /*
@@ -41,3 +42,17 @@ Route::prefix('/pad/dimensao/extensao/orientacao')->group(function () {
     Route::get('/search/{user_pad_id?}', [ExtensaoOrientacaoController::class, 'search'])->name('extensao_orientacao_search');
     Route::get('/resolucao', [ExtensaoOrientacaoController::class, 'viewResolucao'])->name('view_extensao_orientacao_resolucao');
 });
+
+
+/** ExtensaoOutrosController */
+Route::prefix('/pad/dimensao/extensao/outros')->group(function () {
+    Route::post('/create', [ExtensaoOutrosController::class, 'create'])->name('extensao_outros_create');
+    Route::post('/update/{id}', [ExtensaoOutrosController::class, 'update'])->name('extensao_outros_update');
+    Route::post('/validate', [ExtensaoOutrosController::class, 'ajaxValidation'])->name('extensao_outros_validate');
+    Route::delete('/delete/{id}', [ExtensaoOutrosController::class, 'delete'])->name('extensao_outros_delete');
+
+    Route::get('/index/{user_pad_id}', [ExtensaoOutrosController::class, 'index'])->name('extensao_outros_index');
+    Route::get('/edit/{id?}', [ExtensaoOutrosController::class, 'edit'])->name('extensao_outros_update');
+    Route::get('/search/{user_pad_id?}', [ExtensaoOutrosController::class, 'search'])->name('extensao_outros_search');
+    Route::get('/resolucao', [ExtensaoOutrosController::class, 'viewResolucao'])->name('extensao_outros_resolucao');
+});
diff --git a/routes/dimensao/gestao.php b/routes/dimensao/gestao.php
index eda9fc3..d115a7e 100644
--- a/routes/dimensao/gestao.php
+++ b/routes/dimensao/gestao.php
@@ -6,6 +6,7 @@ use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoMembroCamarasController;
 use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoMembroComissaoController;
 use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoMembroConselhoController;
 use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoMembroTitularConselhoController;
+use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoOutrosController;
 use App\Http\Controllers\Dimensao\Tabelas\Gestao\GestaoRepresentanteUnidadeEducacaoController;
 use Illuminate\Support\Facades\Route;
 
@@ -115,3 +116,16 @@ Route::prefix('/pad/dimensao/gestao/coordenacao/programa/institucional')->group(
     Route::get('/search/{user_pad_id?}', [GestaoCoordenacaoProgramaInstitucionalController::class, 'search'])->name('gestao_coordenacao_programa_institucional_search');
     Route::get('/resolucao', [GestaoCoordenacaoProgramaInstitucionalController::class, 'viewResolucao'])->name('view_gestao_coordenacao_programa_institucional_resolucao');
 });
+
+/** GestaoOutrosController */
+Route::prefix('/pad/dimensao/gestao/outros')->group(function () {
+    Route::post('/create', [GestaoOutrosController::class, 'create'])->name('gestao_outros_create');
+    Route::post('/update/{id}', [GestaoOutrosController::class, 'update'])->name('gestao_outros_update');
+    Route::post('/validate', [GestaoOutrosController::class, 'ajaxValidation'])->name('gestao_outros_validate');
+    Route::delete('/delete/{id}', [GestaoOutrosController::class, 'delete'])->name('gestao_outros_delete');
+
+    Route::get('/index/{user_pad_id}', [GestaoOutrosController::class, 'index'])->name('gestao_outros_index');
+    Route::get('/edit/{id?}', [GestaoOutrosController::class, 'edit'])->name('view_gestao_outros_update');
+    Route::get('/search/{user_pad_id?}', [GestaoOutrosController::class, 'search'])->name('gestao_outros_search');
+    Route::get('/resolucao', [GestaoOutrosController::class, 'viewResolucao'])->name('view_gestao_outros_resolucao');
+});
diff --git a/routes/dimensao/pesquisa.php b/routes/dimensao/pesquisa.php
index f837bcb..cd4ed4d 100644
--- a/routes/dimensao/pesquisa.php
+++ b/routes/dimensao/pesquisa.php
@@ -3,6 +3,7 @@
 use App\Http\Controllers\Dimensao\Tabelas\Pesquisa\PesquisaCoordenacaoController;
 use App\Http\Controllers\Dimensao\Tabelas\Pesquisa\PesquisaLiderancaController;
 use App\Http\Controllers\Dimensao\Tabelas\Pesquisa\PesquisaOrientacaoController;
+use App\Http\Controllers\Dimensao\Tabelas\Pesquisa\PesquisaOutrosController;
 use Illuminate\Support\Facades\Route;
 
 /*
@@ -55,3 +56,16 @@ Route::prefix('/pad/dimensao/pesquisa/orientacao')->group(function () {
     Route::get('/search/{user_pad_id?}', [PesquisaOrientacaoController::class, 'search'])->name('pesquisa_orientacao_search');
     Route::get('/resolucao', [PesquisaOrientacaoController::class, 'viewResolucao'])->name('view_pesquisa_orientacao_resolucao');
 });
+
+/** PesquisaOutrosController */
+Route::prefix('/pad/dimensao/pesquisa/outros')->group(function () {
+    Route::post('/create', [PesquisaOutrosController::class, 'create'])->name('pesquisa_outros_create');
+    Route::post('/update/{id}', [PesquisaOutrosController::class, 'update'])->name('pesquisa_outros_update');
+    Route::post('/validate', [PesquisaOutrosController::class, 'ajaxValidation'])->name('pesquisa_outros_validate');
+    Route::delete('/delete/{id}', [PesquisaOutrosController::class, 'delete'])->name('pesquisa_outros_delete');
+
+    Route::get('/index/{user_pad_id}', [PesquisaOutrosController::class, 'index'])->name('pesquisa_outros_index');
+    Route::get('/edit/{id?}', [PesquisaOutrosController::class, 'edit'])->name('view_pesquisa_outros_update');
+    Route::get('/search/{user_pad_id?}', [PesquisaOutrosController::class, 'search'])->name('pesquisa_outros_search');
+    Route::get('/resolucao', [PesquisaOutrosController::class, 'viewResolucao'])->name('view_pesquisa_outros_resolucao');
+});
\ No newline at end of file
-- 
GitLab