Unverified Commit 74c5b66e authored by Guilherme Silva de Souza's avatar Guilherme Silva de Souza Committed by GitHub
Browse files

Merge pull request #690 from antonioDurval/master

Modificação de telas referentes a parte de atribuição de Avaliador e novo modelo de convite para EXTENSÃO
parents 9639b315 ef586e94
......@@ -37,4 +37,8 @@ class Avaliador extends Model
public function naturezas(){
return $this->belongsToMany('App\Natureza', 'naturezas_avaliadors', 'avaliador_id');
}
public function areaTematicas() {
return $this->belongsToMany('App\AreaTematica', 'area_tematica_avaliadors', 'avaliador_id');
}
}
......@@ -34,6 +34,7 @@ use Illuminate\Support\Str;
use Illuminate\Validation\Rule;
use PDF;
use DB;
use App\AreaTematica;
class AdministradorController extends Controller
......@@ -148,6 +149,8 @@ class AdministradorController extends Controller
}
$grandeAreas = GrandeArea::orderBy('nome')->get();
$areasTematicas = AreaTematica::orderBy('nome')->get();
//dd($areasTematicas);
$hoje = Carbon::today('America/Recife');
$hoje = $hoje->toDateString();
......@@ -162,7 +165,8 @@ class AdministradorController extends Controller
'AvalRelatParcial' => $AvalRelatParcial,
'AvalRelatFinal' => $AvalRelatFinal,
'hoje' => $hoje,
'flagSubstituicao' => $flagSubstituicao, ]);
'flagSubstituicao' => $flagSubstituicao,
'areasTematicas' => $areasTematicas, ]);
}
public function showProjetos(Request $request)
......@@ -639,13 +643,32 @@ class AdministradorController extends Controller
$coordenador_id_evento = $evento->coordenadorId;
$coordenador_id = CoordenadorComissao::find($coordenador_id_evento);
$grandeAreas = GrandeArea::orderBy('nome')->get();
$areasTematicas = AreaTematica::orderBy('nome')->get();
$avalSelecionados = $evento->avaliadors;
$avalNaoSelecionadosId = $evento->avaliadors->pluck('id');
$trabalhos = $evento->trabalhos->whereNotIn('status', 'rascunho');
$avaliadores = Avaliador::join('naturezas_avaliadors', 'avaliadors.id', '=' ,'naturezas_avaliadors.avaliador_id')
->whereNotIn('avaliadors.id', $avalNaoSelecionadosId)
->where('naturezas_avaliadors.natureza_id', $evento->natureza_id)
->get();
$avaliadores = Avaliador::whereNotIn('id', $avalNaoSelecionadosId)->get();
//$avaliadores = Avaliador::join('naturezas_avaliadors', 'avaliadors.id', '=' ,'naturezas_avaliadors.avaliador_id')->whereNotIn('avaliadors.id', $avalNaoSelecionadosId)
// ->where('naturezas_avaliadors.natureza_id', $evento->natureza_id)
// ->get();
$avaliadores_extensao = collect();
$avaliadores_others = collect();
foreach($avaliadores as $avaliador){
if($evento->natureza_id == 3 && $avaliador->area_id == null){
$avaliadores_extensao->push($avaliador);
}elseif($evento->natureza_id != 3 && $avaliador->area_id != null){
$avaliadores_others->push($avaliador);
}
}
if($evento->natureza_id == 3){
$avaliadores = $avaliadores_extensao;
} else {
$avaliadores = $avaliadores_others;
}
if ((Auth::user()->id != $coordenador_id->user_id) && ($user->tipo != 'administrador')) {
return redirect()->back();
......@@ -657,6 +680,7 @@ class AdministradorController extends Controller
'avalSelecionados' => $avalSelecionados,
'grandeAreas' => $grandeAreas,
'trabalhos' => $trabalhos,
'areasTematicas' => $areasTematicas,
]);
}
......@@ -818,6 +842,7 @@ class AdministradorController extends Controller
$emailAvaliador = $request->emailAvaliador;
$area = Area::where('id', $request->area_id)->first();
$user = User::where('email', $emailAvaliador)->first();
$areaTematica = AreaTematica::where('id', $request->area_tematica_id)->first();
if ($request->instituicao == 'ufape') {
$nomeInstituicao = 'Universidade Federal do Agreste de Pernambuco';
......@@ -866,6 +891,10 @@ class AdministradorController extends Controller
$avaliador->save();
}
if($evento->natureza_id == 3){
$avaliador->areaTematicas()->sync($areaTematica);
}
if ($request->instituicao == 'ufape') {
$trabalho->avaliadors()->attach($avaliador, ['acesso' => 2]);
$evento->avaliadors()->syncWithoutDetaching($avaliador);
......@@ -920,6 +949,7 @@ class AdministradorController extends Controller
$emailAvaliador = $request->emailAvaliador;
$area = Area::where('id', $request->area_id)->first();
$user = User::where('email', $emailAvaliador)->first();
$areaTematica = AreaTematica::where('id', $request->area_tematica_id)->first();
if ($request->instituicao == 'ufape') {
$nomeInstituicao = 'Universidade Federal do Agreste de Pernambuco';
......@@ -965,6 +995,7 @@ class AdministradorController extends Controller
$avaliador->eventos()->attach($evento);
if($evento->natureza_id == 3){
$avaliador->naturezas()->sync($evento->natureza_id);
$avaliador->areaTematicas()->sync($areaTematica);
}
$user->save();
$avaliador->save();
......@@ -973,6 +1004,7 @@ class AdministradorController extends Controller
$avaliador->eventos()->attach($evento);
if($evento->natureza_id == 3){
$avaliador->naturezas()->sync($evento->natureza_id);
$avaliador->areaTematicas()->sync($areaTematica);
}
$user->save();
$avaliador->save();
......
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateAreaTematicaAvaliadorsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('area_tematica_avaliadors', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('area_tematica_id');
$table->foreign('area_tematica_id')->references('id')->on('area_tematicas');
$table->integer('avaliador_id');
$table->foreign('avaliador_id')->references('id')->on('avaliadors');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('area_tematica_avaliadors');
}
}
......@@ -1543,7 +1543,7 @@
</button>
</div>
<div class="modal-body" style="margin-left: 20px; margin-right: 20px;">
<form action="{{ route('admin.convite.atribuicao.projeto') }}" method="POST" class="labels-blue" id="formConvite">
@csrf
<input type="hidden" name="evento_id" value="{{ $evento->id }}">
......@@ -1559,24 +1559,38 @@
required>
</div>
<div class="form-group">
<label for="grandeArea" class="col-form-label">{{ __('Grande Área') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control" id="grandeAreaConvite" name="grande_area_id" onchange="areas()"
@if($evento->natureza_id == 3)
<div class="form-group">
<label for="grandeArea" class="col-form-label">{{ __('Áreas Temáticas') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control" id="grandeAreaConvite" name="area_tematica_id"
required>
<option value="" disabled selected hidden>-- Grande Área --</option>
@foreach($grandeAreas as $grandeArea)
<option value="{{$grandeArea->id}}">{{$grandeArea->nome}}</option>
@endforeach
</select>
<option value="" disabled selected hidden>-- Áreas Temáticas --</option>
@foreach($areasTematicas as $areaTematica)
<option value="{{$areaTematica->id}}">{{$areaTematica->nome}}</option>
@endforeach
</select>
</div>
@else
<div class="form-group">
<label for="grandeArea" class="col-form-label">{{ __('Grande Área') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control" id="grandeAreaConvite" name="grande_area_id" onchange="areas()"
required>
<option value="" disabled selected hidden>-- Grande Área --</option>
@foreach($grandeAreas as $grandeArea)
<option value="{{$grandeArea->id}}">{{$grandeArea->nome}}</option>
@endforeach
</select>
<label for="area" class="col-form-label">{{ __('Área') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control @error('area') is-invalid @enderror" id="areaConvite"
name="area_id" required>
<option value="" disabled selected hidden>-- Área --</option>
</select>
</div>
<label for="area" class="col-form-label">{{ __('Área') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control @error('area') is-invalid @enderror" id="areaConvite"
name="area_id" required>
<option value="" disabled selected hidden>-- Área --</option>
</select>
</div>
@endif
<div class="form-group">
<label for="exampleFormControlSelect1">Tipo</label>
<select class="form-control" name="tipo" id="exampleFormControlSelect1" disabled>
......
......@@ -52,7 +52,11 @@
<th scope="col">Pontuação</th>
<th scope="col" style="width: 100%;">Nome do projeto</th>
<th scope="col">Proponente</th>
<th scope="col">Área</th>
@if($evento->natureza_id != 3)
<th scope="col">Área</th>
@else
<th scope="col">Área Temática</th>
@endif
<th scope="col">N. Planos</th>
<th scope="col">Avaliador</th>
<th scope="col">Status</th>
......@@ -73,7 +77,11 @@
{{$trabalho->proponente->user->name}}
</td>
<td>
{{$trabalho->area->nome}}
@if($evento->natureza_id != 3)
{{$trabalho->area->nome}}
@else
{{ App\AreaTematica::find($trabalho->area_tematica_id)->nome }}
@endif
</td>
<td>
{{$trabalho->participantes->count()}}
......@@ -138,7 +146,11 @@
<th scope="col">Pontuação</th>
<th scope="col" style="width: 100%;">Nome do projeto</th>
<th scope="col">Proponente</th>
<th scope="col">Área</th>
@if($evento->natureza_id != 3)
<th scope="col">Área</th>
@else
<th scope="col">Área Temática</th>
@endif
<th scope="col">N. Planos</th>
<th scope="col">Avaliador</th>
<th scope="col">Status</th>
......@@ -159,7 +171,11 @@
{{$trabalho->proponente->user->name}}
</td>
<td>
{{$trabalho->area->nome}}
@if($evento->natureza_id != 3)
{{$trabalho->area->nome}}
@else
{{ App\AreaTematica::find($trabalho->area_tematica_id)->nome }}
@endif
</td>
<td>
{{$trabalho->participantes->count()}}
......@@ -225,7 +241,11 @@
<th scope="col">Pontuação</th>
<th scope="col" style="width: 100%;">Nome do projeto</th>
<th scope="col">Proponente</th>
<th scope="col">Área</th>
@if($evento->natureza_id != 3)
<th scope="col">Área</th>
@else
<th scope="col">Área Temática</th>
@endif
<th scope="col">N. Planos</th>
<th scope="col">Avaliador</th>
<th scope="col">Status</th>
......@@ -246,7 +266,11 @@
{{$trabalho->proponente->user->name}}
</td>
<td>
{{$trabalho->area->nome}}
@if($evento->natureza_id != 3)
{{$trabalho->area->nome}}
@else
{{ App\AreaTematica::find($trabalho->area_tematica_id)->nome }}
@endif
</td>
<td>
{{$trabalho->participantes->count()}}
......
......@@ -43,7 +43,11 @@
<tr>
<th scope="col">Nome do Usuário</th>
<th scope="col">Email</th>
<th scope="col">Área</th>
@if($evento->natureza_id == 3)
<th scope="col">Área Temática</th>
@else
<th scope="col">Área</th>
@endif
<th scope="col">Tipo</th>
<th scope="col" style="text-align:center">Ação</th>
</tr>
......@@ -55,7 +59,11 @@
<td>{{ $avaliador->user->email }}</td>
<td>
@if(is_null($avaliador->area))
Indefinida
@if($avaliador->areaTematicas()->get()->first() != null)
{{ $avaliador->areaTematicas()->get()->first()->nome }}
@else
Indefinida
@endif
@else
{{ $avaliador->area->nome }}
@endif
......@@ -71,7 +79,9 @@
<td style="text-align:center">
<form action="{{ route('admin.adicionar') }}" method="POST">
@csrf
<input type="hidden" name="avaliador_id" value="{{ $avaliador->id }}" >
<!-- Possibilidade de exclusão -->
{{-- <input type="hidden" name="avaliador_id" value="{{ $avaliador->avaliador_id }}"> --}}
<input type="hidden" name="avaliador_id" value="{{ $avaliador->id }}" >
<input type="hidden" name="evento_id" value="{{ $evento->id }}" >
<button type="submit" class="btn btn-primary" >Adicionar</button>
</form>
......@@ -251,7 +261,8 @@
<label for="exampleInputEmail1">Email <span style="color: red;">*</span></label>
<input type="email" class="form-control" name="emailAvaliador" id="exampleInputEmail1" required>
</div>
<!-- aki -->
@if($evento->natureza_id != 3)
<div class="form-group">
<label for="grandeArea" class="col-form-label">{{ __('Grande Área') }} <span style="color: red; font-weight:bold">*</span></label>
<select class="form-control" id="grandeArea" name="grande_area_id" onchange="areas()" required>
......@@ -272,6 +283,22 @@
<option value="avaliador" >Avaliador</option>
</select>
</div>
@else
<div class="form-group">
<label for="grandeArea" class="col-form-label">{{ __('Áreas Temáticas') }} <span
style="color: red; font-weight:bold">*</span></label>
<select class="form-control" id="grandeAreaConvite" name="area_tematica_id"
required>
<option value="" disabled selected hidden>-- Áreas Temáticas --</option>
@foreach($areasTematicas as $areaTematica)
<option value="{{$areaTematica->id}}">{{$areaTematica->nome}}</option>
@endforeach
</select>
</div>
@endif
@if($evento->natureza_id != 3)
<div class="form-group">
......
......@@ -137,7 +137,11 @@
<thead>
<tr>
<th scope="col">Nome do Projeto</th>
<th scope="col">Área</th>
@if($evento->natureza_id == 3)
<th scope="col">Área Temática</th>
@else
<th scope="col">Área</th>
@endif
<th scope="col">Proponente</th>
<th scope="col" style="text-align:center">Ação</th>
</tr>
......@@ -145,8 +149,12 @@
<tbody id="projetos">
@foreach ($trabalhos as $trabalho)
<tr>
<td style="max-width:100px; overflow-x:auto; text-overflow:ellipsis">{{ $trabalho->titulo}}</td>
<td>{{ App\Area::find($trabalho->area_id)->nome}}</td>
<td style="max-width:100px; overflow-x:auto; text-overflow:ellipsis">{{ $trabalho->titulo }}</td>
@if($evento->natureza_id == 3)
<td>{{ App\AreaTematica::find($trabalho->area_tematica_id)->nome }}</td>
@else
<td>{{ App\Area::find($trabalho->area_id)->nome }}</td>
@endif
<td>{{ $trabalho->proponente->user->name }}</td>
<td style="text-align:center">
<button type="button" class="btn btn-primary" value="{{ $trabalho->id }}" id="atribuir1" data-toggle="modal" data-target="#exampleModalCenter{{ $trabalho->id }}">
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment