diff --git a/app/Area.php b/app/Area.php index fdd2a28a85c70ab5718095d2e9052779ad920f19..d03974502d983599d474e05d19c2b538c1b32fa0 100644 --- a/app/Area.php +++ b/app/Area.php @@ -34,4 +34,7 @@ class Area extends Model public function revisor(){ return $this->hasMany('App\User', 'eventoId'); } + public function avaliador(){ + return $this->hasMany('App\Area'); + } } diff --git a/app/Avaliador.php b/app/Avaliador.php index 012cfa8bbb0845242b78459c2d6af4b8d3e175cc..dc141e35faccb86457a313c3e15e169cff9a42c7 100644 --- a/app/Avaliador.php +++ b/app/Avaliador.php @@ -6,10 +6,23 @@ use Illuminate\Database\Eloquent\Model; class Avaliador extends Model { + protected $fillable = [ + 'status', + 'parecer', + 'AnexoParecer', + 'pivot', + ]; public function user(){ return $this->belongsTo('App\User'); } public function trabalhos(){ - return $this->belongsToMany('App\Trabalho'); + return $this->belongsToMany('App\Trabalho')->withPivot('status', 'AnexoParecer', 'parecer', 'recomendacao'); } + public function eventos(){ + return $this->belongsToMany('App\Evento'); + } + public function area(){ + return $this->belongsTo('App\Area'); + } + } diff --git a/app/Evento.php b/app/Evento.php index 54086c95b162f7be6fe1fa50295f18bb37b9ea85..8af9fd37e4b406d79e585c2121ccb4cf550be7ca 100644 --- a/app/Evento.php +++ b/app/Evento.php @@ -40,6 +40,9 @@ class Evento extends Model public function trabalhos(){ return $this->hasMany('App\Trabalho'); } + public function avaliadors(){ + return $this->belongsToMany('App\Avaliador'); + } } diff --git a/app/Http/Controllers/AdministradorController.php b/app/Http/Controllers/AdministradorController.php index f8110e7c60f4a1eae3e4a6fea211dd3fab5c5c67..36e340d7f0b09f6524028209d1e332c9d19e8517 100644 --- a/app/Http/Controllers/AdministradorController.php +++ b/app/Http/Controllers/AdministradorController.php @@ -10,8 +10,14 @@ use App\Avaliador; use App\AdministradorResponsavel; use App\Participante; use App\Proponente; +use App\Natureza; +use App\Trabalho; +use Illuminate\Support\Str; use Illuminate\Support\Facades\Hash; use App\Evento; +use App\Mail\EmailParaUsuarioNaoCadastrado; +use Illuminate\Support\Facades\Mail; +use App\Mail\EventoCriado; class AdministradorController extends Controller { @@ -20,8 +26,8 @@ class AdministradorController extends Controller return view('administrador.index'); } public function naturezas(){ - - return view('naturezas.index'); + $naturezas = Natureza::orderBy('nome')->get(); + return view('naturezas.index')->with(['naturezas' => $naturezas]); } public function usuarios(){ $users = User::orderBy('name')->get(); @@ -31,11 +37,29 @@ class AdministradorController extends Controller public function editais(){ //$admin = Administrador::with('user')->where('user_id', Auth()->user()->id)->first(); //$eventos = Evento::where('coordenadorId',$admin->id )->get(); - $eventos = Evento::where('criador_id',Auth()->user()->id )->get(); + $eventos = Evento::all(); return view('administrador.editais', ['eventos'=> $eventos]); } + public function pareceres(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + $trabalhos = $evento->trabalhos; + + return view('administrador.projetos')->with(['trabalhos' => $trabalhos, 'evento' => $evento]); + } + + public function visualizarParecer(Request $request){ + + $avaliador = Avaliador::find($request->avaliador_id); + $trabalho = $avaliador->trabalhos->where('id', $request->trabalho_id)->first(); + $parecer = $avaliador->trabalhos->where('id', $request->trabalho_id)->first()->pivot; + + //dd($parecer); + return view('administrador.visualizarParecer')->with(['trabalho' => $trabalho, 'parecer' => $parecer, 'avaliador' => $avaliador]); + } + public function create() { $grandesAreas = GrandeArea::orderBy('nome')->get(); return view('administrador.novo_user')->with(['grandeAreas' => $grandesAreas]); @@ -62,6 +86,7 @@ class AdministradorController extends Controller 'cargo' => 'required', 'titulacaoMaxima' => 'required', 'anoTitulacao' => 'required', + 'areaFormacao' => 'required', 'area' => 'required', 'bolsistaProdutividade' => 'required', 'nivel' => 'required', @@ -100,6 +125,7 @@ class AdministradorController extends Controller $proponente->vinculo = $request->vinculo; $proponente->titulacaoMaxima = $request->titulacaoMaxima; $proponente->anoTitulacao = $request->anoTitulacao; + $proponente->areaFormacao = $request->areaFormacao; $proponente->grandeArea = $request->area; $proponente->area = "teste"; $proponente->subArea = "teste"; @@ -156,6 +182,7 @@ class AdministradorController extends Controller 'cargo' => 'required', 'titulacaoMaxima' => 'required', 'anoTitulacao' => 'required', + 'areaFormacao' => 'required', 'grandeArea' => 'required', 'bolsistaProdutividade' => 'required', 'nivel' => 'required', @@ -189,6 +216,7 @@ class AdministradorController extends Controller $proponente->vinculo = $request->vinculo; $proponente->titulacaoMaxima = $request->titulacaoMaxima; $proponente->anoTitulacao = $request->anoTitulacao; + $proponente->areaFormacao = $request->areaFormacao; $proponente->grandeArea = $request->grandeArea; $proponente->area = "teste"; $proponente->subArea = "teste"; @@ -238,4 +266,130 @@ class AdministradorController extends Controller $user->delete(); return redirect( route('admin.usuarios') )->with(['mensagem' => 'Usuário deletado com sucesso']); } + + public function atribuir(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + //dd($request->all()); + return view('administrador.atribuirAvaliadores', ['evento'=> $evento]); + } + public function selecionar(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + + $avalSelecionados = $evento->avaliadors; + $avalNaoSelecionadosId = $evento->avaliadors->pluck('id'); + $avaliadores = Avaliador::whereNotIn('id', $avalNaoSelecionadosId)->get(); + //dd($avaliadores); + return view('administrador.selecionarAvaliadores', [ + 'evento'=> $evento, + 'avaliadores'=>$avaliadores, + 'avalSelecionados'=>$avalSelecionados + ]); + } + public function projetos(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + $trabalhos = $evento->trabalhos; + + $avaliadores = $evento->avaliadors; + foreach ($trabalhos as $key => $trabalho) { + + + $avalSelecionadosId = $trabalho->avaliadors->pluck('id'); + $avalProjeto = Avaliador::whereNotIn('id', $avalSelecionadosId)->get(); + $trabalho->aval = $avalProjeto; + + } + + //dd($avaliadores->teste); + + + return view('administrador.selecionarProjetos', [ + 'evento'=> $evento, + 'trabalhos'=>$trabalhos, + 'avaliadores'=>$avaliadores + ]); + } + + public function adicionar(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + $aval = Avaliador::where('id', $request->avaliador_id)->first(); + $aval->eventos()->attach($evento); + $aval->save(); + + + return redirect()->back(); + + + } + + public function remover(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + $aval = Avaliador::where('id', $request->avaliador_id)->first(); + $aval->eventos()->detach($evento); + $aval->trabalhos()->detach(); + $aval->save(); + + + return redirect()->back(); + + + } + public function buscar(Request $request){ + + $trabalho = Trabalho::where('id', $request->item)->first(); + $avalSelecionadosId = $trabalho->avaliadors->pluck('id'); + $avalProjeto = Avaliador::whereNotIn('id', $avalSelecionadosId)->get(); + + //dd($avaliadores); + + return response()->json($avalProjeto); + + } + + public function atribuicao(Request $request){ + + $trabalho = Trabalho::where('id', $request->trabalho_id)->first(); + $evento = Evento::where('id', $request->evento_id)->first(); + $avaliadores = Avaliador::whereIn('id', $request->avaliadores_id)->get(); + $trabalho->avaliadors()->attach($avaliadores); + $evento->avaliadors()->syncWithoutDetaching($avaliadores); + $trabalho->save(); + + return redirect()->back(); + + } + + public function enviarConvite(Request $request){ + + $evento = Evento::where('id', $request->evento_id)->first(); + $nomeAvaliador = $request->nomeAvaliador; + $emailAvaliador = $request->emailAvaliador; + $tipo = $request->tipo; + + $passwordTemporario = Str::random(8); + Mail::to($emailAvaliador) + ->send(new EmailParaUsuarioNaoCadastrado($nomeAvaliador, ' ', 'Avaliador', $evento->nome, $passwordTemporario)); + $user = User::create([ + 'email' => $emailAvaliador, + 'password' => bcrypt($passwordTemporario), + 'usuarioTemp' => true, + 'name' => $nomeAvaliador, + 'tipo' => 'avaliador', + ]); + + $avaliador = new Avaliador(); + $avaliador->save(); + $avaliador->user()->associate($user); + $avaliador->eventos()->attach($evento); + + $user->save(); + $avaliador->save(); + + return redirect()->back(); + } + } diff --git a/app/Http/Controllers/ArquivoController.php b/app/Http/Controllers/ArquivoController.php index ffa23790e116cd410ba9817ccc504a5f515b03dd..8ae09117bc7df3e9112d104bdded5351e131007e 100644 --- a/app/Http/Controllers/ArquivoController.php +++ b/app/Http/Controllers/ArquivoController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Arquivo; +use Illuminate\Support\Facades\Storage; use Illuminate\Http\Request; class ArquivoController extends Controller @@ -82,4 +83,9 @@ class ArquivoController extends Controller { // } + + public function baixarPlano($id) { + $arquivo = Arquivo::find($id); + return Storage::download($arquivo->nome); + } } diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php index 75a480e0801182bb5e2e3629c4dfce0b27318193..8ac95ed3fd9e00049d60a301123eda8858e201a1 100644 --- a/app/Http/Controllers/Auth/RegisterController.php +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -61,14 +61,7 @@ class RegisterController extends Controller 'password' => ['required', 'string', 'min:8', 'confirmed'], 'cpf' => ['required', 'cpf'], 'celular' => ['required','string'], - 'instituicao' => ['required','string','max:255'], - // 'especProfissional' => [], - 'rua' => ['required','string','max:255'], - 'numero' => ['nullable','string'], - 'bairro' => ['required','string','max:255'], - 'cidade' => ['required','string','max:255'], - 'uf' => ['required','string'], - 'cep' => ['required','string'], + 'instituicao' => ['required','string','max:255'], ]); } @@ -81,18 +74,6 @@ class RegisterController extends Controller protected function create(array $data) { - // endereço - $end = new Endereco(); - $end->rua = $data['rua']; - $end->numero = $data['numero']; - $end->bairro = $data['bairro']; - $end->cidade = $data['cidade']; - $end->uf = $data['uf']; - $end->cep = $data['cep']; - - $end->save(); - // dd($end) - $user = new User(); $user->name = $data['name']; $user->email = $data['email']; @@ -102,7 +83,6 @@ class RegisterController extends Controller $user->instituicao = $data['instituicao']; $user->tipo = 'participante'; - $user->enderecoId = $end->id; $user->save(); $participante = new Participante(); diff --git a/app/Http/Controllers/AvaliadorController.php b/app/Http/Controllers/AvaliadorController.php index 512e70696c9c10f96a1fef1d1d7fa19b3d08ff1d..8c7425fb4c40660c395860f4c3e7da17676bd853 100644 --- a/app/Http/Controllers/AvaliadorController.php +++ b/app/Http/Controllers/AvaliadorController.php @@ -4,6 +4,11 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use Auth; +use App\Trabalho; +use App\Evento; +use App\Recomendacao; +use App\User; +use App\Avaliador; class AvaliadorController extends Controller { @@ -12,13 +17,60 @@ class AvaliadorController extends Controller return view('avaliador.index'); } + public function editais(){ + + $user = User::find(Auth::user()->id); + $eventos = $user->avaliadors->where('user_id',$user->id)->first()->eventos; + + return view('avaliador.editais', ["eventos"=>$eventos]); + } + public function visualizarTrabalhos(Request $request){ - $trabalhos = Auth::user()->avaliadors->first()->trabalhos; - //dd($trabalhos); + $user = User::find(Auth::user()->id); + $evento = Evento::where('id', $request->evento_id)->first(); + $trabalhos = $user->avaliadors->where('user_id',$user->id)->first()->trabalhos; + + //dd(); + + return view('avaliador.listarTrabalhos', ['trabalhos'=>$trabalhos, 'evento'=>$evento]); + + } + + public function parecer(Request $request){ + + //$trabalho = Trabalho::find($request->trabalho_id); + $user = User::find(Auth::user()->id); + $avaliador = $user->avaliadors->where('user_id',$user->id)->first(); + $trabalho = $avaliador->trabalhos->find($request->trabalho_id); + $evento = Evento::find($request->evento); + $recomendacaos = Recomendacao::all(); + //dd($request->all()); + return view('avaliador.parecer', ['trabalho'=>$trabalho, 'evento'=>$evento, 'recomendacaos'=>$recomendacaos]); + } + public function enviarParecer(Request $request){ + + $user = User::find(Auth::user()->id); + - return view('avaliador.listarTrabalhos', ['trabalhos'=>$trabalhos]); + $evento = Evento::find($request->evento_id); + $trabalhos = $user->avaliadors->where('user_id',$user->id)->first()->trabalhos; + $avaliador = $user->avaliadors->where('user_id',$user->id)->first(); + $trabalho = $avaliador->trabalhos->find($request->trabalho_id); + if($request->anexoParecer == ''){ + $avaliador + ->trabalhos() + ->updateExistingPivot($trabalho->id,['status'=> 1,'parecer'=>$request->textParecer, 'recomendacao'=>$request->recomendacao]); + }else{ + $avaliador + ->trabalhos() + ->updateExistingPivot($trabalho->id,['status'=> 1,'parecer'=>$request->textParecer,'AnexoParecer'=> $request->anexoParecer, 'recomendacao'=>$request->recomendacao]); + } + + + // dd($trabalho); + return view('avaliador.listarTrabalhos', ['trabalhos'=>$trabalhos, 'evento'=>$evento ]); } } diff --git a/app/Http/Controllers/EventoController.php b/app/Http/Controllers/EventoController.php index 5be0ee7db192f4a58c1497e71b8d0dc778224368..8a67ceb0e6951b8582026e55e626be9ac2100377 100644 --- a/app/Http/Controllers/EventoController.php +++ b/app/Http/Controllers/EventoController.php @@ -14,6 +14,7 @@ use App\User; use App\Proponente; use App\Trabalho; use App\AreaModalidade; +use App\Natureza; use App\CoordenadorComissao; use Illuminate\Http\Request; use Carbon\Carbon; @@ -57,7 +58,8 @@ class EventoController extends Controller public function create() { $coordenadors = CoordenadorComissao::with('user')->get(); - return view('evento.criarEvento', ['coordenadors' => $coordenadors]); + $naturezas = Natureza::orderBy('nome')->get(); + return view('evento.criarEvento', ['coordenadors' => $coordenadors, 'naturezas' => $naturezas]); } /** @@ -89,7 +91,8 @@ class EventoController extends Controller $validatedData = $request->validate([ 'nome' => ['required', 'string'], 'descricao' => ['required', 'string'], - 'tipo' => ['required', 'string'], + 'tipo' => ['required', 'string'], + 'natureza' => ['required'], 'inicioSubmissao' => ['required', 'date'], 'fimSubmissao' => ['required', 'date'], 'inicioRevisao' => ['required', 'date'], @@ -106,6 +109,7 @@ class EventoController extends Controller 'nome' => ['required', 'string'], 'descricao' => ['required', 'string'], 'tipo' => ['required', 'string'], + 'natureza' => ['required'], 'inicioSubmissao' => ['required', 'date', 'after:' . $yesterday], 'fimSubmissao' => ['required', 'date', 'after:' . $request->inicioSubmissao], 'inicioRevisao' => ['required', 'date', 'after:' . $yesterday], @@ -114,11 +118,12 @@ class EventoController extends Controller 'pdfEdital' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'modeloDocumento' => ['required', 'file', 'mimes:zip,doc,docx,odt,pdf', 'max:2000000'], ]); - + $evento = Evento::create([ 'nome' => $request->nome, 'descricao' => $request->descricao, 'tipo' => $request->tipo, + 'natureza_id' => $request->natureza, 'inicioSubmissao' => $request->inicioSubmissao, 'fimSubmissao' => $request->fimSubmissao, 'inicioRevisao' => $request->inicioRevisao, @@ -191,17 +196,8 @@ class EventoController extends Controller $trabalhos = 0; $trabalhosCount = 0; } - - + $trabalhosId = Trabalho::where('evento_id', $evento->id)->select('id')->get(); - //$trabalhosIdCoautor = Proponente::whereIn('trabalhoId', $trabalhosId)->where('proponente_id', Auth::user()->id)->select('trabalhoId')->get(); - //$coautorCount = Coautor::whereIn('trabalhoId', $trabalhosId)->where('proponente_id', Auth::user()->id)->count(); - //$trabalhosCoautor = Trabalho::whereIn('id', $trabalhosIdCoautor)->get(); - - // if($coautorCount != 0){ - // $hasTrabalhoCoautor = true; - // $hasFile = true; - // } $mytime = Carbon::now('America/Recife'); // dd(false); @@ -304,20 +300,20 @@ class EventoController extends Controller { $evento = Evento::find($id); - $areas = Area::where('eventoId', $id); + // $areas = Area::where('eventoId', $id); $atividades = Atividade::where('eventoId', $id); $comissao = ComissaoEvento::where('eventosId', $id); $revisores = Revisor::where('eventoId', $id); - $trabalhos = Trabalho::where('eventoId', $id); + $trabalhos = Trabalho::where('evento_id', $id); - if(isset($areas)){ - $areas->delete(); - } + // if(isset($areas)){ + // $areas->delete(); + // } if(isset($atividades)){ - $atividades->delete(); + $atividades->delete(); } if(isset($comissao)){ - $comissao->delete(); + $comissao->delete(); } if(isset($revisores)){ $revisores->delete(); @@ -467,5 +463,8 @@ class EventoController extends Controller return view('user.areaComissao', ['trabalhos' => $trabalhos]); } - + public function baixarEdital($id) { + $evento = Evento::find($id); + return Storage::download($evento->pdfEdital); + } } diff --git a/app/Http/Controllers/NaturezaController.php b/app/Http/Controllers/NaturezaController.php new file mode 100644 index 0000000000000000000000000000000000000000..fbc1912e9e4585557a1b4a6a34faab4e19b5cd94 --- /dev/null +++ b/app/Http/Controllers/NaturezaController.php @@ -0,0 +1,104 @@ +validate([ + 'nome' => 'required' + ]); + + $natureza = new Natureza(); + $natureza->nome = $request->nome; + $natureza->save(); + + return redirect( route('admin.naturezas') )->with(['mensagem' => 'Natureza salva com sucesso']); + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + // + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + // + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + $validated = $request->validate([ + 'nomeEditavel' => 'required', + ]); + + $natureza = Natureza::find($id); + $natureza->nome = $request->nomeEditavel; + $natureza->update(); + + return redirect( route('admin.naturezas') )->with(['mensagem' => "Natureza editada com sucesso"]); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + $natureza = Natureza::find($id); + $natureza->delete(); + + return redirect( route('admin.naturezas') )->with(['mensagem' => "Natureza deletada com sucesso"]); + } +} diff --git a/app/Http/Controllers/ProponenteController.php b/app/Http/Controllers/ProponenteController.php index 0406751f92792dd7e4718434a678abfb1dd2ef9a..91aaa7c9ab8350a33b1e70b496e14a826f6f1fec 100644 --- a/app/Http/Controllers/ProponenteController.php +++ b/app/Http/Controllers/ProponenteController.php @@ -3,6 +3,11 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; +use Auth; +use App\User; +use App\Proponente; +use App\GrandeArea; +use App\Evento; class ProponenteController extends Controller { @@ -10,4 +15,51 @@ class ProponenteController extends Controller return view('proponente.index'); } + + public function create(){ + + $grandesAreas = GrandeArea::orderBy('nome')->get(); + return view('proponente.cadastro')->with(['grandeAreas' => $grandesAreas]);; + } + + public function store(Request $request){ + if (Auth::user()->proponentes == null) { + + $validated = $request->validate([ + 'senha' => 'required', + 'cargo' => 'required', + 'titulacaoMaxima' => 'required', + 'anoTitulacao' => 'required', + 'areaFormacao' => 'required', + 'area' => 'required', + 'bolsistaProdutividade' => 'required', + 'nivel' => 'required', + 'linkLattes' => 'required', + ]); + + $proponente = new Proponente(); + $proponente->SIAPE = $request->SIAPE; + $proponente->cargo = $request->cargo; + $proponente->vinculo = $request->vinculo; + $proponente->titulacaoMaxima = $request->titulacaoMaxima; + $proponente->anoTitulacao = $request->anoTitulacao; + $proponente->areaFormacao = $request->areaFormacao; + $proponente->grandeArea = $request->area; + $proponente->area = "teste"; + $proponente->subArea = "teste"; + $proponente->bolsistaProdutividade = $request->bolsistaProdutividade; + $proponente->nivel = $request->nivel; + $proponente->linkLattes = $request->linkLattes; + $proponente->user_id = Auth::user()->id; + $proponente->save(); + + $user = User::find(Auth()->user()->id); + $user->tipo = "proponente"; + $user->save(); + + } + + $eventos = Evento::all(); + return redirect( route('admin.editais', ['eventos'=> $eventos]))->with(['mensagem' => 'Usuário cadastrado com sucesso']); + } } diff --git a/app/Http/Controllers/TrabalhoController.php b/app/Http/Controllers/TrabalhoController.php index 63d68c215045df79c8d9fe0d23910ad019e2e106..6c0876565232d29902b06f444c9244ed22926f38 100644 --- a/app/Http/Controllers/TrabalhoController.php +++ b/app/Http/Controllers/TrabalhoController.php @@ -76,8 +76,11 @@ class TrabalhoController extends Controller $mytime = $mytime->toDateString(); $evento = Evento::find($request->editalId); $coordenador = CoordenadorComissao::find($evento->coordenadorId); + //Relaciona o projeto criado com o proponente que criou o projeto + $proponente = Proponente::where('user_id', Auth::user()->id)->first(); + //$trabalho->proponentes()->save($proponente); //dd($coordenador->id); - + $trabalho = "trabalho"; if($evento->inicioSubmissao > $mytime){ if($mytime >= $evento->fimSubmissao){ return redirect()->route('home'); @@ -88,59 +91,64 @@ class TrabalhoController extends Controller if( $evento->tipo == 'PIBIC' || $evento->tipo == 'PIBIC-EM'){ $validatedData = $request->validate([ - 'editalId' => ['required', 'integer'], + 'editalId' => ['required', 'string'], 'nomeProjeto' => ['required', 'string'], - 'grandeAreaId' => ['required', 'integer'], - 'areaId' => ['required', 'integer'], - 'subAreaId' => ['required', 'integer'], - 'pontuacaoPlanilha' => ['required', 'integer'], + 'grandeArea' => ['required', 'string'], + 'area' => ['required', 'string'], + 'subArea' => ['required', 'string'], + 'pontuacaoPlanilha' => ['required', 'string'], 'linkGrupo' => ['required', 'string'], 'linkLattesEstudante' => ['required', 'string'], 'nomeParticipante.*' => ['required', 'string'], - 'emailParticipante.*' => ['string'], - 'nomePlanoTrabalho.*' => ['string'], + 'emailParticipante.*' => ['required', 'string'], + 'funcaoParticipante.*' => ['required', 'string'], + 'nomePlanoTrabalho.*' => ['required', 'string'], 'anexoProjeto' => ['required', 'file', 'mimes:pdf', 'max:2000000'], //'anexoCONSU' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'anexoLatterCoordenador' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'anexoPlanilha' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'anexoPlanoTrabalho.*' => ['required', 'file', 'mimes:pdf', 'max:2000000'], ]); + //dd($request->all()); $trabalho = Trabalho::create([ - 'titulo' => $request->nomeProjeto, - 'coordenador_id' => $coordenador->id, - 'grande_area_id' => $request->grandeAreaId, - 'area_id' => $request->areaId, - 'sub_area_id' => $request->subAreaId, - 'pontuacaoPlanilha' => $request->pontuacaoPlanilha, - 'linkGrupoPesquisa' => $request->linkGrupo, - 'linkLattesEstudante' => $request->linkLattesEstudante, - 'data' => $mytime, - 'evento_id' => $request->editalId, - 'avaliado' => 0, + 'titulo' => $request->nomeProjeto, + 'coordenador_id' => $coordenador->id, + 'grande_area_id' => $request->grandeArea, + 'area_id' => $request->area, + 'sub_area_id' => $request->subArea, + 'pontuacaoPlanilha' => $request->pontuacaoPlanilha, + 'linkGrupoPesquisa' => $request->linkGrupo, + 'linkLattesEstudante' => $request->linkLattesEstudante, + 'data' => $mytime, + 'evento_id' => $request->editalId, + 'avaliado' => 0, + 'proponente_id' => $proponente->id, //Anexos - 'anexoDecisaoCONSU' => $request->anexoCONSU, - 'anexoProjeto' => $request->anexoProjeto, - 'anexoAutorizacaoComiteEtica' => $request->anexoComiteEtica, - 'anexoLattesCoordenador' => $request->anexoLatterCoordenador, - 'anexoPlanilhaPontuacao' => $request->anexoPlanilha, + 'anexoDecisaoCONSU' => $request->anexoCONSU, + 'anexoProjeto' => $request->anexoProjeto, + 'anexoAutorizacaoComiteEtica' => $request->anexoComiteEtica, + 'justificativaAutorizacaoEtica' => $request->justificativaAutorizacaoEtica, + 'anexoLattesCoordenador' => $request->anexoLatterCoordenador, + 'anexoPlanilhaPontuacao' => $request->anexoPlanilha, ]); - //dd($request->all()); + //dd($trabalho); }else{ //Caso em que o anexo da Decisão do CONSU não necessário $validatedData = $request->validate([ - 'editalId' => ['required', 'integer'], + 'editalId' => ['required', 'string'], 'nomeProjeto' => ['required', 'string',], - 'grandeAreaId' => ['required', 'integer'], - 'areaId' => ['required', 'integer'], - 'subAreaId' => ['required', 'integer'], - 'pontuacaoPlanilha' => ['required', 'integer'], + 'grandeArea' => ['required', 'string'], + 'area' => ['required', 'string'], + 'subArea' => ['required', 'string'], + 'pontuacaoPlanilha' => ['required', 'string'], 'linkGrupo' => ['required', 'string'], 'linkLattesEstudante' => ['required', 'string'], 'nomeCoordenador' => ['required', 'string'], 'nomeParticipante.*' => ['required', 'string'], - 'emailParticipante.*' => ['string'], - 'nomePlanoTrabalho.*' => ['string'], + 'emailParticipante.*' => ['required', 'string'], + 'funcaoParticipante.*' => ['required', 'string'], + 'nomePlanoTrabalho.*' => ['required', 'string'], 'anexoProjeto' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'anexoLatterCoordenador' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'anexoPlanilha' => ['required', 'file', 'mimes:pdf', 'max:2000000'], @@ -148,38 +156,36 @@ class TrabalhoController extends Controller ]); $trabalho = Trabalho::create([ - 'titulo' => $request->nomeProjeto, - 'coordenador_id' => $coordenador->id, - 'grande_area_id' => $request->grandeAreaId, - 'area_id' => $request->areaId, - 'sub_area_id' => $request->subAreaId, - 'coordenador' => $request->nomeCoordenador, - 'pontuacaoPlanilha' => $request->pontuacaoPlanilha, - 'linkGrupoPesquisa' => $request->linkGrupo, - 'linkLattesEstudante' => $request->linkLattesEstudante, - 'data' => $mytime, - 'evento_id' => $request->editalId, - 'avaliado' => 0, + 'titulo' => $request->nomeProjeto, + 'coordenador_id' => $coordenador->id, + 'grande_area_id' => $request->grandeArea, + 'area_id' => $request->area, + 'sub_area_id' => $request->subArea, + 'coordenador' => $request->nomeCoordenador, + 'pontuacaoPlanilha' => $request->pontuacaoPlanilha, + 'linkGrupoPesquisa' => $request->linkGrupo, + 'linkLattesEstudante' => $request->linkLattesEstudante, + 'data' => $mytime, + 'evento_id' => $request->editalId, + 'avaliado' => 0, + 'proponente_id' => $proponente->id, //Anexos - 'anexoProjeto' => $request->anexoProjeto, - 'anexoAutorizacaoComiteEtica' => $request->anexoComiteEtica, - 'anexoLattesCoordenador' => $request->anexoLatterCoordenador, - 'anexoPlanilhaPontuacao' => $request->anexoPlanilha, + 'anexoProjeto' => $request->anexoProjeto, + 'anexoAutorizacaoComiteEtica' => $request->anexoComiteEtica, + 'justificativaAutorizacaoEtica' => $request->justificativaAutorizacaoEtica, + 'anexoLattesCoordenador' => $request->anexoLatterCoordenador, + 'anexoPlanilhaPontuacao' => $request->anexoPlanilha, ]); } - //Relaciona o projeto criado com o proponente que criou o projeto - $proponente = Proponente::where('user_id', Auth::user()->id)->first(); - $trabalho->proponentes()->save($proponente); - //Envia email com senha temp para cada participante do projeto if($request->emailParticipante != null){ foreach ($request->emailParticipante as $key => $value) { $userParticipante = User::where('email', $value)->first(); - + $participante = new Participante(); if($userParticipante == null){ $passwordTemporario = Str::random(8); @@ -190,65 +196,46 @@ class TrabalhoController extends Controller 'usuarioTemp' => true, 'name' => $request->nomeParticipante[$key], 'tipo' => 'participante', - 'funcao_participante_id' => $request->funcaoParticipante[$key], ]); - $participante = $usuario->participantes()->create([ - 'trabalho_id' => $trabalho->id, - ]); + $participante->user_id = $usuario->id; + $participante->trabalho_id = $trabalho->id; + $participante->funcao_participante_id = $request->funcaoParticipante[$key]; + $participante->save(); $participante->trabalhos()->save($trabalho); }else{ - $subject = "Participante de Projeto"; $email = $value; Mail::to($email) ->send(new SubmissaoTrabalho($userParticipante, $subject)); } - } - } - - $anexos = array( - $request->anexoCONSU, - $request->anexoProjeto, - $request->anexoComiteEtica, - $request->anexoLatterCoordenador, - $request->anexoPlanilha, - ); - - foreach ($anexos as $key => $value) { - - $file = $value; - $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/'; - $nome = "1.pdf"; - Storage::putFileAs($path, $file, $nome); - - $arquivo = Arquivo::create([ - 'nome' => $path . $nome, - 'trabalhoId' => $trabalho->id, - 'data' => $mytime, - 'versaoFinal' => true, - ]); - - } - - if($request->anexoPlanoTrabalho != null){ - foreach ($request->anexoPlanoTrabalho as $key => $value) { - $file = $value; + $usuario = User::where('email', $value)->first(); + $participante = Participante::where([['user_id', '=', $usuario->id], ['trabalho_id', '=', $trabalho->id]])->first(); $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/'; $nome = $request->nomePlanoTrabalho[$key] .".pdf"; + $file = $request->anexoPlanoTrabalho[$key]; Storage::putFileAs($path, $file, $nome); - $arquivo = Arquivo::create([ - 'nome' => $path . $nome, - 'trabalhoId' => $trabalho->id, - 'data' => $mytime, - 'versaoFinal' => true, - ]); - + $arquivo = new Arquivo(); + $arquivo->nome = $path . $nome; + $arquivo->trabalhoId = $trabalho->id; + $arquivo->data = $mytime; + $arquivo->participanteId = $participante->id; + $arquivo->versaoFinal = true; + $arquivo->save(); } } + + $pasta = 'trabalhos/' . $request->editalId . '/' . $trabalho->id; + + $trabalho->anexoDecisaoCONSU = Storage::putFileAs($pasta, $request->anexoCONSU, "CONSU.pdf"); + $trabalho->anexoProjeto = Storage::putFileAs($pasta, $request->anexoProjeto, "Projeto.pdf"); + $trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoComiteEtica, "Comite_de_etica.pdf"); + $trabalho->anexoLattesCoordenador = Storage::putFileAs($pasta, $request->anexoLatterCoordenador, "Latter_Coordenador.pdf"); + $trabalho->anexoPlanilhaPontuacao = Storage::putFileAs($pasta, $request->anexoPlanilha, "Planilha.pdf"); + $trabalho->update(); //dd($trabalho); @@ -277,9 +264,25 @@ class TrabalhoController extends Controller * @param \App\Trabalho $trabalho * @return \Illuminate\Http\Response */ - public function edit(Trabalho $trabalho) + public function edit($id) { - // + $projeto = Trabalho::find($id); + $edital = Evento::find($projeto->evento_id); + $grandeAreas = GrandeArea::all(); + $areas = Area::all(); + $subareas = Subarea::all(); + $funcaoParticipantes = FuncaoParticipantes::all(); + $participantes = Participante::where('trabalho_id', $id)->get(); + $arquivos = Arquivo::where('trabalhoId', $id)->get(); + + return view('projeto.editar')->with(['projeto' => $projeto, + 'grandeAreas' => $grandeAreas, + 'areas' => $areas, + 'subAreas' => $subareas, + 'edital' => $edital, + 'funcaoParticipantes' => $funcaoParticipantes, + 'participantes' => $participantes, + 'arquivos' => $arquivos,]); } /** @@ -289,9 +292,187 @@ class TrabalhoController extends Controller * @param \App\Trabalho $trabalho * @return \Illuminate\Http\Response */ - public function update(Request $request, Trabalho $trabalho) + public function update(Request $request, $id) { - // + $mytime = Carbon::now('America/Recife'); + $mytime = $mytime->toDateString(); + $evento = Evento::find($request->editalId); + $coordenador = CoordenadorComissao::find($evento->coordenadorId); + //Relaciona o projeto criado com o proponente que criou o projeto + $proponente = Proponente::where('user_id', Auth::user()->id)->first(); + //$trabalho->proponentes()->save($proponente); + //dd($coordenador->id); + $trabalho = "trabalho"; + if($evento->inicioSubmissao > $mytime){ + if($mytime >= $evento->fimSubmissao){ + return redirect()->route('home'); + } + } + + //O anexo de Decisão do CONSU dependo do tipo de edital + if( $evento->tipo == 'PIBIC' || $evento->tipo == 'PIBIC-EM'){ + + $validatedData = $request->validate([ + 'editalId' => ['required', 'string'], + 'nomeProjeto' => ['required', 'string'], + 'grandeArea' => ['required', 'string'], + 'area' => ['required', 'string'], + 'subArea' => ['required', 'string'], + 'pontuacaoPlanilha' => ['required', 'string'], + 'linkGrupo' => ['required', 'string'], + 'linkLattesEstudante' => ['required', 'string'], + 'nomeParticipante.*' => ['required', 'string'], + 'emailParticipante.*' => ['required', 'string'], + 'funcaoParticipante.*' => ['required', 'string'], + ]); + + }else{ + //Caso em que o anexo da Decisão do CONSU não necessário + $validatedData = $request->validate([ + 'editalId' => ['required', 'string'], + 'nomeProjeto' => ['required', 'string',], + 'grandeArea' => ['required', 'string'], + 'area' => ['required', 'string'], + 'subArea' => ['required', 'string'], + 'pontuacaoPlanilha' => ['required', 'string'], + 'linkGrupo' => ['required', 'string'], + 'linkLattesEstudante' => ['required', 'string'], + 'nomeCoordenador' => ['required', 'string'], + 'nomeParticipante.*' => ['required', 'string'], + 'emailParticipante.*' => ['required', 'string'], + 'funcaoParticipante.*' => ['required', 'string'], + ]); + } + + $trabalho = Trabalho::find($id); + $trabalho->titulo = $request->nomeProjeto; + $trabalho->coordenador_id = $coordenador->id; + $trabalho->grande_area_id = $request->grandeArea; + $trabalho->area_id = $request->area; + $trabalho->sub_area_id = $request->subArea; + $trabalho->pontuacaoPlanilha = $request->pontuacaoPlanilha; + $trabalho->linkGrupoPesquisa = $request->linkGrupo; + $trabalho->linkLattesEstudante = $request->linkLattesEstudante; + $trabalho->data = $mytime; + $trabalho->evento_id = $request->editalId; + $trabalho->proponente_id = $proponente->id; + + $pasta = 'trabalhos/' . $request->editalId . '/' . $trabalho->id; + + if (!(is_null($request->anexoCONSU))) { + Storage::delete($trabalho->anexoDecisaoCONSU); + $trabalho->anexoDecisaoCONSU = Storage::putFileAs($pasta, $request->anexoCONSU, "CONSU.pdf"); + } + + if (!(is_null($request->anexoProjeto))) { + Storage::delete($trabalho->anexoProjeto); + $trabalho->anexoProjeto = Storage::putFileAs($pasta, $request->anexoProjeto, "Projeto.pdf"); + } + + if (!(is_null($request->anexoComiteEtica))) { + Storage::delete($trabalho->anexoComiteEtica); + $trabalho->anexoAutorizacaoComiteEtica = Storage::putFileAs($pasta, $request->anexoComiteEtica, "Comite_de_etica.pdf"); + } + + if (!(is_null($request->anexoLatterCoordenador))) { + Storage::delete($trabalho->anexoLattesCoordenador); + $trabalho->anexoLattesCoordenador = Storage::putFileAs($pasta, $request->anexoLatterCoordenador, "Latter_Coordenador.pdf"); + } + + if (!(is_null($request->anexoPlanilha))) { + Storage::delete($trabalho->anexoLattesCoordenador); + $trabalho->anexoPlanilhaPontuacao = Storage::putFileAs($pasta, $request->anexoPlanilha, "Planilha.pdf"); + } + //atualizando projeto + $trabalho->update(); + + // criando novos participantes que podem ter sido adicionados + $participantes = Participante::where('trabalho_id', $trabalho->id)->get(); + $emailParticipantes = []; + foreach ($participantes as $participante) { + array_push($emailParticipantes, $participante->user->email); + } + + foreach ($request->emailParticipante as $key => $value) { + // criando novos participantes que podem ter sido adicionados + if (!(in_array($request->emailParticipante[$key], $emailParticipantes, false))) { + $passwordTemporario = Str::random(8); + Mail::to($value)->send(new EmailParaUsuarioNaoCadastrado(Auth()->user()->name, ' ', 'Participante', $evento->nome, $passwordTemporario)); + $usuario = User::create([ + 'email' => $value, + 'password' => bcrypt($passwordTemporario), + 'usuarioTemp' => true, + 'name' => $request->nomeParticipante[$key], + 'tipo' => 'participante', + ]); + + $participante = new Participante(); + $participante->user_id = $usuario->id; + $participante->trabalho_id = $trabalho->id; + $participante->funcao_participante_id = $request->funcaoParticipante[$key]; + $participante->save(); + + $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/'; + $nome = $request->nomePlanoTrabalho[$key] .".pdf"; + $file = $request->anexoPlanoTrabalho[$key]; + Storage::putFileAs($path, $file, $nome); + + $arquivo = new Arquivo(); + $arquivo->nome = $path . $nome; + $arquivo->trabalhoId = $trabalho->id; + $arquivo->data = $mytime; + $arquivo->participanteId = $participante->id; + $arquivo->versaoFinal = true; + $arquivo->save(); + } + + //atualizando os participantes que já estão no projeto e planos de trabalho se enviados + if (in_array($request->emailParticipante[$key], $emailParticipantes, false)) { + $user = User::where('email', $request->emailParticipante[$key])->first(); + $participante::where([['user_id', '=', $user->id], ['trabalho_id', '=', $trabalho->id]]); + + $user->name = $request->nomeParticipante[$key]; + $user->update(); + + $participante->funcao_participante_id = $request->funcaoParticipante[$key]; + $participante->update(); + + // //atualizando planos de trabalho incompleto + // dd($request); + // if (!(is_null($request->anexoPlanoTrabalho[1]))) { + // $arquivo = Arquivo::where('participanteId', $participante->id)->first(); + // Storage::delete($arquivo->nome); + // $arquivo->delete(); + + // $path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/'; + // $nome = $request->nomePlanoTrabalho[$key] .".pdf"; + // $file = $request->anexoPlanoTrabalho[$key]; + // Storage::putFileAs($path, $file, $nome); + + // $arquivo = new Arquivo(); + // $arquivo->nome = $path . $nome; + // $arquivo->trabalhoId = $trabalho->id; + // $arquivo->data = $mytime; + // $arquivo->participanteId = $participante->id; + // $arquivo->versaoFinal = true; + // $arquivo->save(); + // } + } + } + + // Atualizando possiveis usuários removidos + $participantes = Participante::where('trabalho_id', $trabalho->id)->get(); + + foreach ($participantes as $participante) { + if (!(in_array($participante->user->email, $request->emailParticipante, false))) { + $arquivo = Arquivo::where('participanteId', $participante->id); + Storage::delete($arquivo->nome); + $arquivo->delete(); + $participante->delete(); + } + } + + return redirect()->route('evento.visualizar',['id'=>$request->editalId]); } /** @@ -437,5 +618,35 @@ class TrabalhoController extends Controller return view('coordenadorComissao.detalhesEdital', ['evento'=> $trabalho->evento ]); } + public function projetosDoEdital($id) { + $edital = Evento::find($id); + $projetos = Trabalho::where('evento_id', '=', $id)->get(); + + return view('projeto.index')->with(['edital' => $edital, 'projetos' => $projetos]); + } + + public function baixarAnexoProjeto($id) { + $projeto = Trabalho::find($id); + return Storage::download($projeto->anexoProjeto); + } + + public function baixarAnexoConsu($id) { + $projeto = Trabalho::find($id); + return Storage::download($projeto->anexoDecisaoCONSU); + } + + public function baixarAnexoComite($id) { + $projeto = Trabalho::find($id); + return Storage::download($projeto->anexoAutorizacaoComiteEtica); + } + public function baixarAnexoLattes($id) { + $projeto = Trabalho::find($id); + return Storage::download($projeto->anexoLattesCoordenador); + } + + public function baixarAnexoPlanilha($id) { + $projeto = Trabalho::find($id); + return Storage::download($projeto->anexoPlanilhaPontuacao); + } } diff --git a/app/Natureza.php b/app/Natureza.php new file mode 100644 index 0000000000000000000000000000000000000000..09487157d4e5da77a3a925b80344409919403d52 --- /dev/null +++ b/app/Natureza.php @@ -0,0 +1,10 @@ +belongsTo('App\User'); diff --git a/app/Proponente.php b/app/Proponente.php index c597aae5ad07ac3c000878fe8c888098e39b59d8..9007c88dec94163eddf41181c82b7f79dedbaf3e 100644 --- a/app/Proponente.php +++ b/app/Proponente.php @@ -10,6 +10,6 @@ class Proponente extends Model return $this->belongsTo('App\User'); } public function trabalhos(){ - return $this->belongsToMany('App\Trabalho', 'trabalho_proponente'); + return $this->hasMany('App\Trabalho'); } } diff --git a/app/Recomendacao.php b/app/Recomendacao.php new file mode 100644 index 0000000000000000000000000000000000000000..c8be58d535ae52313467118ad27cf618633545f8 --- /dev/null +++ b/app/Recomendacao.php @@ -0,0 +1,10 @@ +belongsTo('App\Area', 'areaId'); + return $this->belongsTo('App\Area'); } public function autor(){ @@ -75,13 +78,13 @@ class Trabalho extends Model public function participantes(){ return $this->belongsToMany('App\Participante', 'trabalho_participante'); } - public function proponentes(){ - return $this->belongsToMany('App\Proponente', 'trabalho_proponente'); + public function proponente(){ + return $this->belongsTo('App\Proponente'); } public function coordenador(){ return $this->belongsTo('App\CoordenadorComissao'); } public function avaliadors(){ - return $this->belongsToMany('App\Avaliador'); + return $this->belongsToMany('App\Avaliador')->withPivot('status', 'AnexoParecer', 'parecer', 'recomendacao'); } } diff --git a/composer.lock b/composer.lock index c65988d4379f35297291b6f0cf053e4f7d8b8dce..3c89259638b85f00e2bbf2de86e92bbd5b952a39 100644 --- a/composer.lock +++ b/composer.lock @@ -41,16 +41,16 @@ }, { "name": "doctrine/inflector", - "version": "2.0.2", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "3fc171224a316569faad2df6b18a1fd8cce5a56d" + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/3fc171224a316569faad2df6b18a1fd8cce5a56d", - "reference": "3fc171224a316569faad2df6b18a1fd8cce5a56d", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", "shasum": "" }, "require": { @@ -114,7 +114,7 @@ "uppercase", "words" ], - "time": "2020-05-25T20:08:47+00:00" + "time": "2020-05-29T15:13:26+00:00" }, { "name": "doctrine/lexer", @@ -586,16 +586,16 @@ }, { "name": "laravel/framework", - "version": "v6.18.16", + "version": "v6.18.18", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "73f18a6bc58fb91aa83925161db25aa3674b73e9" + "reference": "9e5226ecc28f960cba1bd38b6d1d82a52e072dc3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/73f18a6bc58fb91aa83925161db25aa3674b73e9", - "reference": "73f18a6bc58fb91aa83925161db25aa3674b73e9", + "url": "https://api.github.com/repos/laravel/framework/zipball/9e5226ecc28f960cba1bd38b6d1d82a52e072dc3", + "reference": "9e5226ecc28f960cba1bd38b6d1d82a52e072dc3", "shasum": "" }, "require": { @@ -606,7 +606,7 @@ "ext-mbstring": "*", "ext-openssl": "*", "league/commonmark": "^1.3", - "league/flysystem": "^1.0.8", + "league/flysystem": "^1.0.34", "monolog/monolog": "^1.12|^2.0", "nesbot/carbon": "^2.0", "opis/closure": "^3.1", @@ -729,7 +729,7 @@ "framework", "laravel" ], - "time": "2020-05-26T14:31:44+00:00" + "time": "2020-06-02T22:32:07+00:00" }, { "name": "laravel/tinker", @@ -1090,16 +1090,16 @@ }, { "name": "nesbot/carbon", - "version": "2.34.2", + "version": "2.35.0", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "3e87404329b8072295ea11d548b47a1eefe5a162" + "reference": "4b9bd835261ef23d36397a46a76b496a458305e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/3e87404329b8072295ea11d548b47a1eefe5a162", - "reference": "3e87404329b8072295ea11d548b47a1eefe5a162", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4b9bd835261ef23d36397a46a76b496a458305e5", + "reference": "4b9bd835261ef23d36397a46a76b496a458305e5", "shasum": "" }, "require": { @@ -1159,20 +1159,20 @@ "datetime", "time" ], - "time": "2020-05-19T22:14:16+00:00" + "time": "2020-05-24T18:27:52+00:00" }, { "name": "nikic/php-parser", - "version": "v4.4.0", + "version": "v4.5.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120" + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", - "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/53c2753d756f5adb586dca79c2ec0e2654dd9463", + "reference": "53c2753d756f5adb586dca79c2ec0e2654dd9463", "shasum": "" }, "require": { @@ -1211,7 +1211,7 @@ "parser", "php" ], - "time": "2020-04-10T16:34:50+00:00" + "time": "2020-06-03T07:24:19+00:00" }, { "name": "opis/closure", @@ -1831,22 +1831,23 @@ }, { "name": "symfony/console", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "10bb3ee3c97308869d53b3e3d03f6ac23ff985f7" + "reference": "326b064d804043005526f5a0494cfb49edb59bb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/10bb3ee3c97308869d53b3e3d03f6ac23ff985f7", - "reference": "10bb3ee3c97308869d53b3e3d03f6ac23ff985f7", + "url": "https://api.github.com/repos/symfony/console/zipball/326b064d804043005526f5a0494cfb49edb59bb0", + "reference": "326b064d804043005526f5a0494cfb49edb59bb0", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php73": "^1.8", + "symfony/polyfill-php80": "^1.15", "symfony/service-contracts": "^1.1|^2" }, "conflict": { @@ -1903,29 +1904,29 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2020-03-30T11:41:10+00:00" + "time": "2020-05-30T20:06:45+00:00" }, { "name": "symfony/css-selector", - "version": "v5.0.8", + "version": "v5.1.0", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "5f8d5271303dad260692ba73dfa21777d38e124e" + "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/5f8d5271303dad260692ba73dfa21777d38e124e", - "reference": "5f8d5271303dad260692ba73dfa21777d38e124e", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/e544e24472d4c97b2d11ade7caacd446727c6bf9", + "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9", "shasum": "" }, "require": { - "php": "^7.2.5" + "php": ">=7.2.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -1956,25 +1957,26 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2020-03-27T16:56:45+00:00" + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/debug", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "346636d2cae417992ecfd761979b2ab98b339a45" + "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/346636d2cae417992ecfd761979b2ab98b339a45", - "reference": "346636d2cae417992ecfd761979b2ab98b339a45", + "url": "https://api.github.com/repos/symfony/debug/zipball/28f92d08bb6d1fddf8158e02c194ad43870007e6", + "reference": "28f92d08bb6d1fddf8158e02c194ad43870007e6", "shasum": "" }, "require": { - "php": "^7.1.3", - "psr/log": "~1.0" + "php": ">=7.1.3", + "psr/log": "~1.0", + "symfony/polyfill-php80": "^1.15" }, "conflict": { "symfony/http-kernel": "<3.4" @@ -2012,26 +2014,27 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2020-03-27T16:54:36+00:00" + "time": "2020-05-24T08:33:35+00:00" }, { "name": "symfony/error-handler", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "7e9828fc98aa1cf27b422fe478a84f5b0abb7358" + "reference": "0df9a23c0f9eddbb6682479fee6fd58b88add75b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/7e9828fc98aa1cf27b422fe478a84f5b0abb7358", - "reference": "7e9828fc98aa1cf27b422fe478a84f5b0abb7358", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/0df9a23c0f9eddbb6682479fee6fd58b88add75b", + "reference": "0df9a23c0f9eddbb6682479fee6fd58b88add75b", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "psr/log": "~1.0", "symfony/debug": "^4.4.5", + "symfony/polyfill-php80": "^1.15", "symfony/var-dumper": "^4.4|^5.0" }, "require-dev": { @@ -2068,24 +2071,24 @@ ], "description": "Symfony ErrorHandler Component", "homepage": "https://symfony.com", - "time": "2020-03-30T14:07:33+00:00" + "time": "2020-05-28T10:39:14+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "abc8e3618bfdb55e44c8c6a00abd333f831bbfed" + "reference": "a5370aaa7807c7a439b21386661ffccf3dff2866" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/abc8e3618bfdb55e44c8c6a00abd333f831bbfed", - "reference": "abc8e3618bfdb55e44c8c6a00abd333f831bbfed", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/a5370aaa7807c7a439b21386661ffccf3dff2866", + "reference": "a5370aaa7807c7a439b21386661ffccf3dff2866", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "symfony/event-dispatcher-contracts": "^1.1" }, "conflict": { @@ -2138,7 +2141,7 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2020-03-27T16:54:36+00:00" + "time": "2020-05-20T08:37:50+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -2200,7 +2203,7 @@ }, { "name": "symfony/finder", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", @@ -2249,20 +2252,20 @@ }, { "name": "symfony/http-foundation", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "ec5bd254c223786f5fa2bb49a1e705c1b8e7cee2" + "reference": "3adfbd7098c850b02d107330b7b9deacf2581578" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ec5bd254c223786f5fa2bb49a1e705c1b8e7cee2", - "reference": "ec5bd254c223786f5fa2bb49a1e705c1b8e7cee2", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/3adfbd7098c850b02d107330b7b9deacf2581578", + "reference": "3adfbd7098c850b02d107330b7b9deacf2581578", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "symfony/mime": "^4.3|^5.0", "symfony/polyfill-mbstring": "~1.1" }, @@ -2300,30 +2303,31 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2020-04-18T20:40:08+00:00" + "time": "2020-05-23T09:11:46+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "1799a6c01f0db5851f399151abdb5d6393fec277" + "reference": "54526b598d7fc86a67850488b194a88a79ab8467" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/1799a6c01f0db5851f399151abdb5d6393fec277", - "reference": "1799a6c01f0db5851f399151abdb5d6393fec277", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/54526b598d7fc86a67850488b194a88a79ab8467", + "reference": "54526b598d7fc86a67850488b194a88a79ab8467", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "psr/log": "~1.0", "symfony/error-handler": "^4.4", "symfony/event-dispatcher": "^4.4", "symfony/http-foundation": "^4.4|^5.0", "symfony/polyfill-ctype": "^1.8", - "symfony/polyfill-php73": "^1.9" + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.15" }, "conflict": { "symfony/browser-kit": "<4.3", @@ -2390,26 +2394,27 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2020-04-28T18:47:42+00:00" + "time": "2020-05-31T05:25:51+00:00" }, { "name": "symfony/mime", - "version": "v5.0.8", + "version": "v5.1.0", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "5d6c81c39225a750f3f43bee15f03093fb9aaa0b" + "reference": "56261f89385f9d13cf843a5101ac72131190bc91" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/5d6c81c39225a750f3f43bee15f03093fb9aaa0b", - "reference": "5d6c81c39225a750f3f43bee15f03093fb9aaa0b", + "url": "https://api.github.com/repos/symfony/mime/zipball/56261f89385f9d13cf843a5101ac72131190bc91", + "reference": "56261f89385f9d13cf843a5101ac72131190bc91", "shasum": "" }, "require": { - "php": "^7.2.5", + "php": ">=7.2.5", "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0" + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.15" }, "conflict": { "symfony/mailer": "<4.4" @@ -2421,7 +2426,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "5.1-dev" } }, "autoload": { @@ -2452,7 +2457,7 @@ "mime", "mime-type" ], - "time": "2020-04-17T03:29:44+00:00" + "time": "2020-05-25T12:33:44+00:00" }, { "name": "symfony/polyfill-ctype", @@ -2805,18 +2810,80 @@ ], "time": "2020-05-12T16:47:27+00:00" }, + { + "name": "symfony/polyfill-php80", + "version": "v1.17.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/5e30b2799bc1ad68f7feb62b60a73743589438dd", + "reference": "5e30b2799bc1ad68f7feb62b60a73743589438dd", + "shasum": "" + }, + "require": { + "php": ">=7.0.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.17-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "files": [ + "bootstrap.php" + ], + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "time": "2020-05-12T16:47:27+00:00" + }, { "name": "symfony/process", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "4b6a9a4013baa65d409153cbb5a895bf093dc7f4" + "reference": "c714958428a85c86ab97e3a0c96db4c4f381b7f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/4b6a9a4013baa65d409153cbb5a895bf093dc7f4", - "reference": "4b6a9a4013baa65d409153cbb5a895bf093dc7f4", + "url": "https://api.github.com/repos/symfony/process/zipball/c714958428a85c86ab97e3a0c96db4c4f381b7f5", + "reference": "c714958428a85c86ab97e3a0c96db4c4f381b7f5", "shasum": "" }, "require": { @@ -2852,20 +2919,20 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2020-04-15T15:56:18+00:00" + "time": "2020-05-30T20:06:45+00:00" }, { "name": "symfony/routing", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "67b4e1f99c050cbc310b8f3d0dbdc4b0212c052c" + "reference": "0f557911dde75c2a9652b8097bd7c9f54507f646" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/67b4e1f99c050cbc310b8f3d0dbdc4b0212c052c", - "reference": "67b4e1f99c050cbc310b8f3d0dbdc4b0212c052c", + "url": "https://api.github.com/repos/symfony/routing/zipball/0f557911dde75c2a9652b8097bd7c9f54507f646", + "reference": "0f557911dde75c2a9652b8097bd7c9f54507f646", "shasum": "" }, "require": { @@ -2928,24 +2995,24 @@ "uri", "url" ], - "time": "2020-04-21T19:59:53+00:00" + "time": "2020-05-30T20:07:26+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.0.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "144c5e51266b281231e947b51223ba14acf1a749" + "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749", - "reference": "144c5e51266b281231e947b51223ba14acf1a749", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/66a8f0957a3ca54e4f724e49028ab19d75a8918b", + "reference": "66a8f0957a3ca54e4f724e49028ab19d75a8918b", "shasum": "" }, "require": { - "php": "^7.2.5", + "php": ">=7.2.5", "psr/container": "^1.0" }, "suggest": { @@ -2954,7 +3021,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -2986,24 +3053,24 @@ "interoperability", "standards" ], - "time": "2019-11-18T17:27:11+00:00" + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/translation", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "8272bbd2b7e220ef812eba2a2b30068a5c64b191" + "reference": "79d3ef9096a6a6047dbc69218b68c7b7f63193af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/8272bbd2b7e220ef812eba2a2b30068a5c64b191", - "reference": "8272bbd2b7e220ef812eba2a2b30068a5c64b191", + "url": "https://api.github.com/repos/symfony/translation/zipball/79d3ef9096a6a6047dbc69218b68c7b7f63193af", + "reference": "79d3ef9096a6a6047dbc69218b68c7b7f63193af", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "symfony/polyfill-mbstring": "~1.0", "symfony/translation-contracts": "^1.1.6|^2" }, @@ -3062,24 +3129,24 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2020-04-12T16:45:36+00:00" + "time": "2020-05-30T20:06:45+00:00" }, { "name": "symfony/translation-contracts", - "version": "v2.0.1", + "version": "v2.1.2", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "8cc682ac458d75557203b2f2f14b0b92e1c744ed" + "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/8cc682ac458d75557203b2f2f14b0b92e1c744ed", - "reference": "8cc682ac458d75557203b2f2f14b0b92e1c744ed", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e5ca07c8f817f865f618aa072c2fe8e0e637340e", + "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e", "shasum": "" }, "require": { - "php": "^7.2.5" + "php": ">=7.2.5" }, "suggest": { "symfony/translation-implementation": "" @@ -3087,7 +3154,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -3119,26 +3186,27 @@ "interoperability", "standards" ], - "time": "2019-11-18T17:27:11+00:00" + "time": "2020-05-20T17:43:50+00:00" }, { "name": "symfony/var-dumper", - "version": "v4.4.8", + "version": "v4.4.9", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "c587e04ce5d1aa62d534a038f574d9a709e814cf" + "reference": "56b3aa5eab0ac6720dcd559fd1d590ce301594ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c587e04ce5d1aa62d534a038f574d9a709e814cf", - "reference": "c587e04ce5d1aa62d534a038f574d9a709e814cf", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/56b3aa5eab0ac6720dcd559fd1d590ce301594ac", + "reference": "56b3aa5eab0ac6720dcd559fd1d590ce301594ac", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.1.3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php72": "~1.5" + "symfony/polyfill-php72": "~1.5", + "symfony/polyfill-php80": "^1.15" }, "conflict": { "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", @@ -3195,7 +3263,7 @@ "debug", "dump" ], - "time": "2020-04-12T16:14:02+00:00" + "time": "2020-05-30T20:06:45+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", @@ -3313,20 +3381,20 @@ "packages-dev": [ { "name": "doctrine/instantiator", - "version": "1.3.0", + "version": "1.3.1", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "ae466f726242e637cebdd526a7d991b9433bacf1" + "reference": "f350df0268e904597e3bd9c4685c53e0e333feea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/ae466f726242e637cebdd526a7d991b9433bacf1", - "reference": "ae466f726242e637cebdd526a7d991b9433bacf1", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea", + "reference": "f350df0268e904597e3bd9c4685c53e0e333feea", "shasum": "" }, "require": { - "php": "^7.1" + "php": "^7.1 || ^8.0" }, "require-dev": { "doctrine/coding-standard": "^6.0", @@ -3365,7 +3433,7 @@ "constructor", "instantiate" ], - "time": "2019-10-21T16:45:58+00:00" + "time": "2020-05-29T17:27:14+00:00" }, { "name": "facade/flare-client-php", diff --git a/config/mail.php b/config/mail.php index 3c65eb3fb093611c989a0486af190a0c85bb9a4e..d9c8712e46d6a5654aa412128780246e51ed2208 100644 --- a/config/mail.php +++ b/config/mail.php @@ -133,4 +133,11 @@ return [ 'log_channel' => env('MAIL_LOG_CHANNEL'), + 'stream' => [ + 'ssl' => [ + 'allow_self_signed' => true, + 'verify_peer' => false, + 'verify_peer_name' => false, + ], + ], ]; diff --git a/database/migrations/2020_02_05_123048_create_trabalhos_table.php b/database/migrations/2020_02_05_123048_create_trabalhos_table.php index 26e41338f43237dba51f25980e8df1fcb24a055b..d4615a888146b4d38b8d97eef2c1f99a3d78e742 100644 --- a/database/migrations/2020_02_05_123048_create_trabalhos_table.php +++ b/database/migrations/2020_02_05_123048_create_trabalhos_table.php @@ -16,7 +16,7 @@ class CreateTrabalhosTable extends Migration Schema::create('trabalhos', function (Blueprint $table) { $table->bigIncrements('id'); $table->string('titulo'); - $table->boolean('avaliado')->nullable(); + $table->boolean('aprovado')->nullable(); $table->string('linkGrupoPesquisa'); $table->string('linkLattesEstudante'); $table->string('pontuacaoPlanilha'); @@ -26,13 +26,15 @@ class CreateTrabalhosTable extends Migration $table->string('anexoDecisaoCONSU')->nullable(); $table->string('anexoPlanilhaPontuacao'); $table->string('anexoLattesCoordenador'); - $table->string('anexoAutorizacaoComiteEtica'); + $table->string('anexoAutorizacaoComiteEtica')->nullable();; + $table->string('JustificativaAutorizacaoEtica')->nullable();; //chaves estrangeiras $table->unsignedBigInteger('grande_area_id'); $table->unsignedBigInteger('area_id'); $table->unsignedBigInteger('sub_area_id'); $table->unsignedBigInteger('evento_id'); $table->unsignedBigInteger('coordenador_id'); + $table->unsignedBigInteger('proponente_id'); $table->timestamps(); }); diff --git a/database/migrations/2020_02_05_123115_create_arquivos_table.php b/database/migrations/2020_02_05_123115_create_arquivos_table.php index 8fdfd64c3e0c628836c7b04468f6500dda8371e0..5d7119d472ac7acd49fec662a761717ef558324b 100644 --- a/database/migrations/2020_02_05_123115_create_arquivos_table.php +++ b/database/migrations/2020_02_05_123115_create_arquivos_table.php @@ -22,6 +22,7 @@ class CreateArquivosTable extends Migration $table->date('data')->nullable(); $table->integer('trabalhoId'); + $table->integer('participanteId'); }); } diff --git a/database/migrations/2020_02_05_123153_create_eventos_table.php b/database/migrations/2020_02_05_123153_create_eventos_table.php index 6012d9003ba8b2b568beb5ba3b8cd05f9bafa079..d9f13899a0c4b3bfc2e45670600f551cf2e6290a 100644 --- a/database/migrations/2020_02_05_123153_create_eventos_table.php +++ b/database/migrations/2020_02_05_123153_create_eventos_table.php @@ -18,7 +18,8 @@ class CreateEventosTable extends Migration $table->timestamps(); $table->string('nome')->nullable(); $table->string('descricao')->nullable(); - $table->string('tipo')->nullable(); + $table->string('tipo')->nullable(); + $table->unsignedBigInteger('natureza_id')->nullable(); $table->date('inicioSubmissao')->nullable(); $table->date('fimSubmissao')->nullable(); $table->date('inicioRevisao')->nullable(); @@ -31,6 +32,7 @@ class CreateEventosTable extends Migration $table->integer('coordenadorId')->nullable(); $table->string('pdfEdital')->nullable(); $table->string('modeloDocumento')->nullable(); + }); } diff --git a/database/migrations/2020_05_20_211421_create_proponentes_table.php b/database/migrations/2020_05_20_211421_create_proponentes_table.php index b80eb9ca78ac2d79652ab3e41ae12af6f1cbc4c5..021492c6450b486d4ede6758b56159996541ef34 100644 --- a/database/migrations/2020_05_20_211421_create_proponentes_table.php +++ b/database/migrations/2020_05_20_211421_create_proponentes_table.php @@ -22,6 +22,7 @@ class CreateProponentesTable extends Migration $table->string('vinculo'); $table->string('titulacaoMaxima'); $table->string('anoTitulacao'); + $table->string('areaFormacao'); $table->string('grandeArea'); $table->string('area'); $table->string('subArea'); diff --git a/database/migrations/2020_05_23_054805_create_avaliadors_table.php b/database/migrations/2020_05_23_054805_create_avaliadors_table.php index 0db3c6ca5556124ec5d145ecf04524b3257165d3..516f282b34484918807954dc504eec3ab23d34d3 100644 --- a/database/migrations/2020_05_23_054805_create_avaliadors_table.php +++ b/database/migrations/2020_05_23_054805_create_avaliadors_table.php @@ -19,6 +19,9 @@ class CreateAvaliadorsTable extends Migration $table->unsignedBigInteger('user_id')->nullable(); $table->foreign('user_id')->references('id')->on('users'); + + $table->unsignedBigInteger('area_id')->nullable(); + $table->foreign('area_id')->references('id')->on('areas'); }); } diff --git a/database/migrations/2020_05_23_054945_create_participantes_table.php b/database/migrations/2020_05_23_054945_create_participantes_table.php index 0a004993703adb218381d68b4235510c5cfd1965..8b559d61dc6908c3ac8ec7d60a507967d98a0ee1 100644 --- a/database/migrations/2020_05_23_054945_create_participantes_table.php +++ b/database/migrations/2020_05_23_054945_create_participantes_table.php @@ -15,6 +15,7 @@ class CreateParticipantesTable extends Migration { Schema::create('participantes', function (Blueprint $table) { $table->bigIncrements('id'); + $table->boolean('confirmacao_convite')->nullable(); $table->timestamps(); $table->unsignedBigInteger('user_id')->nullable(); diff --git a/database/migrations/2020_05_23_182551_create_trabalhos_proponentes_table.php b/database/migrations/2020_05_23_182551_create_trabalhos_proponentes_table.php deleted file mode 100644 index abceca4fa5c23cf1b219359fa10146f20624cc6c..0000000000000000000000000000000000000000 --- a/database/migrations/2020_05_23_182551_create_trabalhos_proponentes_table.php +++ /dev/null @@ -1,34 +0,0 @@ -unsignedBigInteger('trabalho_id'); - $table->unsignedBigInteger('proponente_id'); - - $table->foreign('trabalho_id')->references('id')->on('trabalhos'); - $table->foreign('proponente_id')->references('id')->on('proponentes'); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::dropIfExists('trabalho_proponente'); - } -} diff --git a/database/migrations/2020_05_26_223341_create_avaliadors_trabalhos_table.php b/database/migrations/2020_05_26_223341_create_avaliadors_trabalhos_table.php index 34b43cbdfbd6e8c9e2c92ebd4972128d6913c2f5..215b2c9c9589db1a41e64e5ef7990075434b6383 100644 --- a/database/migrations/2020_05_26_223341_create_avaliadors_trabalhos_table.php +++ b/database/migrations/2020_05_26_223341_create_avaliadors_trabalhos_table.php @@ -14,6 +14,14 @@ class CreateAvaliadorsTrabalhosTable extends Migration public function up() { Schema::create('avaliador_trabalho', function (Blueprint $table) { + $table->bigIncrements('id'); + $table->timestamps(); + + $table->text('parecer')->nullable(); + $table->string('AnexoParecer')->nullable(); + $table->boolean('status')->nullable(); + $table->string('recomendacao')->nullable(); + $table->unsignedBigInteger('trabalho_id'); $table->unsignedBigInteger('avaliador_id'); diff --git a/database/migrations/2020_06_01_174832_create_naturezas_table.php b/database/migrations/2020_06_01_174832_create_naturezas_table.php new file mode 100644 index 0000000000000000000000000000000000000000..b33fffe499e7512dd29e024a0d2c7a47050ea811 --- /dev/null +++ b/database/migrations/2020_06_01_174832_create_naturezas_table.php @@ -0,0 +1,32 @@ +bigIncrements('id'); + $table->string('nome'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('naturezas'); + } +} diff --git a/database/migrations/2020_06_01_183609_create_avaliadors_eventos_table.php b/database/migrations/2020_06_01_183609_create_avaliadors_eventos_table.php new file mode 100644 index 0000000000000000000000000000000000000000..5d5eaf74c1bf29b4fe3fa234ef8434fe343ede9d --- /dev/null +++ b/database/migrations/2020_06_01_183609_create_avaliadors_eventos_table.php @@ -0,0 +1,37 @@ +bigIncrements('id'); + $table->timestamps(); + + $table->unsignedBigInteger('avaliador_id'); + $table->unsignedBigInteger('evento_id'); + + $table->foreign('avaliador_id')->references('id')->on('avaliadors'); + $table->foreign('evento_id')->references('id')->on('eventos'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('avaliador_evento'); + } +} diff --git a/database/migrations/2020_06_01_211059_add_natureza_evento.php b/database/migrations/2020_06_01_211059_add_natureza_evento.php new file mode 100644 index 0000000000000000000000000000000000000000..40f8e0f9edc7cde47b122cca6499b23208040eff --- /dev/null +++ b/database/migrations/2020_06_01_211059_add_natureza_evento.php @@ -0,0 +1,30 @@ +foreign('natureza_id')->references('id')->on('naturezas'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + // + } +} diff --git a/database/migrations/2020_06_04_054313_create_recomendacaos_table.php b/database/migrations/2020_06_04_054313_create_recomendacaos_table.php new file mode 100644 index 0000000000000000000000000000000000000000..18755416ed38feb6f5d0827f2d2563b9b882851d --- /dev/null +++ b/database/migrations/2020_06_04_054313_create_recomendacaos_table.php @@ -0,0 +1,33 @@ +bigIncrements('id'); + $table->string('nome'); + $table->timestamps(); + + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('recomendacaos'); + } +} diff --git a/database/migrations/2020_06_05_173701_add_partipante_arquivo.php b/database/migrations/2020_06_05_173701_add_partipante_arquivo.php new file mode 100644 index 0000000000000000000000000000000000000000..ff3e3616e0f77064ff617984b409e30b54e33c3d --- /dev/null +++ b/database/migrations/2020_06_05_173701_add_partipante_arquivo.php @@ -0,0 +1,30 @@ +foreign('participanteId')->references('id')->on('participantes'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + // + } +} diff --git a/database/seeds/AvaliadorSeeder.php b/database/seeds/AvaliadorSeeder.php new file mode 100644 index 0000000000000000000000000000000000000000..12138dab603463c5c8c4278a3aa6f101853e993c --- /dev/null +++ b/database/seeds/AvaliadorSeeder.php @@ -0,0 +1,70 @@ +where('name','Avaliador1')->pluck('id'); + + DB::table('avaliadors')->insert([ + 'user_id' => $user_id[0], + 'area_id' => 1, + ]); + + $aval = App\Avaliador::find(1); + $evento = App\Evento::find(1); + $trabalho = App\Trabalho::find(1); + $trabalho2 = App\Trabalho::find(2); + + $aval->eventos()->attach($evento); + $aval->trabalhos()->attach($trabalho); + $aval->trabalhos()->attach($trabalho2); + $aval->trabalhos->first()->pivot->status = 1; + + $aval->save(); + + + $user_id = DB::table('users')->where('name','Avaliador2')->pluck('id'); + + DB::table('avaliadors')->insert([ + 'user_id' => $user_id[0], + 'area_id' => 1, + ]); + $aval = App\Avaliador::find(2); + $evento = App\Evento::find(1); + $trabalho = App\Trabalho::find(1); + $aval->trabalhos()->attach($trabalho); + $aval->trabalhos->first()->pivot->status = 1; + + $aval->eventos()->attach($evento); + $aval->save(); + + $user_id = DB::table('users')->where('name','Avaliador3')->pluck('id'); + + DB::table('avaliadors')->insert([ + 'user_id' => $user_id[0], + 'area_id' => 1, + ]); + + // $aval = App\Avaliador::find(2); + // $evento = App\Evento::find(1); + + // $aval->eventos()->attach($evento); + // $aval->save(); + + $user_id = DB::table('users')->where('name','Avaliador4')->pluck('id'); + + DB::table('avaliadors')->insert([ + 'user_id' => $user_id[0], + 'area_id' => 1, + ]); + } +} diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index a75860a905508f0492bfd9072c47ce63f176fc30..a8cbc6c8720d9f64c45c55ce6f341b8f22ddcb36 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -22,6 +22,8 @@ class DatabaseSeeder extends Seeder $this->call(FuncaoParticipanteSeeder::class); $this->call(CoordenadorComissaoSeeder::class); $this->call(ParticipanteSeeder::class); + $this->call(NaturezaSeeder::class); + $this->call(RecomendacaoSeeder::class); // $this->call(UsersTableSeeder::class); @@ -74,6 +76,7 @@ class DatabaseSeeder extends Seeder O número máximo de autores por trabalho será seis autores; Os trabalhos deverão ser submetidos na forma de resumo simples com no máximo uma (01) página, no formato PDF;', 'tipo'=>'PIBIC', + 'natureza_id'=>'1', 'inicioSubmissao'=>'2020-03-30', 'fimSubmissao'=>'2020-09-20', 'inicioRevisao'=>'2020-04-21', @@ -82,6 +85,7 @@ class DatabaseSeeder extends Seeder 'numMaxTrabalhos' => 2, 'numMaxCoautores' => 5, 'coordenadorId'=>1, + 'created_at'=>'2020-03-30', 'criador_id'=>1, ]); @@ -92,6 +96,7 @@ class DatabaseSeeder extends Seeder O número máximo de autores por trabalho será seis autores; Os trabalhos deverão ser submetidos na forma de resumo simples com no máximo uma (01) página, no formato PDF;', 'tipo'=>'PIBIC', + 'natureza_id'=>'2', 'inicioSubmissao'=>'2020-03-30', 'fimSubmissao'=>'2020-09-20', 'inicioRevisao'=>'2020-04-21', @@ -110,6 +115,7 @@ class DatabaseSeeder extends Seeder O número máximo de autores por trabalho será seis autores; Os trabalhos deverão ser submetidos na forma de resumo simples com no máximo uma (01) página, no formato PDF;', 'tipo'=>'PIBIC', + 'natureza_id'=>'3', 'inicioSubmissao'=>'2020-03-30', 'fimSubmissao'=>'2020-09-20', 'inicioRevisao'=>'2020-04-21', @@ -136,5 +142,6 @@ class DatabaseSeeder extends Seeder $this->call(TrabalhoSeeder::class); + $this->call(AvaliadorSeeder::class); } } diff --git a/database/seeds/NaturezaSeeder.php b/database/seeds/NaturezaSeeder.php new file mode 100644 index 0000000000000000000000000000000000000000..db7ffce819f28c060ac67a1d174b2b0b27eabdc6 --- /dev/null +++ b/database/seeds/NaturezaSeeder.php @@ -0,0 +1,26 @@ +insert([ + 'nome' => 'Ensino', + ]); + + DB::table('naturezas')->insert([ + 'nome' => 'Pesquisa', + ]); + + DB::table('naturezas')->insert([ + 'nome' => 'Extensão', + ]); + } +} diff --git a/database/seeds/ProponenteSeeder.php b/database/seeds/ProponenteSeeder.php index 69615fb25dbf5cec62ecb0014465605bc0f63000..c78ef578c74c3a658430ceb4b56e06c844aebb09 100644 --- a/database/seeds/ProponenteSeeder.php +++ b/database/seeds/ProponenteSeeder.php @@ -24,6 +24,7 @@ class ProponenteSeeder extends Seeder 'vinculo' => '123123123', 'titulacaoMaxima' => '123123123', 'anoTitulacao' => '123123123', + 'areaFormacao' => '123123123', 'grandeArea' => '123123123', 'area' => '123123123', 'subArea' => '123123123', diff --git a/database/seeds/RecomendacaoSeeder.php b/database/seeds/RecomendacaoSeeder.php new file mode 100644 index 0000000000000000000000000000000000000000..5636313d596866ff618e2b2cc937428d2395e64c --- /dev/null +++ b/database/seeds/RecomendacaoSeeder.php @@ -0,0 +1,24 @@ +insert([ + 'nome' => 'Aceitacao Forte', + ]); + DB::table('recomendacaos')->insert([ + 'nome' => 'Aceitacao Média', + ]); + DB::table('recomendacaos')->insert([ + 'nome' => 'Aceitacao Fraca', + ]); + } +} diff --git a/database/seeds/TrabalhoSeeder.php b/database/seeds/TrabalhoSeeder.php index 790b335173910d5b882a60dec6ed6e3df7f15305..af818c2454ae99f7d35a55a152e524c530c8b279 100644 --- a/database/seeds/TrabalhoSeeder.php +++ b/database/seeds/TrabalhoSeeder.php @@ -34,6 +34,7 @@ class TrabalhoSeeder extends Seeder 'linkGrupoPesquisa' =>'link', 'linkLattesEstudante' =>'link', 'pontuacaoPlanilha' =>'link', + 'aprovado' =>0, 'data' =>'2020-01-01', 'anexoProjeto' =>'Álgebra', 'anexoDecisaoCONSU' =>'Álgebra', @@ -45,7 +46,30 @@ class TrabalhoSeeder extends Seeder 'sub_area_id' =>1, 'evento_id' =>1, 'coordenador_id' =>1, + 'proponente_id' =>1, + 'created_at' =>'2020-01-01', ]); + DB::table('trabalhos')->insert([ + 'titulo' =>'Projeto 2', + 'linkGrupoPesquisa' =>'link', + 'linkLattesEstudante' =>'link', + 'pontuacaoPlanilha' =>'link', + 'aprovado' =>0, + 'data' =>'2020-01-01', + 'anexoProjeto' =>'Álgebra', + 'anexoDecisaoCONSU' =>'Álgebra', + 'anexoPlanilhaPontuacao' =>'Álgebra', + 'anexoAutorizacaoComiteEtica' =>'Álgebra', + 'anexoLattesCoordenador' =>'Álgebra', + 'grande_area_id' =>1, + 'area_id' =>1, + 'sub_area_id' =>1, + 'evento_id' =>1, + 'coordenador_id' =>1, + 'proponente_id' =>1, + 'created_at' =>'2020-01-02', + + ]); } } diff --git a/database/seeds/UsuarioSeeder.php b/database/seeds/UsuarioSeeder.php index 8902037a4c7e5aad4246cc7db7a0986fa999668a..c58c69d1c4f2ad0fffd7b57be6d1220fdfad0c85 100644 --- a/database/seeds/UsuarioSeeder.php +++ b/database/seeds/UsuarioSeeder.php @@ -84,5 +84,41 @@ class UsuarioSeeder extends Seeder 'email_verified_at'=>'2020-01-01' ]); + DB::table('users')->insert([ + + 'name'=>'Avaliador1', + 'email'=>'aval1@ufrpe.br', + 'password'=>Hash::make('12345678'), + 'tipo'=>'avaliador', + 'email_verified_at'=>'2020-01-01' + ]); + + DB::table('users')->insert([ + + 'name'=>'Avaliador2', + 'email'=>'aval2@ufrpe.br', + 'password'=>Hash::make('12345678'), + 'tipo'=>'avaliador', + 'email_verified_at'=>'2020-01-01' + ]); + + DB::table('users')->insert([ + + 'name'=>'Avaliador3', + 'email'=>'aval3@ufrpe.br', + 'password'=>Hash::make('12345678'), + 'tipo'=>'avaliador', + 'email_verified_at'=>'2020-01-01' + ]); + + DB::table('users')->insert([ + + 'name'=>'Avaliador4', + 'email'=>'aval4@ufrpe.br', + 'password'=>Hash::make('12345678'), + 'tipo'=>'avaliador', + 'email_verified_at'=>'2020-01-01' + ]); + } } diff --git a/resources/views/administrador/atribuirAvaliadores.blade.php b/resources/views/administrador/atribuirAvaliadores.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..9694771388c54c5d9262d697376ce836d7fba254 --- /dev/null +++ b/resources/views/administrador/atribuirAvaliadores.blade.php @@ -0,0 +1,53 @@ +@extends('layouts.app') + +@section('content') + +
+ +

{{ Auth()->user()->name }}

+
+
+ +

Edital Selecionado: {{ $evento->nome }}

+ +
+
+ +
+ + + + +
+ + + + +
+ +@endsection diff --git a/resources/views/administrador/editais.blade.php b/resources/views/administrador/editais.blade.php index bae17de0404bd272ff11653ad1417891d7156acc..1b265945588c90ecf12e4c35e5e35417f5ce6234 100644 --- a/resources/views/administrador/editais.blade.php +++ b/resources/views/administrador/editais.blade.php @@ -7,61 +7,131 @@
-

Meus Editais

-
-
- Criar Edital + @if(auth()->user()->tipo === "administrador") +

Meus Editais

+ @else +

Editais

+ @endif
+ @if(auth()->user()->tipo === "administrador") + + @endif

- - - - - - - - - - @foreach ($eventos as $evento) - - - - + @if(auth()->user()->tipo === "proponente") +
Nome do EditalData de CriaçãoOpção
- - {{ $evento->nome }} - - 10/05/2020 - -
+ + + + + + + - @endforeach - -
Nome do EditalStatusData de CriaçãoBaixar editalOpção
+ + + @foreach ($eventos as $evento) + + + + {{ $evento->nome }} + + + + {{ $evento->created_at }} + + + + + + + + + + @endforeach + + + @endif @endsection diff --git a/resources/views/administrador/editar_user.blade.php b/resources/views/administrador/editar_user.blade.php index a81dc6b9c12c2109ed28ebeaad0edbdfe68e8568..282924608cdd6231133ac4e82bba85cfbe5d4cd3 100644 --- a/resources/views/administrador/editar_user.blade.php +++ b/resources/views/administrador/editar_user.blade.php @@ -121,6 +121,9 @@ + + + @@ -150,6 +153,9 @@ + + + diff --git a/resources/views/administrador/index.blade.php b/resources/views/administrador/index.blade.php index efc42073360a29af6e727f853f8542d06e87c9f9..17f67e4b97b5ef398d9e263560f199e7d7722b06 100644 --- a/resources/views/administrador/index.blade.php +++ b/resources/views/administrador/index.blade.php @@ -19,7 +19,7 @@
- +

Natureza

diff --git a/resources/views/administrador/novo_user.blade.php b/resources/views/administrador/novo_user.blade.php index e0ce3b1486f2c6d6cc4c822c6ddc1d77806cf7f7..f5cbba9ee869f20b8282d2e89542bfac0cfe1c66 100644 --- a/resources/views/administrador/novo_user.blade.php +++ b/resources/views/administrador/novo_user.blade.php @@ -123,6 +123,14 @@ @enderror + + + + @error('areaFormacao') + + {{ $message }} + + @enderror
diff --git a/resources/views/administrador/projetos.blade.php b/resources/views/administrador/projetos.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..90ae6bff9410e93ac556bdd4824519c8b8dff8a7 --- /dev/null +++ b/resources/views/administrador/projetos.blade.php @@ -0,0 +1,71 @@ +@extends('layouts.app') + +@section('content') + + + +@endsection + +@section('javascript') + +@endsection diff --git a/resources/views/administrador/selecionarAvaliadores.blade.php b/resources/views/administrador/selecionarAvaliadores.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..9b0eb66e54aac02fc47d7d1320b85c2c92d6ff3c --- /dev/null +++ b/resources/views/administrador/selecionarAvaliadores.blade.php @@ -0,0 +1,141 @@ +@extends('layouts.app') + +@section('content') + +
+ + +
+
+
+

Avaliadores

+
+
+ + +
+ + +
+
+
+ + + + + + + + + + + @foreach ($avaliadores as $avaliador) + + + + + + + @endforeach + +
Nome do UsuárioEmailÁreaAção
{{ $avaliador->user->name }}{{ $avaliador->user->email }}{{ $avaliador->area->nome }} +
+ @csrf + + + +
+
+ +
+
+ +

Avaliadores Selecionados para o Edital: {{ $evento->nome }}

+ +
+
+
+ + + + + + + + + + + @foreach ($avalSelecionados as $avaliador) + + + + + + + + @endforeach + +
Nome do UsuárioEmailStatusAção
{{ $avaliador->user->name }}{{ $avaliador->user->email }}Status-Aceito ou Rejeitado +
+ @csrf + + + +
+
+
+ + + + + + + +@endsection + +@section('javascript') + +@endsection diff --git a/resources/views/administrador/selecionarProjetos.blade.php b/resources/views/administrador/selecionarProjetos.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..65484bcd4680520f4ab6af58ce740c283195022b --- /dev/null +++ b/resources/views/administrador/selecionarProjetos.blade.php @@ -0,0 +1,135 @@ +@extends('layouts.app') + +@section('content') + +
+ + +
+
+ {{--
--}} +

Lista de Projetos do Edital: {{ $evento->nome }}

+ {{--
--}} + +
+
+ {{--
--}} +
Total:
+ {{--
--}} + +
+
+
+ + + + + + + + + + + @foreach ($trabalhos as $trabalho) + + + + + + + @endforeach + +
Nome do ProjetoÁreaProponenteAção
{{ $trabalho->titulo}}{{ $trabalho->area->nome}}{{ $trabalho->proponente->user->name }} + + + +
+ +
+
+ +

Status dos Projetos em Avaliação: {{ $evento->nome }}

+ +
+
+
+ + + + + + + + + + + @foreach ($avaliadores as $avaliador) + @php $contador = 0; @endphp + @foreach($avaliador->trabalhos as $trabalho) + @if($trabalho->pivot->status == true) + @php $contador++; @endphp + @endif + @endforeach + + + + + + + @endforeach + +
Nome do UsuárioE-mailStatusAção
{{ $avaliador->user->name }}{{ $avaliador->user->email }}{{ $contador }} / {{ $avaliador->trabalhos->count() }} ...
+
+ + + + + + + +@endsection + +@section('javascript') + +@endsection diff --git a/resources/views/administrador/visualizarParecer.blade.php b/resources/views/administrador/visualizarParecer.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..1976c7af4034c528942a292a5456b5f4f812db10 --- /dev/null +++ b/resources/views/administrador/visualizarParecer.blade.php @@ -0,0 +1,38 @@ +@extends('layouts.app') + +@section('content') +
+@endsection + +@section('javascript') + +@endsection diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php index 66d55384cbc962fe9420093f74ccb6b4d604ecb9..fa0fb9978c65d661d2427961fbd177c9763f566b 100644 --- a/resources/views/auth/register.blade.php +++ b/resources/views/auth/register.blade.php @@ -94,119 +94,6 @@
- -
-
-

Endereço

-
-
- - {{-- Rua | Número | Bairro --}} -
-
- - - @error('cep') - - {{ $message }} - - @enderror -
-
-
- - -
- - - - @error('rua') - - {{ $message }} - - @enderror -
- -
- - - - @error('numero') - - {{ $message }} - - @enderror -
- -
- - - - @error('bairro') - - {{ $message }} - - @enderror -
- - -
- -
- -
- - - - @error('cidade') - - {{ $message }} - - @enderror -
- -
- - {{-- --}} - - - @error('uf') - - {{ $message }} - - @enderror -
-
-
@@ -226,7 +113,6 @@ @section('javascript') @endsection diff --git a/resources/views/avaliador/editais.blade.php b/resources/views/avaliador/editais.blade.php index d896b9e26767197810f0f21e66e25d2e1601bdf9..9d8434f92a31a798d83c19f60d137c1e861537ef 100644 --- a/resources/views/avaliador/editais.blade.php +++ b/resources/views/avaliador/editais.blade.php @@ -6,12 +6,9 @@
-
+

Meus Editais

-

@@ -26,10 +23,8 @@ @foreach ($eventos as $evento) - - - {{ $evento->nome }} - + + {{ $evento->nome }} 10/05/2020 @@ -38,23 +33,11 @@ {{-- --}}
diff --git a/resources/views/avaliador/index.blade.php b/resources/views/avaliador/index.blade.php index 677fb59c47b9c7d1981e3a67121902beb1483c52..3acccdd02ec8afac39215d464b06b2a4966fdb42 100644 --- a/resources/views/avaliador/index.blade.php +++ b/resources/views/avaliador/index.blade.php @@ -8,7 +8,7 @@
diff --git a/resources/views/avaliador/listarTrabalhos.blade.php b/resources/views/avaliador/listarTrabalhos.blade.php index bb8e693a3b96e010b247f8fe047a1af62a7f623b..efd7e74930a209d313a6e6601fbd97c4c16c66bf 100644 --- a/resources/views/avaliador/listarTrabalhos.blade.php +++ b/resources/views/avaliador/listarTrabalhos.blade.php @@ -7,7 +7,7 @@
-

Trabalhos

+

Trabalhos do Edital: {{ $evento->nome }}

@@ -25,9 +25,25 @@ @foreach ($trabalhos as $trabalho) {{ $trabalho->titulo }} - {{ $trabalho->create_at }} - baixar - parecer + {{ $trabalho->created_at }} + + {{-- {{route('download', ['file' => $arquivo])}} --}} + + + + + +
+
+ @csrf + + + +
+
+ @endforeach diff --git a/resources/views/avaliador/parecer.blade.php b/resources/views/avaliador/parecer.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..41ee86481978c67134698f9b5d528ee1060b0b4b --- /dev/null +++ b/resources/views/avaliador/parecer.blade.php @@ -0,0 +1,59 @@ +@extends('layouts.app') + +@section('content') +
+ +
+
+
+
+
Meu Parecer
+
Trabalho: {{ $trabalho->titulo }}
+

+

+ @csrf + + +
+ + +
+ +
+ @if($trabalho->pivot->AnexoParecer == null) + + + + @else +
+ + + @endif + +
+ + Cancelar +
+ +
+
+
+
+ +
+@endsection + +@section('javascript') + +@endsection diff --git a/resources/views/componentes/popup.blade.php b/resources/views/componentes/popup.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..0f6c4b68cd40dc5dbd7827e25b00a5a4d2b65fe7 --- /dev/null +++ b/resources/views/componentes/popup.blade.php @@ -0,0 +1,24 @@ + + + +{{-- @component('componentes.popup', [ + "titulo"=>"Informações:", + "conteudo"=>$requisicao_documento['detalhes'], + "id"=>$requisicao_documento['id'] + ]) +@endcomponent --}} \ No newline at end of file diff --git a/resources/views/evento/criarEvento.blade.php b/resources/views/evento/criarEvento.blade.php index c095428ec460439b1a6841515a050b9e645b8fa1..5596aa6ff5a0bd009edf7f38228b0366f403b067 100644 --- a/resources/views/evento/criarEvento.blade.php +++ b/resources/views/evento/criarEvento.blade.php @@ -15,7 +15,7 @@
{{-- nome | Participantes | Tipo--}}
-
+
@@ -40,6 +40,21 @@ @enderror
+ +
+ + + + @error('natureza') + + {{ $message }} + + @enderror +
{{-- end nome | Participantes | Tipo--}} {{-- Descricao Edital --}} diff --git a/resources/views/evento/submeterTrabalho.blade.php b/resources/views/evento/submeterTrabalho.blade.php index eadb0246af76f9a12385fa2bd7b3e3d1d364f6c0..c3a0d40d9cd3b958eb4b075d328656c5b8ca351a 100644 --- a/resources/views/evento/submeterTrabalho.blade.php +++ b/resources/views/evento/submeterTrabalho.blade.php @@ -3,465 +3,491 @@ @section('content')
-
-
-
-
-
Enviar Projeto
-

-

- @csrf - - - {{-- Nome do Projeto --}} -
-
- - - - @error('nomeTrabalho') - - {{ $message }} - - @enderror -
-
- - {{-- Grande Area --}} -
-
- - - - @error('grandeAreaId') - - {{ $message }} - - @enderror -
-
- - - - @error('areaId') - - {{ $message }} - - @enderror -
-
- - - - @error('subAreaId') - - {{ $message }} - - @enderror -
-
+
+
+
+
+
Enviar Projeto
+

+ + @csrf + + + {{-- Nome do Projeto --}} +

+
+ + + + @error('nomeTrabalho') + + {{ $message }} + + @enderror +
+
+ {{-- Grande Area --}} +
+
+ + + + @error('grandeArea') + + {{ $message }} + + @enderror +
+
+ + + + @error('area') + + {{ $message }} + + @enderror +
+
+ + + + @error('subArea') + + {{ $message }} + + @enderror +
+
- - - - -
-

Coordenador

- {{-- Coordenador --}} -
- -
- - -
-
- - -
-
- - -
-
- - -
-
- - {{-- Pontuação da Planilha de Pontuação --}} -
- {{-- Nome Trabalho --}} - -
- - {{-- Link do grupo de pesquisa --}} -
- -
+
+

Coordenador

- {{-- Link do grupo de pesquisa --}} -
- -
+ {{-- Coordenador --}} +
-
-

Anexos

- - {{-- Anexo do Projeto --}} -
- {{-- Arquivo --}} -
- - -
- -
- - -
-
- @error('anexoProjeto') - - {{ $message }} - - @enderror -
+
+ + +
+
+ + user()->proponentes->linkLattes != null) + value="{{ Auth()->user()->proponentes->linkLattes }}" + @else + value="" + @endif > + + @error('linkLattesEstudante') + + {{ $message }} + + @enderror +
+
+ + + + @error('pontuacaoPlanilha') + + {{ $message }} + + @enderror +
+
+ + + + @error('linkGrupo') + + {{ $message }} + + @enderror +
-
- +
-
- -
- - -
-
- @error('arquivo') - - {{ $message }} - - @enderror -
+
+

Anexos

-
- + {{-- Anexo do Projeto --}} +
+ {{-- Arquivo --}} +
+ -
- -
- - -
-
- @error('arquivo') - - {{ $message }} - - @enderror -
+
-
- +
+ + +
+
+ @error('anexoProjeto') + + {{ $message }} + + @enderror +
-
- -
- - -
-
- @error('arquivo') - - {{ $message }} - - @enderror -
-
+
+ - - - @if($edital->tipo == 'PIBIC' || $edital->tipo == 'PIBIC-EM') - {{-- Decisão do CONSU --}} -
- {{-- Arquivo --}} -
- +
-
- -
- - -
-
- @error('arquivo') - - {{ $message }} - - @enderror -
-
- @endif +
+ + +
+
+ @error('anexoLatterCoordenador') + + {{ $message }} + + @enderror +
-
-

Participantes

- {{-- Participantes --}} -
-
-
-
-
- - -
-
- - -
-
- - -
-
- - - -
-
-
-
- - -
-
- - -
-
- - -
-
- - - -
-
+
+ + + +
-
- Participantes + -
-
- {{-- Plano de Trabalho --}} -

Plano de Trabalho

-
-
-
-
-
- - -
- {{-- Arquivo --}} -
- -
-
- Selecione um arquivo: -
-
- - -
-
- @error('anexoPlanoTrabalho') - - {{ $message }} - - @enderror -
-
- - - +
+ + +
+
+ @error('anexoComiteEtica') + + {{ $message }} + + @enderror +
+ +
+ + +
+ +
+ + +
+
+ @error('anexoPlanilha') + + {{ $message }} + + @enderror +
+ +
+ + +
+ + +
+ + +
+
+ @error('justificativaAutorizacaoEtica') + + {{ $message }} + + @enderror +
+ + @if($edital->tipo == 'PIBIC' || $edital->tipo == 'PIBIC-EM') + {{-- Decisão do CONSU --}} +
+ + +
+ +
+ + +
+
+ @error('anexoCONSU') + + {{ $message }} + + @enderror +
+ @endif + +
+ +
+

Participantes

+ + {{-- Participantes --}} +
+
+
+
+
+
Dados do participante
+
+
+ + + @error('nomeParticipante') + + {{ $message }} + + @enderror +
+
+ + + @error('emailParticipante') + + {{ $message }} + + @enderror +
+
+ + +
+
+
Dados do plano de trabalho
+
+
+
+
+
+ + + + @error('nomePlanoTrabalho') + + {{ $message }} + + @enderror +
+ {{-- Arquivo --}} +
+ +
+
+ Selecione um arquivo: +
+
+ +
- - -
+
+ @error('anexoPlanoTrabalho') + + {{ $message }} + + @enderror +
+
+ + + +
- Plano de Trabalho +
- -

-
-
- Cancelar -
-
- -
+
- +
+ Participantes +
+ +

+
+
+ Cancelar +
+
+ +
+
+
+
+
@endsection @section('javascript') -@endsection +@endsection \ No newline at end of file diff --git a/resources/views/naturezas/index.blade.php b/resources/views/naturezas/index.blade.php index b66fd52779550a37510a2bee5aa6d0fbbd5b2612..c391ca6322cb5440c6abfaac2559ebd797443c2c 100644 --- a/resources/views/naturezas/index.blade.php +++ b/resources/views/naturezas/index.blade.php @@ -2,43 +2,150 @@ @section('content') -
- -

Administrador

- -
-
- -
-
-

Grande Area

-
- -
-
+
+ {{-- Modal criar nova natureza --}} + +
+ @if(session('mensagem')) +
+
+

{{session('mensagem')}}

+
- -
- -
-
-

Area

-
-
-
+ @endif +
+

{{ __('Naturezas') }}

- - +
+
+ + + + + + + + + + @foreach ($naturezas as $natureza) + + + + + + + + + + @endforeach + +
NomeData de criaçãoOpção
+ {{ $natureza->nome }} + + {{$natureza->creat_at}} + + +
+@endsection + +@section('javascript') + @endsection \ No newline at end of file diff --git a/resources/views/participante/index.blade.php b/resources/views/participante/index.blade.php index 07c1bf5336bf9861533300802c8d1a244adbeb38..db4669d6a465628cf1b7d3bfd8341303aab330fd 100644 --- a/resources/views/participante/index.blade.php +++ b/resources/views/participante/index.blade.php @@ -8,7 +8,7 @@
- +

Editais

diff --git a/resources/views/projeto/editar.blade.php b/resources/views/projeto/editar.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..116173a3670c533a421647ff107db825ad7de34d --- /dev/null +++ b/resources/views/projeto/editar.blade.php @@ -0,0 +1,577 @@ +@extends('layouts.app') + +@section('content') +
+ +
+
+
+
+
Editar Projeto
+

+

+ @csrf + + + {{-- Nome do Projeto --}} +
+
+ + + + @error('nomeTrabalho') + + {{ $message }} + + @enderror +
+
+ + {{-- Grande Area --}} +
+
+ + + + @error('grandeArea') + + {{ $message }} + + @enderror +
+
+ + + + @error('area') + + {{ $message }} + + @enderror +
+
+ + + + @error('subArea') + + {{ $message }} + + @enderror +
+
+ + + + + + + + + +
+

Coordenador

+ + {{-- Coordenador --}} +
+ +
+ + +
+
+ + user()->proponentes->linkLattes != null) + value="{{ Auth()->user()->proponentes->linkLattes }}" + @else + value="" + @endif > + + @error('linkLattesEstudante') + + {{ $message }} + + @enderror +
+
+ + + + @error('pontuacaoPlanilha') + + {{ $message }} + + @enderror +
+
+ + + + @error('linkGrupo') + + {{ $message }} + + @enderror +
+ +
+ +
+

Anexos

+ + {{-- Anexo do Projeto --}} +
+ {{-- Arquivo --}} +
+ Arquivo atual + +
+ +
+ + +
+
+ @error('anexoProjeto') + + {{ $message }} + + @enderror +
+ +
+ Arquivo atual + +
+ +
+ + +
+
+ @error('anexoLatterCoordenador') + + {{ $message }} + + @enderror +
+ + + + + +
+ Arquivo atual +
+ + +
+ + +
+ + +
+
+ @error('anexoComiteEtica') + + {{ $message }} + + @enderror +
+ +
+ Arquivo atual + +
+ +
+ + +
+
+ @error('anexoPlanilha') + + {{ $message }} + + @enderror +
+ +
+ + +
+ + +
+ + +
+
+ @error('justificativaAutorizacaoEtica') + + {{ $message }} + + @enderror +
+ + @if($edital->tipo == 'PIBIC' || $edital->tipo == 'PIBIC-EM') + {{-- Decisão do CONSU --}} +
+ Arquivo atual + +
+ +
+ + +
+
+ @error('anexoCONSU') + + {{ $message }} + + @enderror +
+ @endif + +
+ +
+

Participantes

+ + {{-- Participantes --}} +
+
+
+ @foreach($participantes as $participante) +
+
+
Dados do participante
+
+
+ + + @error('nomeParticipante') + + {{ $message }} + + @enderror +
+
+ + + @error('emailParticipante') + + {{ $message }} + + @enderror +
+
+ + +
+
+
Dados do plano de trabalho
+ @foreach ($arquivos as $arquivo) + @if($arquivo->participanteId === $participante->id) + Plano de trabalho atual + @endif + @endforeach +
+
+
+
+
+ + + + @error('nomePlanoTrabalho') + + {{ $message }} + + @enderror +
+ {{-- Arquivo --}} +
+ +
+
+ Selecione um arquivo: +
+
+ + +
+
+ @error('anexoPlanoTrabalho') + + {{ $message }} + + @enderror +
+
+ + + +
+
+
+
+
+
+ @endforeach +
+ Participantes + +
+
+ +

+
+
+ Cancelar +
+
+ +
+
+
+
+
+
+
+ +
+@endsection + +@section('javascript') + +@endsection \ No newline at end of file diff --git a/resources/views/projeto/index.blade.php b/resources/views/projeto/index.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..053e946f75bd57cbce0f7274ffd7714f5e6982f6 --- /dev/null +++ b/resources/views/projeto/index.blade.php @@ -0,0 +1,76 @@ +@extends('layouts.app') + +@section('content') +
+ +
+
+
+

Projetos do edital {{ $edital->nome }}

+
Submissão irá até o dia {{ date('d-m-Y', strtotime($edital->fimSubmissao)) }}
+
+
+ + @if(Auth::user()->proponentes == null) + Criar projeto + @else + Criar projeto + @endif +
+
+
+
+ + + + + + + + + + + @foreach ($projetos as $projeto) + + + @if($projeto->avaliado) + + @else + + @endif + + + + @endforeach + +
Nome do projetoStatusData de CriaçãoOpção
+ {{ $projeto->titulo }} + AvaliadoSubmetido{{ date('d-m-Y', strtotime($projeto->updated_at)) }} + +
+
+@endsection + +@section('javascript') + +@endsection \ No newline at end of file diff --git a/resources/views/proponente/cadastro.blade.php b/resources/views/proponente/cadastro.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..ce94a290a573ae2ce4353b88da60fd07bbb29e36 --- /dev/null +++ b/resources/views/proponente/cadastro.blade.php @@ -0,0 +1,134 @@ +@extends('layouts.app') + +@section('content') + +
+
+
+

{{ __('Criar perfil de proponente') }}

+
+ +
+
+
+ @csrf +
+ +
+
+

Dados do proponente

+
+
+ + + + @error('SIAPE') + + {{ $message }} + + @enderror + + + + + @error('cargo') + + {{ $message }} + + @enderror + +
+ + +
+ + + + + @error('titulacaoMaxima') + + {{ $message }} + + @enderror + + + + + @error('anoTitulacao') + + {{ $message }} + + @enderror + + + + + @error('areaFormacao') + + {{ $message }} + + @enderror + +
+ + +
+ + +
+
+ +
+ + +
+ + +
+ + + + + @error('linkLattes') + + {{ $message }} + + @enderror + + + + + @error('senha') + + {{ $message }} + + @enderror + +
+ +
+ +
+
+
+ +@endsection + diff --git a/resources/views/proponente/index.blade.php b/resources/views/proponente/index.blade.php index 9264ef8b1017fd610050085855e33422ec38658d..09594eb9528dbba99e12a7bd687dbecfd973fc2d 100644 --- a/resources/views/proponente/index.blade.php +++ b/resources/views/proponente/index.blade.php @@ -4,8 +4,39 @@
-

Proponente

+

{{ Auth()->user()->name }}

+
@endsection diff --git a/resources/views/user/perfilUser.blade.php b/resources/views/user/perfilUser.blade.php index 451cf74c25fac8d46417735b01d19304d428a41e..b2906e411f869373c3db16bb7720cf2acd626144 100644 --- a/resources/views/user/perfilUser.blade.php +++ b/resources/views/user/perfilUser.blade.php @@ -142,6 +142,9 @@ + + + @@ -424,6 +427,9 @@ + + + diff --git a/routes/web.php b/routes/web.php index b2c80a0f53d0928ca753e236f50286a0c6c59d85..def3c034a2a25addee89db67a2ae27d40d6d7f31 100644 --- a/routes/web.php +++ b/routes/web.php @@ -20,11 +20,18 @@ Route::get('/evento/visualizar/naologado/{id}','EventoController@showNaoLogado' Auth::routes(['verify' => true]); //######## Rotas Avaliador #################################### -Route::get('/avaliador/index', 'AvaliadorController@index' )->name('avaliador.index'); -Route::get('/avaliador/trabalhos', 'AvaliadorController@visualizarTrabalhos' )->name('visualizarTrabalho'); +Route::prefix('avaliador')->name('avaliador.')->group(function(){ + Route::get('/index', 'AvaliadorController@index' )->name('index'); + Route::get('/trabalhos', 'AvaliadorController@visualizarTrabalhos' )->name('visualizarTrabalho'); + Route::post('/parecer', 'AvaliadorController@parecer' )->name('parecer'); + Route::get('/editais', 'AvaliadorController@editais' )->name('editais'); + Route::post('/Enviarparecer', 'AvaliadorController@enviarParecer' )->name('enviarParecer'); +}); //######### Proponente ######################################## Route::get('/proponente/index', 'ProponenteController@index' )->name('proponente.index'); +Route::get('/proponente/cadastro', 'ProponenteController@create' )->name('proponente.create'); +Route::post('/proponente/cadastro', 'ProponenteController@store' )->name('proponente.store'); //######### Participante ######################################## Route::get('/participante/index', 'ParticipanteController@index' )->name('participante.index'); @@ -83,6 +90,9 @@ Route::group(['middleware' => ['isTemp', 'auth', 'verified']], function(){ Route::get( '/trabalho/submeter/{id}','TrabalhoController@index' )->name('trabalho.index'); Route::post( '/trabalho/novaVersao', 'TrabalhoController@novaVersao' )->name('trabalho.novaVersao'); Route::post( '/trabalho/criar', 'TrabalhoController@store' )->name('trabalho.store'); + Route::get( '/edital/{id}/projetos', 'TrabalhoController@projetosDoEdital' )->name('projetos.edital'); + Route::get( '/projeto/{id}/editar', 'TrabalhoController@edit' )->name('trabalho.editar'); + Route::post( '/projeto/{id}/atualizar', 'TrabalhoController@update' )->name('trabalho.update'); //######### Atribuição ####################################### Route::get( '/atribuir', 'AtribuicaoController@distribuicaoAutomatica' )->name('distribuicao'); @@ -96,51 +106,75 @@ Route::group(['middleware' => ['isTemp', 'auth', 'verified']], function(){ Route::post( '/revisor/email', 'RevisorController@enviarEmailRevisor' )->name('revisor.email'); Route::post( '/revisor/emailTodos', 'RevisorController@enviarEmailTodosRevisores' )->name('revisor.emailTodos'); - + //########## Rotas de download de documentos ########################### + Route::get('/baixar/edital/{id}', 'EventoController@baixarEdital' )->name('baixar.edital'); + Route::get('/baixar/anexo-projeto/{id}', 'TrabalhoController@baixarAnexoProjeto' )->name('baixar.anexo.projeto'); + Route::get('/baixar/anexo-consu/{id}', 'TrabalhoController@baixarAnexoConsu' )->name('baixar.anexo.consu'); + Route::get('/baixar/anexo-comite/{id}', 'TrabalhoController@baixarAnexoComite' )->name('baixar.anexo.comite'); + Route::get('/baixar/anexo-lattes/{id}', 'TrabalhoController@baixarAnexoLattes' )->name('baixar.anexo.lattes'); + Route::get('/baixar/anexo-planilha/{id}','TrabalhoController@baixarAnexoPlanilha' )->name('baixar.anexo.planilha'); + Route::get('/baixar/plano-de-trabalho/{id}', 'ArquivoController@baixarPlano' )->name('baixar.plano'); }); Route::prefix('usuarios')->name('admin.')->group(function(){ //######### Rotas da administração dos usuários #################### - Route::get('/home-admin', 'AdministradorController@index' )->name('index'); - Route::get('/usuarios', 'AdministradorController@usuarios' )->name('usuarios'); - Route::get('/novo', 'AdministradorController@create' )->name('user.create'); - Route::post('/salvar-novo', 'AdministradorController@salvar' )->name('user.store'); - Route::get('/editar/{id}', 'AdministradorController@edit' )->name('user.edit'); - Route::post('/editar/atualizar/{id}', 'AdministradorController@update' )->name('user.update'); - Route::post('/editar/deletar/{id}', 'AdministradorController@destroy' )->name('user.destroy'); - Route::get('/editais', 'AdministradorController@editais' )->name('editais'); - + Route::get('/home-admin', 'AdministradorController@index' )->name('index')->middleware('checkAdministrador'); + Route::get('/usuarios', 'AdministradorController@usuarios' )->name('usuarios')->middleware('checkAdministrador'); + Route::get('/novo', 'AdministradorController@create' )->name('user.create')->middleware('checkAdministrador'); + Route::post('/salvar-novo', 'AdministradorController@salvar' )->name('user.store')->middleware('checkAdministrador'); + Route::get('/editar/{id}', 'AdministradorController@edit' )->name('user.edit')->middleware('checkAdministrador'); + Route::post('/editar/atualizar/{id}', 'AdministradorController@update' )->name('user.update')->middleware('checkAdministrador'); + Route::post('/editar/deletar/{id}', 'AdministradorController@destroy' )->name('user.destroy')->middleware('checkAdministrador'); + Route::get('/editais', 'AdministradorController@editais' )->name('editais'); + Route::get('/atribuir', 'AdministradorController@atribuir' )->name('atribuir'); + Route::get('/selecionarAvaliador', 'AdministradorController@selecionar' )->name('selecionar'); + Route::get('/selecionarProjetos', 'AdministradorController@projetos' )->name('projetos'); + Route::post('/adicionarAvalEvento', 'AdministradorController@adicionar' )->name('adicionar'); + Route::post('/removerAvalEvento', 'AdministradorController@remover' )->name('remover'); + Route::post('/atribuirAvaliadorProjeto', 'AdministradorController@atribuicao' )->name('atribuicao'); + Route::post('/enviarConviteAvaliador', 'AdministradorController@enviarConvite' )->name('enviarConvite'); + Route::post('/visualizarParecer', 'AdministradorController@visualizarParecer')->name('visualizarParecer'); + Route::get('/pareceresProjetos', 'AdministradorController@pareceres' )->name('pareceres'); }); Route::prefix('naturezas')->group(function(){ //########### Rotas das naturezas ############################### + + Route::get('/', 'AdministradorController@naturezas' )->name('admin.naturezas')->middleware('checkAdministrador'); + Route::get('/index', 'NaturezaController@index' )->name('natureza.index')->middleware('checkAdministrador'); + Route::get('/nova', 'NaturezaController@create' )->name('natureza.criar')->middleware('checkAdministrador'); + Route::post('/salvar', 'NaturezaController@store' )->name('natureza.salvar')->middleware('checkAdministrador'); + Route::get('/detalhes/{id}', 'NaturezaController@show' )->name('natureza.show')->middleware('checkAdministrador'); + Route::get('/editar/{id}', 'NaturezaController@edit' )->name('natureza.editar')->middleware('checkAdministrador'); + Route::get('/atualizar/{id}', 'NaturezaController@update' )->name('natureza.atualizar')->middleware('checkAdministrador'); + Route::get('/excluir/{id}', 'NaturezaController@destroy' )->name('natureza.deletar')->middleware('checkAdministrador'); + //########### Rotas das grandes areas ############################## - Route::get('/', 'AdministradorController@naturezas' )->name('admin.naturezas'); - Route::get('/grande-area', 'GrandeAreaController@index' )->name('grandearea.index'); - Route::get('/grande-area/nova', 'GrandeAreaController@create' )->name('grandearea.criar'); - Route::post('/grande-area/salvar', 'GrandeAreaController@store' )->name('grandearea.salvar'); - Route::get('/grande-area/detalhes/{id}', 'GrandeAreaController@show' )->name('grandearea.show'); - Route::get('/grande-area/editar/{id}', 'GrandeAreaController@edit' )->name('grandearea.editar'); - Route::post('/grande-area/atualizar/{id}','GrandeAreaController@update' )->name('grandearea.atualizar'); - Route::post('/grande-area/excluir/{id}', 'GrandeAreaController@destroy' )->name('grandearea.deletar'); + Route::get('/grande-area', 'GrandeAreaController@index' )->name('grandearea.index')->middleware('checkAdministrador'); + Route::get('/grande-area/nova', 'GrandeAreaController@create' )->name('grandearea.criar')->middleware('checkAdministrador'); + Route::post('/grande-area/salvar', 'GrandeAreaController@store' )->name('grandearea.salvar')->middleware('checkAdministrador'); + Route::get('/grande-area/detalhes/{id}', 'GrandeAreaController@show' )->name('grandearea.show')->middleware('checkAdministrador'); + Route::get('/grande-area/editar/{id}', 'GrandeAreaController@edit' )->name('grandearea.editar')->middleware('checkAdministrador'); + Route::post('/grande-area/atualizar/{id}','GrandeAreaController@update' )->name('grandearea.atualizar')->middleware('checkAdministrador'); + Route::post('/grande-area/excluir/{id}', 'GrandeAreaController@destroy' )->name('grandearea.deletar')->middleware('checkAdministrador'); //#### Rotas das areas, id's de nova e salvar são os ids da grande área a qual a nova área pertence #### - Route::get('/areas', 'AreaController@index' )->name('area.index'); - Route::get('/{id}/area/nova', 'AreaController@create' )->name('area.criar'); - Route::post('/{id}/area/salvar', 'AreaController@store' )->name('area.salvar'); - Route::get('/area/detalhes/{id}', 'AreaController@show' )->name('area.show'); - Route::get('/area/editar/{id}', 'AreaController@edit' )->name('area.editar'); - Route::post('/area/atualizar/{id}', 'AreaController@update' )->name('area.atualizar'); - Route::post('/area/excluir/{id}', 'AreaController@destroy' )->name('area.deletar'); + Route::get('/areas', 'AreaController@index' )->name('area.index')->middleware('checkAdministrador'); + Route::get('/{id}/area/nova', 'AreaController@create' )->name('area.criar')->middleware('checkAdministrador'); + Route::post('/{id}/area/salvar', 'AreaController@store' )->name('area.salvar')->middleware('checkAdministrador'); + Route::get('/area/detalhes/{id}', 'AreaController@show' )->name('area.show')->middleware('checkAdministrador'); + Route::get('/area/editar/{id}', 'AreaController@edit' )->name('area.editar')->middleware('checkAdministrador'); + Route::post('/area/atualizar/{id}', 'AreaController@update' )->name('area.atualizar')->middleware('checkAdministrador'); + Route::post('/area/excluir/{id}', 'AreaController@destroy' )->name('area.deletar')->middleware('checkAdministrador'); //### Rotas das subareas, id's de nova e salvar são os ids da área a qual a nova subárea pertence ##### - Route::get('/subareas', 'SubAreaController@index' )->name('subarea.index'); - Route::get('/{id}/subarea/nova', 'SubAreaController@create' )->name('subarea.criar'); - Route::post('/{id}/subarea/salvar', 'SubAreaController@store' )->name('subarea.salvar'); - Route::get('/subarea/detalhes/{id}', 'SubAreaController@show' )->name('subarea.show'); - Route::get('/subarea/editar/{id}', 'SubAreaController@edit' )->name('subarea.editar'); - Route::post('/subarea/atualizar/{id}', 'SubAreaController@update' )->name('subarea.atualizar'); - Route::post('/subarea/excluir/{id}', 'SubAreaController@destroy' )->name('subarea.deletar'); + Route::get('/subareas', 'SubAreaController@index' )->name('subarea.index')->middleware('checkAdministrador'); + Route::get('/{id}/subarea/nova', 'SubAreaController@create' )->name('subarea.criar')->middleware('checkAdministrador'); + Route::post('/{id}/subarea/salvar', 'SubAreaController@store' )->name('subarea.salvar')->middleware('checkAdministrador'); + Route::get('/subarea/detalhes/{id}', 'SubAreaController@show' )->name('subarea.show')->middleware('checkAdministrador'); + Route::get('/subarea/editar/{id}', 'SubAreaController@edit' )->name('subarea.editar')->middleware('checkAdministrador'); + Route::post('/subarea/atualizar/{id}', 'SubAreaController@update' )->name('subarea.atualizar')->middleware('checkAdministrador'); + Route::post('/subarea/excluir/{id}', 'SubAreaController@destroy' )->name('subarea.deletar')->middleware('checkAdministrador'); }); @@ -155,6 +189,7 @@ Route::prefix('evento')->name('evento.')->group(function(){ Route::post( '/editar/{id}', 'EventoController@update' )->name('update'); Route::post( '/setResumo', 'EventoController@setResumo' )->name('setResumo'); Route::post( '/setFoto', 'EventoController@setFotoEvento' )->name('setFotoEvento'); + }); //########## Rotas de administrador responsavel (Reitor ou pro-reitor)########