Commit db05d14c authored by alissonalbuquerque's avatar alissonalbuquerque
Browse files

mergin

parents 0e5ea578 07d2782b
...@@ -4,11 +4,12 @@ namespace App\Http\Controllers; ...@@ -4,11 +4,12 @@ namespace App\Http\Controllers;
use App\Models\Campus; use App\Models\Campus;
use App\Models\Unidade; use App\Models\Unidade;
use App\Models\Util\Menu;
use App\Queries\CampusQuery; use App\Queries\CampusQuery;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Models\Util\MenuItemsAdmin; use App\Models\Util\MenuItemsAdmin;
use Illuminate\Log\Logger; use Illuminate\Log\Logger;
use Illuminate\Support\Facades\Response;
class CampusController extends Controller class CampusController extends Controller
{ {
...@@ -22,7 +23,7 @@ class CampusController extends Controller ...@@ -22,7 +23,7 @@ class CampusController extends Controller
$campus = Campus::all(); $campus = Campus::all();
return view('campus.index', [ return view('campus.index', [
'index_menu' => MenuItemsAdmin::CAMPUS, 'menu' => Menu::CAMPUS,
'campus' => $campus 'campus' => $campus
]); ]);
} }
...@@ -36,7 +37,7 @@ class CampusController extends Controller ...@@ -36,7 +37,7 @@ class CampusController extends Controller
{ {
return view('campus.create', [ return view('campus.create', [
'unidades' => Unidade::all(), 'unidades' => Unidade::all(),
'index_menu' => MenuItemsAdmin::CAMPUS, 'menu' => Menu::CAMPUS,
]); ]);
} }
...@@ -82,7 +83,7 @@ class CampusController extends Controller ...@@ -82,7 +83,7 @@ class CampusController extends Controller
$campus = Campus::findOrFail($id); $campus = Campus::findOrFail($id);
return view('campus.update', [ return view('campus.update', [
'unidades' => Unidade::all(), 'unidades' => Unidade::all(),
'index_menu' => MenuItemsAdmin::CAMPUS, 'menu' => Menu::CAMPUS,
'campus' => $campus, 'campus' => $campus,
]); ]);
} }
...@@ -125,4 +126,40 @@ class CampusController extends Controller ...@@ -125,4 +126,40 @@ class CampusController extends Controller
{ {
return Campus::initQuery()->whereUnidadeId($unidade_id)->orderBy('name')->get(); return Campus::initQuery()->whereUnidadeId($unidade_id)->orderBy('name')->get();
} }
/**
*
* @params Illuminate\Http\Request\Request
*/
public function actionSearch(Request $request)
{
// QueryParams
$q = $request->query('q');
$id = $request->query('id');
$campus = Campus::where([]);
if($id) {
$campus = $campus->whereId($id);
}
if($q) {
$campus = $campus->where('name', 'like', '%'.$q.'%');
}
$campus = $campus->get();
$array =
$campus->map(function($campus, $key)
{
return [
'id' => $campus->id,
'text' => $campus->name,
];
});
$array = ['results' => $array];
return Response::json($array);
}
} }
...@@ -4,9 +4,9 @@ namespace App\Http\Controllers; ...@@ -4,9 +4,9 @@ namespace App\Http\Controllers;
use App\Models\Campus; use App\Models\Campus;
use App\Models\Curso; use App\Models\Curso;
use App\Models\Unidade; use App\Models\Util\Menu;
use App\Models\Util\MenuItemsAdmin;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Response;
class CursoController extends Controller class CursoController extends Controller
{ {
...@@ -26,7 +26,7 @@ class CursoController extends Controller ...@@ -26,7 +26,7 @@ class CursoController extends Controller
return view('curso.index', [ return view('curso.index', [
'campusWithCursos' => $campusWithCursos, 'campusWithCursos' => $campusWithCursos,
'index_menu' => MenuItemsAdmin::CURSOS 'menu' => Menu::CURSOS
]); ]);
} }
...@@ -41,7 +41,7 @@ class CursoController extends Controller ...@@ -41,7 +41,7 @@ class CursoController extends Controller
return view('curso.create', [ return view('curso.create', [
'allCampus' => $allCampus, 'allCampus' => $allCampus,
'index_menu' => MenuItemsAdmin::CURSOS 'menu' => Menu::CURSOS
]); ]);
} }
...@@ -87,7 +87,7 @@ class CursoController extends Controller ...@@ -87,7 +87,7 @@ class CursoController extends Controller
$curso = Curso::findOrFail($id); $curso = Curso::findOrFail($id);
return view('curso.update', [ return view('curso.update', [
'allCampus' => Campus::all(), 'allCampus' => Campus::all(),
'index_menu' => MenuItemsAdmin::CURSOS, 'menu' => Menu::CURSOS,
'curso' => $curso, 'curso' => $curso,
]); ]);
} }
...@@ -116,7 +116,8 @@ class CursoController extends Controller ...@@ -116,7 +116,8 @@ class CursoController extends Controller
/** /**
* Remove the specified resource from storage. * Remove the specified resource from storage.
* *
* @param int $id * @param string $q
* @param string $id
* @return \Illuminate\Http\Response * @return \Illuminate\Http\Response
*/ */
public function destroy($id) public function destroy($id)
...@@ -125,4 +126,45 @@ class CursoController extends Controller ...@@ -125,4 +126,45 @@ class CursoController extends Controller
$model->delete(); $model->delete();
return redirect()->route('curso_index')->with('success', 'Excluído com sucesso!'); return redirect()->route('curso_index')->with('success', 'Excluído com sucesso!');
} }
/**
*
* @params Illuminate\Http\Request\Request
*/
public function actionSearch(Request $request)
{
// QueryParams
$q = $request->query('q');
$id = $request->query('id');
$campus_id = $request->query('campus_id');
$cursos = Curso::where([]);
if($campus_id) {
$cursos = $cursos->whereId($campus_id);
}
if($id) {
$cursos = $cursos->whereId($id);
}
if($q) {
$cursos = $cursos->where('name', 'like', '%'.$q.'%');
}
$cursos = $cursos->get();
$array =
$cursos->map(function($curso, $key)
{
return [
'id' => $curso->id,
'text' => $curso->name,
];
});
$array = ['results' => $array];
return Response::json($array);
}
} }
...@@ -2,9 +2,11 @@ ...@@ -2,9 +2,11 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Models\PAD; use App\Models\Pad;
use App\Models\Tabelas\Constants; use App\Models\Tabelas\Constants;
use App\Models\UserPad; use App\Models\UserPad;
use App\Models\UserType;
use App\Models\Util\Menu;
use App\Models\Util\MenuItemsAdmin; use App\Models\Util\MenuItemsAdmin;
use App\Models\Util\MenuItemsTeacher; use App\Models\Util\MenuItemsTeacher;
use App\Models\Util\Status; use App\Models\Util\Status;
...@@ -21,28 +23,24 @@ class DashboardController extends Controller ...@@ -21,28 +23,24 @@ class DashboardController extends Controller
if($user->isTypeAdmin()) if($user->isTypeAdmin())
{ {
return view('dashboard',['menu_index' => MenuItemsAdmin::HOME]); return view('dashboard',['menu' => Menu::HOME]);
} }
if($user->isTypeTeacher()) if($user->isTypeTeacher())
{ {
$userPads = $userPads = UserPad::whereUserId($user->id)->whereStatus(Status::ATIVO)->get();
UserPad::initQuery()
->whereUser($user->id)
->wherePadStatus(Status::ATIVO)
->get();
return view('dashboard', ['userPads' => $userPads, 'menu_index'=> MenuItemsTeacher::HOME]); return view('dashboard', ['userPads' => $userPads, 'menu'=> Menu::HOME]);
} }
if($user->isTypeDirector()) if($user->isTypeDirector())
{ {
return view('dashboard', ['PADs' => PAD::all(), 'menu_index'=> 0]); return view('dashboard', ['PADs' => Pad::all(), 'menu'=> Menu::HOME]);
} }
if($user->isTypeCoordinator()) if($user->isTypeCoordinator())
{ {
return view('dashboard', ['PADs' => PAD::all(), 'menu_index'=> 0]); return view('dashboard', ['PADs' => Pad::all(), 'menu'=> Menu::HOME]);
} }
if($user->isTypeEvaluator()) if($user->isTypeEvaluator())
...@@ -53,7 +51,7 @@ class DashboardController extends Controller ...@@ -53,7 +51,7 @@ class DashboardController extends Controller
->wherePadStatus(Status::ATIVO) ->wherePadStatus(Status::ATIVO)
->get(); ->get();
return view('dashboard', ['userPads' => $userPads, 'menu_index'=> MenuItemsTeacher::HOME]); return view('dashboard', ['userPads' => $userPads, 'menu'=> Menu::HOME]);
} }
//return redirect()->route('login'); //return redirect()->route('login');
......
...@@ -30,7 +30,6 @@ class EnsinoAtendimentoDiscenteController extends Controller ...@@ -30,7 +30,6 @@ class EnsinoAtendimentoDiscenteController extends Controller
->orderBy('cod_atividade') ->orderBy('cod_atividade')
->get(); ->get();
$niveis = Nivel::listNivel(); $niveis = Nivel::listNivel();
$modalidades = Modalidade::listModalidade(); $modalidades = Modalidade::listModalidade();
$divs = PadTables::tablesEnsino($user_pad_id); $divs = PadTables::tablesEnsino($user_pad_id);
......
...@@ -29,6 +29,8 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -29,6 +29,8 @@ class ExtensaoCoordenacaoController extends Controller
$funcoes = Constants::listFuncaoProjeto(); $funcoes = Constants::listFuncaoProjeto();
$planejamentos = ExtensaoCoordenacao::listPlanejamentos();
$divs = PadTables::tablesExtensao($user_pad_id); $divs = PadTables::tablesExtensao($user_pad_id);
return view('pad.components.templates.dimensao.extensao.coordenacao.form_create', [ return view('pad.components.templates.dimensao.extensao.coordenacao.form_create', [
...@@ -36,6 +38,7 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -36,6 +38,7 @@ class ExtensaoCoordenacaoController extends Controller
'divs' => $divs, 'divs' => $divs,
'funcoes' => $funcoes, 'funcoes' => $funcoes,
'planejamentos' => $planejamentos,
'user_pad_id' => $user_pad_id, 'user_pad_id' => $user_pad_id,
'index_menu' => MenuItemsTeacher::PAD, 'index_menu' => MenuItemsTeacher::PAD,
...@@ -46,10 +49,12 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -46,10 +49,12 @@ class ExtensaoCoordenacaoController extends Controller
$model = ExtensaoCoordenacao::find($id); $model = ExtensaoCoordenacao::find($id);
$funcoes = Constants::listFuncaoProjeto(); $funcoes = Constants::listFuncaoProjeto();
$planejamentos = ExtensaoCoordenacao::listPlanejamentos();
return view('pad.components.templates.dimensao.extensao.coordenacao.form_update', [ return view('pad.components.templates.dimensao.extensao.coordenacao.form_update', [
'model' => $model, 'model' => $model,
'funcoes' => $funcoes 'funcoes' => $funcoes,
'planejamentos' => $planejamentos
]); ]);
} }
...@@ -64,9 +69,11 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -64,9 +69,11 @@ class ExtensaoCoordenacaoController extends Controller
* *
* @return \Illuminate\Http\Response * @return \Illuminate\Http\Response
*/ */
public function create(Request $request) { public function create(Request $request)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-1')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
...@@ -78,6 +85,13 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -78,6 +85,13 @@ class ExtensaoCoordenacaoController extends Controller
array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoCoordenacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoCoordenacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
if($validator->fails()) if($validator->fails())
{ {
...@@ -118,9 +132,11 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -118,9 +132,11 @@ class ExtensaoCoordenacaoController extends Controller
} }
public function update($id, Request $request) { public function update($id, Request $request)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-1')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
...@@ -132,6 +148,13 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -132,6 +148,13 @@ class ExtensaoCoordenacaoController extends Controller
array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoCoordenacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoCoordenacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
$model = ExtensaoCoordenacao::find($id); $model = ExtensaoCoordenacao::find($id);
$model->fill($request->all()); $model->fill($request->all());
...@@ -186,7 +209,9 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -186,7 +209,9 @@ class ExtensaoCoordenacaoController extends Controller
public function ajaxValidation(Request $request) public function ajaxValidation(Request $request)
{ {
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-1')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
...@@ -198,6 +223,13 @@ class ExtensaoCoordenacaoController extends Controller ...@@ -198,6 +223,13 @@ class ExtensaoCoordenacaoController extends Controller
array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoCoordenacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoCoordenacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoCoordenacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoCoordenacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
if($validator->passes()) { if($validator->passes()) {
return Response::json(['message' => true, 'status' => 200]); return Response::json(['message' => true, 'status' => 200]);
......
...@@ -29,6 +29,8 @@ class ExtensaoOrientacaoController extends Controller ...@@ -29,6 +29,8 @@ class ExtensaoOrientacaoController extends Controller
$funcoes = Constants::listFuncaoOrientador(); $funcoes = Constants::listFuncaoOrientador();
$planejamentos = ExtensaoOrientacao::listPlanejamentos();
$divs = PadTables::tablesExtensao($user_pad_id); $divs = PadTables::tablesExtensao($user_pad_id);
return view('pad.components.templates.dimensao.extensao.orientacao.form_create', [ return view('pad.components.templates.dimensao.extensao.orientacao.form_create', [
...@@ -36,6 +38,7 @@ class ExtensaoOrientacaoController extends Controller ...@@ -36,6 +38,7 @@ class ExtensaoOrientacaoController extends Controller
'divs' => $divs, 'divs' => $divs,
'funcoes' => $funcoes, 'funcoes' => $funcoes,
'planejamentos' => $planejamentos,
'user_pad_id' => $user_pad_id, 'user_pad_id' => $user_pad_id,
'index_menu' => MenuItemsTeacher::PAD, 'index_menu' => MenuItemsTeacher::PAD,
...@@ -46,10 +49,13 @@ class ExtensaoOrientacaoController extends Controller ...@@ -46,10 +49,13 @@ class ExtensaoOrientacaoController extends Controller
$model = ExtensaoOrientacao::find($id); $model = ExtensaoOrientacao::find($id);
$funcoes = Constants::listFuncaoOrientador(); $funcoes = Constants::listFuncaoOrientador();
$planejamentos = ExtensaoOrientacao::listPlanejamentos();
return view('pad.components.templates.dimensao.extensao.orientacao.form_update', [ return view('pad.components.templates.dimensao.extensao.orientacao.form_update', [
'model' => $model, 'model' => $model,
'funcoes' => $funcoes 'funcoes' => $funcoes,
'planejamentos' => $planejamentos
]); ]);
} }
...@@ -66,18 +72,27 @@ class ExtensaoOrientacaoController extends Controller ...@@ -66,18 +72,27 @@ class ExtensaoOrientacaoController extends Controller
*/ */
public function create(Request $request) public function create(Request $request)
{ {
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-2')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
$cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max); $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max, [], true);
$validator = Validator::make( $validator = Validator::make(
$request->all(), $request->all(),
array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoOrientacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoOrientacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
if($validator->fails()) if($validator->fails())
{ {
...@@ -120,18 +135,27 @@ class ExtensaoOrientacaoController extends Controller ...@@ -120,18 +135,27 @@ class ExtensaoOrientacaoController extends Controller
public function update($id, Request $request) public function update($id, Request $request)
{ {
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-2')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
$cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max); $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max, [], true);
$validator = Validator::make( $validator = Validator::make(
$request->all(), $request->all(),
array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoOrientacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoOrientacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
$model = ExtensaoOrientacao::find($id); $model = ExtensaoOrientacao::find($id);
$model->fill($request->all()); $model->fill($request->all());
...@@ -186,18 +210,27 @@ class ExtensaoOrientacaoController extends Controller ...@@ -186,18 +210,27 @@ class ExtensaoOrientacaoController extends Controller
public function ajaxValidation(Request $request) public function ajaxValidation(Request $request)
{ {
$planejamento = Planejamento::initQuery()->whereCodDimensao('X-2')->first(); if($request->cod_dimensao)
{
$planejamento = Planejamento::initQuery()->whereCodDimensao($request->cod_dimensao)->first();
$ch_min = $planejamento->ch_semanal; $ch_min = $planejamento->ch_semanal;
$ch_max = $planejamento->ch_maxima; $ch_max = $planejamento->ch_maxima;
$cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max); $cargaHoraria = new CargaHorariaValidation($ch_min, $ch_max, [], true);
$validator = Validator::make( $validator = Validator::make(
$request->all(), $request->all(),
array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()), array_merge(ExtensaoOrientacao::rules(), $cargaHoraria->rules()),
array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages()) array_merge(ExtensaoOrientacao::messages(), $cargaHoraria->messages())
); );
} else {
$validator = Validator::make(
$request->all(),
array_merge(ExtensaoOrientacao::rules(), CargaHorariaValidation::defaultRules()),
array_merge(ExtensaoOrientacao::messages(), CargaHorariaValidation::defaultMessages())
);
}
if($validator->passes()) { if($validator->passes()) {
return Response::json(['message' => true, 'status' => 200]); return Response::json(['message' => true, 'status' => 200]);
......
...@@ -26,7 +26,7 @@ class ExtensaoOutrosController extends Controller ...@@ -26,7 +26,7 @@ class ExtensaoOutrosController extends Controller
->orderBy('cod_atividade') ->orderBy('cod_atividade')
->get(); ->get();
$divs = PadTables::tablesEnsino($user_pad_id); $divs = PadTables::tablesExtensao($user_pad_id);
return view('pad.components.templates.dimensao.extensao.outros.form_create', [ return view('pad.components.templates.dimensao.extensao.outros.form_create', [
'atividades' => $atividades, 'atividades' => $atividades,
......
...@@ -26,7 +26,7 @@ class PesquisaOutrosController extends Controller ...@@ -26,7 +26,7 @@ class PesquisaOutrosController extends Controller
->orderBy('cod_atividade') ->orderBy('cod_atividade')
->get(); ->get();
$divs = PadTables::tablesEnsino($user_pad_id); $divs = PadTables::tablesPesquisa($user_pad_id);
return view('pad.components.templates.dimensao.pesquisa.outros.form_create', [ return view('pad.components.templates.dimensao.pesquisa.outros.form_create', [
'atividades' => $atividades, 'atividades' => $atividades,
......
...@@ -4,11 +4,37 @@ namespace App\Http\Controllers; ...@@ -4,11 +4,37 @@ namespace App\Http\Controllers;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Models\PAD; use App\Models\Pad;
use App\Models\Tabelas\Constants; use App\Models\Tabelas\Constants;
use App\Models\Tabelas\Ensino\EnsinoAtendimentoDiscente;
use App\Models\Tabelas\Ensino\EnsinoAula;
use App\Models\Tabelas\Ensino\EnsinoCoordenacaoRegencia;
use App\Models\Tabelas\Ensino\EnsinoMembroDocente;
use App\Models\Tabelas\Ensino\EnsinoOrientacao;
use App\Models\Tabelas\Ensino\EnsinoOutros;
use App\Models\Tabelas\Ensino\EnsinoParticipacao;
use App\Models\Tabelas\Ensino\EnsinoProjeto;
use App\Models\Tabelas\Ensino\EnsinoSupervisao;
use App\Models\Tabelas\Extensao\ExtensaoCoordenacao;
use App\Models\Tabelas\Extensao\ExtensaoOrientacao;
use App\Models\Tabelas\Extensao\ExtensaoOutros;
use App\Models\Tabelas\Gestao\GestaoCoordenacaoLaboratoriosDidaticos;
use App\Models\Tabelas\Gestao\GestaoCoordenacaoProgramaInstitucional;
use App\Models\Tabelas\Gestao\GestaoMembroCamaras;
use App\Models\Tabelas\Gestao\GestaoMembroComissao;
use App\Models\Tabelas\Gestao\GestaoMembroConselho;
use App\Models\Tabelas\Gestao\GestaoMembroTitularConselho;
use App\Models\Tabelas\Gestao\GestaoOutros;
use App\Models\Tabelas\Gestao\GestaoRepresentanteUnidadeEducacao;
use App\Models\Tabelas\Pesquisa\PesquisaCoordenacao;
use App\Models\Tabelas\Pesquisa\PesquisaLideranca;
use App\Models\Tabelas\Pesquisa\PesquisaOrientacao;
use App\Models\Tabelas\Pesquisa\PesquisaOutros;
use App\Models\User; use App\Models\User;
use App\Models\UserPad; use App\Models\UserPad;
use App\Models\UserType; use App\Models\UserType;
use App\Models\UserTypePad;
use App\Models\Util\Menu;
use App\Models\Util\MenuItemsAdmin; use App\Models\Util\MenuItemsAdmin;
use App\Models\Util\MenuItemsTeacher; use App\Models\Util\MenuItemsTeacher;
use App\Models\Util\Status; use App\Models\Util\Status;
...@@ -28,18 +54,20 @@ class PadController extends Controller ...@@ -28,18 +54,20 @@ class PadController extends Controller
*/ */
public function index() public function index()
{ {
if(Auth::user()->isTypeAdmin()) { if(Auth::user()->isTypeAdmin())
{
$users = User::initQuery()->whereType(UserType::TEACHER)->get();
$pads = Pad::all(); $pads = Pad::all();
$index_menu = MenuItemsAdmin::PADS; $menu = Menu::PADS;
return view('pad.admin.index', ['index_menu' => $index_menu, 'pads' => $pads]); return view('pad.admin.index', ['menu' => $menu, 'pads' => $pads]);
} }
if(Auth::user()->isTypeTeacher()) { if(Auth::user()->isTypeTeacher())
{
$index_menu = MenuItemsTeacher::PAD; $menu = Menu::PADS;
$userPads = UserPad::initQuery()->whereUser(Auth::user()->id)->get(); $userPads = UserPad::whereUserId(Auth::user()->id)->get();
return view('pad.teacher.index', ['index_menu' => $index_menu, 'userPads' => $userPads]); return view('pad.teacher.index', ['menu' => $menu, 'userPads' => $userPads]);
} }
} }
...@@ -47,9 +75,49 @@ class PadController extends Controller ...@@ -47,9 +75,49 @@ class PadController extends Controller
* @param integer $id * @param integer $id
* @return \Illuminate\Http\Response * @return \Illuminate\Http\Response
*/ */
public function view($id) { public function view($id)
$index_menu = 1; {
return view('pad.teacher.view', ['user_pad_id' => $id, 'index_menu' => $index_menu]); $ensinoTotalHoras =
EnsinoAtendimentoDiscente::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoAula::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoCoordenacaoRegencia::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoMembroDocente::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoOrientacao::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoOutros::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoParticipacao::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoProjeto::whereUserPadId($id)->sum('ch_semanal')
+ EnsinoSupervisao::whereUserPadId($id)->sum('ch_semanal');
$gestaoTotalHoras =
GestaoCoordenacaoLaboratoriosDidaticos::whereUserPadId($id)->sum('ch_semanal')
+ GestaoCoordenacaoProgramaInstitucional::whereUserPadId($id)->sum('ch_semanal')
+ GestaoMembroCamaras::whereUserPadId($id)->sum('ch_semanal')
+ GestaoMembroComissao::whereUserPadId($id)->sum('ch_semanal')
+ GestaoMembroConselho::whereUserPadId($id)->sum('ch_semanal')
+ GestaoMembroTitularConselho::whereUserPadId($id)->sum('ch_semanal')
+ GestaoOutros::whereUserPadId($id)->sum('ch_semanal')
+ GestaoRepresentanteUnidadeEducacao::whereUserPadId($id)->sum('ch_semanal');
$pesquisaTotalHoras =
PesquisaCoordenacao::whereUserPadId($id)->sum('ch_semanal')
+ PesquisaLideranca::whereUserPadId($id)->sum('ch_semanal')
+ PesquisaOrientacao::whereUserPadId($id)->sum('ch_semanal')
+ PesquisaOutros::whereUserPadId($id)->sum('ch_semanal');
$extensaoTotalHoras =
ExtensaoCoordenacao::whereUserPadId($id)->sum('ch_semanal')
+ ExtensaoOrientacao::whereUserPadId($id)->sum('ch_semanal')
+ ExtensaoOutros::whereUserPadId($id)->sum('ch_semanal');
$menu = Menu::PADS;
return view('pad.teacher.view', [
'menu' => $menu,
'user_pad_id' => $id,
'gestaoTotalHoras' => $gestaoTotalHoras,
'ensinoTotalHoras' => $ensinoTotalHoras,
'pesquisaTotalHoras' => $pesquisaTotalHoras,
'extensaoTotalHoras' => $extensaoTotalHoras,
]);
} }
/** /**
...@@ -59,10 +127,16 @@ class PadController extends Controller ...@@ -59,10 +127,16 @@ class PadController extends Controller
*/ */
public function create() public function create()
{ {
$menu = Menu::PADS;
$status = [ $status = [
Status::ATIVO => Status::listStatus(Status::ATIVO) Status::ATIVO => Status::listStatus(Status::ATIVO)
]; ];
return view('pad.admin.create', ['status' => $status]);
return view('pad.admin.create', [
'menu' => $menu,
'status' => $status
]);
} }
/** /**
...@@ -85,18 +159,29 @@ class PadController extends Controller ...@@ -85,18 +159,29 @@ class PadController extends Controller
'data_fim.after_or_equal' => 'A :attribute deve ser uma data posterior ou igual a data de início', 'data_fim.after_or_equal' => 'A :attribute deve ser uma data posterior ou igual a data de início',
]); ]);
if($validated) { if($validated)
{
$model = new Pad($request->all()); $model = new Pad($request->all());
if($model->save()) { $users = User::initQuery()->whereType(UserType::TEACHER)->get();
if($model->save())
{
$users = User::initQuery()->whereType(UserType::TEACHER)->get(); $users = User::initQuery()->whereType(UserType::TEACHER)->get();
foreach($users as $user) { foreach($users as $user)
$modelUserPad = new UserPad(); {
$modelUserPad->user_id = $user->id; $profile = $user->profile(UserType::TEACHER);
$modelUserPad->pad_id = $model->id;
$modelUserPad->save(); if($profile)
{
$userPad = new UserPad();
$userPad->pad_id = $model->id;
$userPad->user_id = $user->id;
$userPad->status = Status::ATIVO;
$userPad->save();
}
} }
return redirect()->route('pad_index')->with('success', 'PAD cadastrado com sucesso!'); return redirect()->route('pad_index')->with('success', 'PAD cadastrado com sucesso!');
...@@ -112,44 +197,6 @@ class PadController extends Controller ...@@ -112,44 +197,6 @@ class PadController extends Controller
return view('pad.anexo', ['index_menu' => 1 ]); return view('pad.anexo', ['index_menu' => 1 ]);
} }
// /**
// * Store a newly created resource in storage.
// *
// * @param \Illuminate\Http\Request $request
// * @return \Illuminate\Http\Response
// */
// public function store(Request $request)
// {
// $rules = [
// 'first_name' => 'required|string|min:3|max:255',
// 'city_name' => 'required|string|min:3|max:255',
// 'email' => 'required|string|email|max:255'
// ];
// $validator = Validator::make($request->all(),$rules);
// if ($validator->fails()) {
// return redirect('insert')
// ->withInput()
// ->withErrors($validator);
// }
// else{
// $data = $request->input();
// try{
// $student = new StudInsert;
// $student->first_name = $data['first_name'];
// $student->last_name = $data['last_name'];
// $student->city_name = $data['city_name'];
// $student->email = $data['email'];
// $student->save();
// return redirect('insert')->with('status',"Insert successfully");
// }
// catch(Exception $e){
// return redirect('insert')->with('failed',"operation failed");
// }
// }
// return redirect('/dashboard');
// }
/** /**
* Show the form for editing the specified resource. * Show the form for editing the specified resource.
* *
...@@ -158,10 +205,17 @@ class PadController extends Controller ...@@ -158,10 +205,17 @@ class PadController extends Controller
*/ */
public function edit($id) public function edit($id)
{ {
$menu = Menu::PADS;
$pad = PAD::find($id); $pad = PAD::find($id);
$userPads = $pad->userPads;
$status = Constants::listStatus(); $status = Constants::listStatus();
return view('pad.admin.edit', ['pad' => $pad, 'status' => $status]); return view('pad.admin.edit', [
'pad' => $pad,
'menu' => $menu,
'status' => $status,
'userPads' => $userPads,
]);
} }
/** /**
......
...@@ -4,6 +4,7 @@ namespace App\Http\Controllers; ...@@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use App\Models\User; use App\Models\User;
use App\Models\Curso; use App\Models\Curso;
use App\Models\Util\Menu;
use App\Models\Util\MenuItemsAdmin; use App\Models\Util\MenuItemsAdmin;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
...@@ -15,7 +16,7 @@ class ProfessorController extends Controller ...@@ -15,7 +16,7 @@ class ProfessorController extends Controller
{ {
$professores = User::where('type', '=', User::TYPE_TEACHER)->get(); $professores = User::where('type', '=', User::TYPE_TEACHER)->get();
return view('professor.index', [ return view('professor.index', [
'index_menu' => MenuItemsAdmin::PROFESSORES, 'menu' => Menu::PADS,
'professores' => $professores 'professores' => $professores
]); ]);
} }
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Models\Unidade; use App\Models\Unidade;
use App\Models\Util\Menu;
use App\Models\Util\MenuItemsAdmin; use App\Models\Util\MenuItemsAdmin;
use App\Queries\UnidadeQuery;
use Illuminate\Http\Request; use Illuminate\Http\Request;
class UnidadeController extends Controller class UnidadeController extends Controller
...@@ -18,7 +18,7 @@ class UnidadeController extends Controller ...@@ -18,7 +18,7 @@ class UnidadeController extends Controller
{ {
return view('unidade.index', [ return view('unidade.index', [
'unidades' => Unidade::all(), 'unidades' => Unidade::all(),
'index_menu' => MenuItemsAdmin::UNIDADES 'menu' => Menu::UNIDADES,
]); ]);
} }
...@@ -31,7 +31,7 @@ class UnidadeController extends Controller ...@@ -31,7 +31,7 @@ class UnidadeController extends Controller
{ {
return view('unidade.create', [ return view('unidade.create', [
'unidades' => Unidade::all(), 'unidades' => Unidade::all(),
'index_menu' => MenuItemsAdmin::UNIDADES 'menu' => Menu::UNIDADES,
]); ]);
} }
...@@ -77,7 +77,7 @@ class UnidadeController extends Controller ...@@ -77,7 +77,7 @@ class UnidadeController extends Controller
$model = Unidade::find($id); $model = Unidade::find($id);
return view('unidade.update', [ return view('unidade.update', [
'unidade' => $model, 'unidade' => $model,
'index_menu' => MenuItemsAdmin::UNIDADES 'menu' => Menu::UNIDADES,
]); ]);
} }
...@@ -120,6 +120,6 @@ class UnidadeController extends Controller ...@@ -120,6 +120,6 @@ class UnidadeController extends Controller
*/ */
public function getAll() public function getAll()
{ {
return UnidadeQuery::all(); return Unidade::all();
} }
} }
...@@ -2,24 +2,33 @@ ...@@ -2,24 +2,33 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Imports\UsersImport;
use App\Models\User; use App\Models\User;
use App\Models\UserType;
use App\Models\Util\Menu;
use App\Models\Util\Status;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Storage;
use Maatwebsite\Excel\Facades\Excel;
use Maatwebsite\Excel\HeadingRowImport;
use NunoMaduro\Collision\Adapters\Phpunit\State;
class UserController extends Controller class UserController extends Controller
{ {
public function editPerfil($tab = null)
const MENU_UPDATE_PERFIL = 0;
public function editPerfil()
{ {
return view('user.update_perfil', ['index_menu' => self::MENU_UPDATE_PERFIL]); return view('user.update_perfil', [
'tab' => $tab,
'menu' => Menu::USER,
]);
} }
public function updatePerfil(Request $request) public function updatePerfil(Request $request)
{ {
$validator = User::validator($request->all()); $validator = User::validator($request->all());
if ($validator->fails()) { if ($validator->fails()) {
...@@ -31,28 +40,179 @@ class UserController extends Controller ...@@ -31,28 +40,179 @@ class UserController extends Controller
$user->save(); $user->save();
return redirect()->route('edit_perfil')->with('success', 'Salvo com sucesso!'); return redirect()->route('edit_perfil')->with('success', 'Salvo com sucesso!');
} }
public function updatePassword(Request $request) public function updatePassword(Request $request)
{ {
$validator = User::validatorPassword($request->all());
$validator = User::validator($request->all(), true); if($validator->fails()) {
return redirect()->route('edit_perfil', ['tab' => 'password'])->withErrors($validator->errors());
}
$model = User::find(Auth::user()->id);
$model->password = Hash::make($request->password);
$model->save();
return redirect()->route('edit_perfil', ['tab' => 'user'])->with('success', 'Senha salva com sucesso!');
if ($validator->fails()) {
return redirect()->back()->withErrors($validator->errors());
} }
$user = User::find(Auth::user()->id); public function actionIndex(Request $request)
$newData = $request->all(); {
$users =
User::initQuery();
$users = $users->get();
return view('users.index', [
'users' => $users,
'menu' => Menu::USERS,
]);
}
// Admin
public function actionCreate()
{
$model = new User();
if($request->all()['password'] == $request->all()['password_confirmation']){ return view('users.create', [
$newData['password'] = Hash::make($request->password); 'menu' => Menu::USERS,
'model' => $model,
]);
} }
$user->fill($newData); public function actionStore(Request $request)
$user->save(); {
$validator = User::validator($request->all());
return redirect()->route('edit_perfil')->with('success', 'Salvo com sucesso!'); if($validator->fails()) {
return redirect()->route('user_create')->withErrors($validator)->withInput();
}
$model = new User();
$model->fill($request->all());
$model->status = Status::ATIVO;
$email_splited = explode('@', $model->email);
$password = array_shift($email_splited);
$model->password = Hash::make($password);
if($model->save()) {
return redirect()->route('user_edit', ['id' => $model->id])->with('success', 'Usuário cadastrado com sucesso!');
}
return redirect()->with('fail', 'Falha ao cadastrar Usuário!');
}
public function actionEdit(Request $request, $id)
{
$model = User::find($id);
$profiles = $model->profiles;
$status = [
Status::ATIVO => Status::listStatus(Status::ATIVO),
Status::INATIVO => Status::listStatus(Status::INATIVO)
];
if(count($profiles) <= 0) {
Session::flash('warning', 'Não existem papeis cadastrados para esse usuário!');
}
$tab_active = $request->query('tab_active') ?? 'user';
return view('users.update', [
'menu' => Menu::USERS,
'model' => $model,
'status' => $status,
'profiles' => $profiles,
'tab_active' => $tab_active
]);
}
public function actionUpdate(Request $request, $id)
{
$model = User::find($id);
$validator = User::validator($request->all(), $model->id);
if($validator->fails()) {
return redirect()->route('user_edit', ['id' => $model->id])->withErrors($validator)->withInput();
}
$model->fill($request->all());
if($model->save()) {
return redirect()->route('user_index')->with('success', 'Usuário atualizado com sucesso!');
}
return redirect()->with('fail', 'Falha ao cadastrar Usuário!');
}
public function actionDelete($id)
{
dd($id);
}
public function actionImport(Request $request)
{
$request->validate(['file' => 'required|mimes:csv,txt,xlx,xls,xlsx,pdf|max:2048']);
$file = $request->file;
$excel = Excel::toArray(new UsersImport, $file)[0];
unset($excel[0]);
$excel = array_filter($excel,
function($row) {
$email = trim($row[7]);
return strstr($email, '@');
}
);
$importCount = 0;
$duplicados = 0;
foreach($excel as $row)
{
$email = trim(strtolower($row[7]));
$userQuery = User::initQuery()->whereEmail($email)->first();
if($userQuery === null) {
$password = explode("@", $email);
$password = array_shift($password);
$user = new User();
$user->name = trim($row[1]);
$user->email = $email;
$user->password = Hash::make($password);
$user->status = Status::ATIVO;
if($user->save())
{
$userType = new UserType();
$userType->user_id = $user->id;
$userType->type = UserTYPE::TEACHER;
$userType->status = Status::ATIVO;
$userType->selected = true;
if($userType->save())
{
$importCount++;
}
}
} else {
$duplicados++;
}
}
return redirect()->route('user_import_view')->with('success', sprintf('Importado com Sucesso! Importados: %d | Duplicados: %d', $importCount, $duplicados));
}
public function actionImportView()
{
return view('users.importView');
} }
} }
\ No newline at end of file
<?php
namespace App\Http\Controllers;
use App\Models\Pad;
use App\Models\User;
use App\Models\UserPad;
use App\Models\Util\Status;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Response;
use Illuminate\Support\Facades\Validator;
class UserPadController extends Controller
{
public function actionStore(Request $request)
{
$validator = Validator::make(
$request->all(), UserPad::rules(), UserPad::messages()
);
if($validator->fails())
{
}
$model = new UserPad();
$model->fill($request->all());
$model->save();
$pad = Pad::find($request->pad_id);
return redirect()
->route('pad_edit', ['id' => $request->pad_id])
->with('success', sprintf('Professor cadastrado no PAD(%s) com Sucesso!', $pad->nome));
}
public function actionUpdate(Request $request, $id)
{
}
public function actionDelete($id)
{
}
public function actionCreate($pad_id)
{
$pad = Pad::find($pad_id);
$model = new UserPad();
$status = Status::listStatus();
$users = User::all();
return view('user-pad.create', [
'pad' => $pad,
'model' => $model,
'users' => $users,
'status' => $status,
]);
}
public function actionEdit($id)
{
}
public function ajaxValidation(Request $request)
{
$validator = Validator::make(
$request->all(), UserPad::rules(), UserPad::messages()
);
if($validator->passes()) {
return Response::json(['message' => true, 'status' => 200]);
}
return Response::json(['errors' => $validator->errors(), 'status' => 400]);
}
}
<?php
namespace App\Http\Controllers;
use App\Models\User;
use App\Models\UserType;
use App\Models\Util\Status;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Response;
use Illuminate\Support\Facades\Validator;
class UserTypeController extends Controller
{
public function actionStore(Request $request)
{
$validator = Validator::make($request->all(), UserType::rules(), UserType::messages());
if($validator->fails())
{
}
$model = new UserType();
$model->fill($request->all());
$model->selected = true;
$model->save();
return redirect()
->route('user_edit', ['id' => $request->user_id, 'tab_active' => 'paper'])
->with('success', 'Papel cadastrado com Sucesso!');
}
public function actionUpdate(Request $request, $id)
{
}
public function actionDelete($id)
{
$model = UserType::find($id);
$model->delete();
return redirect()
->route('user_edit', ['id' => $model->user_id, 'tab_active' => 'paper'])
->with('success', 'Papel removido com Sucesso!');
}
public function actionCreate($user_id)
{
$model = new UserType();
$user = User::find($user_id);
$types = UserType::listType();
$status = Status::listUserTypeStatus();
return view('user-type.create', [
'user' => $user,
'model' => $model,
'types' => $types,
'status' => $status,
]);
}
public function actionEdit($id)
{
$model = UserType::find($id);
$user = $model->user;
$types = UserType::listType();
$status = Status::listUserTypeStatus();
return view('user-type.update', [
'user' => $user,
'model' => $model,
'types' => $types,
'status' => $status,
]);
}
public function ajaxValidation(Request $request)
{
$id = $request->id;
$user_id = $request->user_id;
$type = $request->type;
$validator = Validator::make(
$request->all(), UserType::rules($id, $user_id, $type), UserType::messages()
);
if($validator->passes()) {
return Response::json(['message' => true, 'status' => 200]);
}
return Response::json(['errors' => $validator->errors(), 'status' => 400]);
}
}
...@@ -15,7 +15,7 @@ class Avaliacao extends Model ...@@ -15,7 +15,7 @@ class Avaliacao extends Model
public function tarefa() { public function tarefa() {
//return $this->belongsTo(PAD::class); //return $this->belongsTo(Pad::class);
} }
public function avaliadorPad() { public function avaliadorPad() {
......
...@@ -12,21 +12,42 @@ class Pad extends Model ...@@ -12,21 +12,42 @@ class Pad extends Model
{ {
use HasFactory; use HasFactory;
/** @var string */
protected $table = 'pad'; protected $table = 'pad';
/** @var array */
protected $fillable = ['id', 'nome', 'data_inicio', 'data_fim', 'status']; protected $fillable = ['id', 'nome', 'data_inicio', 'data_fim', 'status'];
/** @var array */
protected $dates = ['deleted_at']; protected $dates = ['deleted_at'];
/**
* @return string
* */
public function statusAsString() { public function statusAsString() {
return Status::listStatus($this->status); return Status::listStatus($this->status);
} }
/**
* @return string
*/
public function getDateInicio() { public function getDateInicio() {
return Carbon::parse($this->data_inicio)->format('d/m/Y'); return Carbon::parse($this->data_inicio)->format('d/m/Y');
} }
/**
* @return string
*/
public function getDateFim() { public function getDateFim() {
return Carbon::parse($this->data_fim)->format('d/m/Y'); return Carbon::parse($this->data_fim)->format('d/m/Y');
} }
/**
* @return Illuminate\Database\Eloquent\Collection
* @return Collection<UserPad>
*/
public function userPads() {
return $this->hasMany(UserPad::class);
}
} }
...@@ -23,7 +23,7 @@ class EnsinoAula extends Model ...@@ -23,7 +23,7 @@ class EnsinoAula extends Model
* *
* @var array * @var array
*/ */
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'componente_curricular', 'curso', 'nivel', 'modalidade', 'ch_semanal', 'ch_total']; protected $fillable = ['orientacao_id', 'user_pad_id', 'cod_dimensao', 'dimensao', 'cod_atividade', 'componente_curricular', 'curso', 'nivel', 'modalidade', 'ch_semanal', 'ch_total'];
public static function rules() public static function rules()
{ {
......
...@@ -21,7 +21,7 @@ class ExtensaoCoordenacao extends Model ...@@ -21,7 +21,7 @@ class ExtensaoCoordenacao extends Model
* *
* @var array * @var array
*/ */
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'programa_extensao', 'funcao', 'ch_semanal', 'atividade']; protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'programa_extensao', 'funcao', 'ch_semanal', 'atividade', 'cod_dimensao'];
// public function orientacao() // public function orientacao()
// { // {
...@@ -36,6 +36,7 @@ class ExtensaoCoordenacao extends Model ...@@ -36,6 +36,7 @@ class ExtensaoCoordenacao extends Model
'programa_extensao' => ['required', 'string', 'max:255'], 'programa_extensao' => ['required', 'string', 'max:255'],
'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listModalidade()))], 'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listModalidade()))],
'atividade' => ['string', 'nullable'], 'atividade' => ['string', 'nullable'],
'cod_dimensao' => ['required', 'string', Rule::in(array_keys(self::listPlanejamentos()))],
]; ];
} }
...@@ -55,17 +56,37 @@ class ExtensaoCoordenacao extends Model ...@@ -55,17 +56,37 @@ class ExtensaoCoordenacao extends Model
'funcao.required' => 'O campo "Função" é obrigatório!', 'funcao.required' => 'O campo "Função" é obrigatório!',
'funcao.in' => 'Selecione uma opção da lista de "Função"!', 'funcao.in' => 'Selecione uma opção da lista de "Função"!',
'funcao.integer' => 'O campo "Função" deve ser um inteiro!', 'funcao.integer' => 'O campo "Função" deve ser um inteiro!',
//'cod_dimensao'
'cod_dimensao.required' => 'O campo "Resolução" é obrigatório',
'cod_dimensao.in' => 'Selecione uma opção da lista de "Resolução"',
]; ];
} }
/** /**
* @return array * @return array
*/ */
public static function getPlanejamentos() { public static function getPlanejamentos()
$codes = ['X-1']; {
$codes = ['X-4', 'X-5', 'X-6', 'X-7', 'X-8', 'X-9'];
return Planejamento::initQuery()->whereInCodDimensao($codes)->get(); return Planejamento::initQuery()->whereInCodDimensao($codes)->get();
} }
/**
* @return array
*/
public static function listPlanejamentos($cod_dimensao = null)
{
$planejamentos = self::getPlanejamentos();
$values = [];
foreach($planejamentos as $planejamento) {
$values[$planejamento->cod_dimensao] = $planejamento->descricao;
}
return $cod_dimensao !== null? $values[$cod_dimensao] : $values;
}
/** /**
* @return string * @return string
*/ */
......
...@@ -21,29 +21,13 @@ class ExtensaoOrientacao extends Model ...@@ -21,29 +21,13 @@ class ExtensaoOrientacao extends Model
* *
* @var array * @var array
*/ */
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'discente', 'funcao', 'ch_semanal']; protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'discente', 'funcao', 'ch_semanal', 'cod_dimensao'];
// public function orientacao() // public function orientacao()
// { // {
// return $this->hasOne(Orientacao::class); // return $this->hasOne(Orientacao::class);
// } // }
/**
* @return array
*/
public function orientacaoPreenchimento() {
return [
'descricao' => ['item' => '1.', 'descricao' => 'Ensino (Aulas em componentes curriculares)'],
'componente_curricular' => ['item' => 'Nome do Componente:', 'descricao' => 'Nome do componente curricular como descrito no PPC do curso'],
'curso' => ['item' => 'Curso:', 'descricao' => 'Nome do curso ao qual o componente curricular pertence'],
'nivel' => ['item' => 'Nível:', 'descricao' => 'Preencher o nível do curso ao qual o componente curricular pertence, sendo as opções: Graduação, Pós-graduação Stricto Sensu, Pós-Graduação Lato Sensu'],
'modalidade' => ['item' => 'Modalidade:', 'descricao' => 'Preencher a modalidade que o componente curricular é ofertado, sendo as opções: Presencial e EAD'],
'ch_semanal' => ['item' => 'Carga Horária Semanal:', 'descricao' => 'Carga horária total efetiva exercida pelo docente dentro do componente curricular dividida pelo número de semanas que o mesmo ocorre'],
'ch_total' => ['item' => 'Carga Horária Total:', 'descricao' => 'Carga horária total efetiva exercida pelo docente dentro do(s) componente(s) curricular (es)'],
];
}
public static function rules() public static function rules()
{ {
return [ return [
...@@ -51,6 +35,7 @@ class ExtensaoOrientacao extends Model ...@@ -51,6 +35,7 @@ class ExtensaoOrientacao extends Model
'titulo_projeto' => ['required', 'string', 'max:255'], 'titulo_projeto' => ['required', 'string', 'max:255'],
'discente' => ['required', 'string', 'max:255'], 'discente' => ['required', 'string', 'max:255'],
'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listFuncaoOrientador()))], 'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listFuncaoOrientador()))],
'cod_dimensao' => ['required', 'string', Rule::in(array_keys(self::listPlanejamentos()))],
]; ];
} }
...@@ -70,17 +55,37 @@ class ExtensaoOrientacao extends Model ...@@ -70,17 +55,37 @@ class ExtensaoOrientacao extends Model
'funcao.required' => 'O campo "Função" é obrigatório!', 'funcao.required' => 'O campo "Função" é obrigatório!',
'funcao.in' => 'Selecione uma opção da lista de "Função"!', 'funcao.in' => 'Selecione uma opção da lista de "Função"!',
'funcao.integer' => 'O campo "Função" deve ser um inteiro!', 'funcao.integer' => 'O campo "Função" deve ser um inteiro!',
//'cod_dimensao'
'cod_dimensao.required' => 'O campo "Resolução" é obrigatório',
'cod_dimensao.in' => 'Selecione uma opção da lista de "Resolução"',
]; ];
} }
/** /**
* @return array * @return array
*/ */
public static function getPlanejamentos() { public static function getPlanejamentos()
$codes = ['X-2']; {
$codes = ['X-10', 'X-11', 'X-12', 'X-13', 'X-14', 'X-15'];
return Planejamento::initQuery()->whereInCodDimensao($codes)->get(); return Planejamento::initQuery()->whereInCodDimensao($codes)->get();
} }
/**
* @return array
*/
public static function listPlanejamentos($cod_dimensao = null)
{
$planejamentos = self::getPlanejamentos();
$values = [];
foreach($planejamentos as $planejamento) {
$values[$planejamento->cod_dimensao] = $planejamento->descricao;
}
return $cod_dimensao !== null? $values[$cod_dimensao] : $values;
}
/** /**
* @return string * @return string
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment