Commit abfa732f authored by PedroLopesUPE's avatar PedroLopesUPE
Browse files

Merge branch 'main' into dev-joao-pdf_generator

parents af8d2093 febf26df
......@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\Anexo;
use App\Models\UserPad;
use App\Models\Util\Menu;
use App\Models\Util\YesOrNo;
use Illuminate\Http\Request;
......@@ -10,28 +11,36 @@ use Illuminate\Http\Request;
class AnexoController extends Controller
{
public function edit($user_pad_id)
{
{
$model = Anexo::whereUserPadId($user_pad_id)->first();
$model = $model ?? new Anexo();
$userPad = UserPad::whereId($user_pad_id)->first();
$menu = Menu::PADS;
$yesOrNo = YesOrNo::listYesOrNo();
$semestres = Anexo::listSemestre();
$categorias = Anexo::listCategoria();
//usado para testes;
$model = new Anexo();
return view('pad.anexo.update', [
'userPad' => $userPad,
'model' => $model,
'menu' => $menu,
'yesOrNo' => $yesOrNo,
'semestres' => $semestres,
'categorias' => $categorias,
'user_pad_id' => $user_pad_id
]);
}
//implementar Request com FormRequest
public function update(Request $request, $user_pad_id)
{
dd($request->all());
{
$model = Anexo::whereUserPadId($user_pad_id)->first();
$model = $model ?? new Anexo();
$model->fill($request->all());
$model->save();
session()->flash('success', 'Anexo atualizado com sucesso!');
return redirect()->route('edit_anexo', ['user_pad_id' => $user_pad_id]);
}
}
......@@ -27,8 +27,6 @@ class ExtensaoCoordenacaoController extends Controller
->orderBy('cod_atividade')
->get();
$funcoes = Constants::listFuncaoProjeto();
$planejamentos = ExtensaoCoordenacao::listPlanejamentos();
$divs = PadTables::tablesExtensao($user_pad_id);
......@@ -37,7 +35,6 @@ class ExtensaoCoordenacaoController extends Controller
'atividades' => $atividades,
'divs' => $divs,
'funcoes' => $funcoes,
'planejamentos' => $planejamentos,
'user_pad_id' => $user_pad_id,
......@@ -48,12 +45,10 @@ class ExtensaoCoordenacaoController extends Controller
public function edit($id) {
$model = ExtensaoCoordenacao::find($id);
$funcoes = Constants::listFuncaoProjeto();
$planejamentos = ExtensaoCoordenacao::listPlanejamentos();
return view('pad.components.templates.dimensao.extensao.coordenacao.form_update', [
'model' => $model,
'funcoes' => $funcoes,
'planejamentos' => $planejamentos
]);
}
......
......@@ -27,8 +27,6 @@ class ExtensaoOrientacaoController extends Controller
->orderBy('cod_atividade')
->get();
$funcoes = Constants::listFuncaoOrientador();
$planejamentos = ExtensaoOrientacao::listPlanejamentos();
$divs = PadTables::tablesExtensao($user_pad_id);
......@@ -37,7 +35,6 @@ class ExtensaoOrientacaoController extends Controller
'atividades' => $atividades,
'divs' => $divs,
'funcoes' => $funcoes,
'planejamentos' => $planejamentos,
'user_pad_id' => $user_pad_id,
......@@ -48,13 +45,11 @@ class ExtensaoOrientacaoController extends Controller
public function edit($id) {
$model = ExtensaoOrientacao::find($id);
$funcoes = Constants::listFuncaoOrientador();
$planejamentos = ExtensaoOrientacao::listPlanejamentos();
return view('pad.components.templates.dimensao.extensao.orientacao.form_update', [
'model' => $model,
'funcoes' => $funcoes,
'planejamentos' => $planejamentos
]);
}
......
......@@ -9,8 +9,8 @@ class Anexo extends Model
{
use SoftDeletes;
public const SEMESTE_1 = 1;
public const SEMESTE_2 = 2;
public const SEMESTRE_1 = 1;
public const SEMESTRE_2 = 2;
public const CATEGORIA_ = 1;
// public const CATEGORIA_ = 2;
......@@ -42,13 +42,21 @@ class Anexo extends Model
public static function listSemestre($value = null) {
$values = [
self::SEMESTE_1 => '1º SEMESTRE - JANEIRO - JULHO',
self::SEMESTE_2 => '2º SEMESTRE - AGOSTO - DEZEMBRO',
self::SEMESTRE_1 => '1º SEMESTRE',
self::SEMESTRE_2 => '2º SEMESTRE',
];
return $value !== null? $values[$value] : $values;
}
public function campus() {
return $this->belongsTo(Campus::class);
}
public function curso() {
return $this->belongsTo(Curso::class);
}
public static function listCategoria($value = null) {
$values = [
......
......@@ -22,7 +22,7 @@ class ExtensaoCoordenacao extends Model
*
* @var array
*/
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'programa_extensao', 'funcao', 'ch_semanal', 'atividade', 'cod_dimensao'];
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'programa_extensao', 'ch_semanal', 'atividade', 'cod_dimensao'];
// Array de strings para preenchimento de campos de avaliação
public $avaliable_attributes = ['Título do Projeto:' => 'titulo_projeto', 'Programa de Extensão:' => 'programa_extensao', 'Atividade:' => 'atividade', 'Carga Horária:' => 'ch_semanal'];
......@@ -38,7 +38,6 @@ class ExtensaoCoordenacao extends Model
'cod_atividade' => ['required', 'string', 'max:255'],
'titulo_projeto' => ['required', 'string', 'max:255'],
'programa_extensao' => ['required', 'string', 'max:255'],
'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listModalidade()))],
'atividade' => ['string', 'nullable'],
'cod_dimensao' => ['required', 'string', Rule::in(array_keys(self::listPlanejamentos()))],
];
......@@ -56,11 +55,6 @@ class ExtensaoCoordenacao extends Model
//programa_extensao
'programa_extensao.required' => 'O campo "Programa de Extensão" é obrigatório!',
//funcao
'funcao.required' => 'O campo "Função" é obrigatório!',
'funcao.in' => 'Selecione uma opção da lista de "Função"!',
'funcao.integer' => 'O campo "Função" deve ser um inteiro!',
//'cod_dimensao'
'cod_dimensao.required' => 'O campo "Resolução" é obrigatório',
'cod_dimensao.in' => 'Selecione uma opção da lista de "Resolução"',
......@@ -91,14 +85,6 @@ class ExtensaoCoordenacao extends Model
return $cod_dimensao !== null? $values[$cod_dimensao] : $values;
}
/**
* @return string
*/
public function funcaoAsString()
{
return Constants::listFuncaoProjeto($this->funcao);
}
public function userPad() {
return $this->belongsTo(UserPad::class);
}
......
......@@ -22,7 +22,7 @@ class ExtensaoOrientacao extends Model
*
* @var array
*/
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'discente', 'funcao', 'ch_semanal', 'cod_dimensao'];
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'titulo_projeto', 'discente', 'ch_semanal', 'cod_dimensao'];
// Array de strings para preenchimento de campos de avaliação
public $avaliable_attributes = ['Título do Projeto:' => 'titulo_projeto', 'Discente:' => 'discente', 'Carga Horária:' => 'ch_semanal'];
......@@ -38,7 +38,6 @@ class ExtensaoOrientacao extends Model
'cod_atividade' => ['required', 'string', 'max:255'],
'titulo_projeto' => ['required', 'string', 'max:255'],
'discente' => ['required', 'string', 'max:255'],
'funcao' => ['required', 'integer', Rule::in(array_keys(Constants::listFuncaoOrientador()))],
'cod_dimensao' => ['required', 'string', Rule::in(array_keys(self::listPlanejamentos()))],
];
}
......@@ -55,11 +54,6 @@ class ExtensaoOrientacao extends Model
//discente
'discente.required' => 'O campo "Nome do Orientando" é obrigatório!',
//funcao
'funcao.required' => 'O campo "Função" é obrigatório!',
'funcao.in' => 'Selecione uma opção da lista de "Função"!',
'funcao.integer' => 'O campo "Função" deve ser um inteiro!',
//'cod_dimensao'
'cod_dimensao.required' => 'O campo "Resolução" é obrigatório',
'cod_dimensao.in' => 'Selecione uma opção da lista de "Resolução"',
......@@ -90,15 +84,6 @@ class ExtensaoOrientacao extends Model
return $cod_dimensao !== null? $values[$cod_dimensao] : $values;
}
/**
* @return string
*/
public function funcaoAsString()
{
return Constants::listFuncaoOrientador($this->funcao);
}
public function userPad() {
return $this->belongsTo(UserPad::class);
}
......
......@@ -90,12 +90,12 @@ class PadTables {
return [
[
'id' => 'extensao_coordenacao',
'name' => '1. EXTENSÃO (COORDENAÇÃO OU PARTICIPAÇÃO EM ATIVIDADES DE EXTENSÃO HOMOLOGADAS PELA PROEC)',
'name' => '1. EXTENSÃO (COORDENAÇÃO DE ATIVIDADES DE EXTENSÃO HOMOLOGADA NA PROEC)',
'route' => route('extensao_coordenacao_index', ['user_pad_id' => $user_pad_id])
],
[
'id' => 'extensao_orientacao',
'name' => '2. EXTENSÃO (ORIENTAÇÃO OU ACOMPANHAMENTO DE ESTUDANTES EM ATIVIDADES DE EXTENSÃO HOMOLOGADAS PELA PROEC)',
'name' => '2. EXTENSÃO (COLABORAÇÃO EM ATIVIDADE DE EXTENSÃO HOMOLOGADA NA PROEC)',
'route' => route('extensao_orientacao_index', ['user_pad_id' => $user_pad_id])
],
[
......
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AlterRemoveFuncaoInExtensaoOrientacaoTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('extensao_orientacao', function (Blueprint $table) {
$table->dropColumn('funcao');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('extensao_orientacao', function (Blueprint $table) {
$table->tinyInteger('funcao')->notNull();
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AlterRemoveFuncaoInExtensaoCoordenacaoTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('extensao_coordenacao', function (Blueprint $table) {
$table->dropColumn('funcao');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('extensao_coordenacao', function (Blueprint $table) {
$table->tinyInteger('funcao')->notNull();
});
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AlterChangeCategoriaNivelToVarcharAnexoTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('anexo_b', function (Blueprint $table) {
$table->string('categoria_nivel')->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('anexo_b', function (Blueprint $table) {
$table->tinyInteger('categoria_nivel')->change();
});
}
}
......@@ -2,6 +2,8 @@
@csrf
<div class="row">
<input type="hidden" name="user_pad_id" value="{{$user_pad_id}}">
<div class="col-sm-12">
<div class="mb-3">
<input type="text" class="form-control" value="UNIVERSIDADE DE PERNAMBUCO" disabled>
......@@ -11,14 +13,22 @@
<div class="col-sm-6">
<div class="mb-3">
<label for="campus_id"> UNIDADE DE EDUCAÇÃO/CAMPUS </label>
<select name="campus_id" id="campus_id" class="form-select"></select>
<select name="campus_id" id="campus_id" class="form-select">
@if($model->campus_id)
<option value="{{$model->campus_id}}"> {{$model->campus}} </option>
@endif
</select>
</div>
</div>
<div class="col-sm-6">
<div class="mb-3">
<label for="curso_id"> CURSO </label>
<select name="curso_id" id="curso_id" class="form-select"></select>
<select name="curso_id" id="curso_id" class="form-select">
@if($model->curso_id)
<option value="{{$model->curso_id}}"> {{$model->curso}} </option>
@endif
</select>
</div>
</div>
......@@ -26,21 +36,29 @@
<div class="col-sm-12">
<div class="mb-3">
<label for="semestre">PLANO DE ATIVIDADE DOCENTE - ANO</label>
<select name="semestre" id="semestre" class="form-select"></select>
<select name="semestre" id="semestre" class="form-select">
@foreach($semestres as $id => $text)
@if($id == $model->semestre)
<option selected value="{{$id}}">{{$text}}</option>
@else
<option value="{{$id}}">{{$text}}</option>
@endif
@endforeach
</select>
</div>
</div>
<div class="col-sm-8">
<div class="mb-3">
<label for="docente"> DOCENTE </label>
<input type="text" id="docente" class="form-control" value="" disabled>
<input type="text" id="docente" class="form-control" value="{{$userPad->user}}" disabled>
</div>
</div>
<div class="col-sm-4">
<div class="mb-3">
<label for="docente"> CPF </label>
<input type="text" id="document" class="form-control" value="" disabled>
<input type="text" id="document" class="form-control" value="{{$userPad->user->document}}" disabled>
</div>
</div>
......@@ -54,21 +72,29 @@
<div class="col-sm-4">
<div class="mb-3">
<label for="carga_horaria"> CARGA HORÁRIA </label>
<input type="text" id="carga_horaria" name="carga_horaria" class="form-control" value="">
<input type="text" id="carga_horaria" name="carga_horaria" class="form-control" value="{{$model->carga_horaria}}" placeholder="HH:MM">
</div>
</div>
<div class="col-sm-4">
<div class="mb-3">
<label for="semestre"> CATEGORIA / NÍVEL </label>
<select name="categoria_nivel" id="categoria_nivel" class="form-select"></select>
<label for="categoria_nivel"> CATEGORIA / NÍVEL </label>
<input type="text" name="categoria_nivel" id="categoria_nivel" class="form-control" value="{{$model->categoria_nivel}}">
</div>
</div>
<div class="col-sm-4">
<div class="mb-3">
<label for="afastamento_total"> AFASTAMENTO TOTAL </label>
<select name="afastamento_total" id="afastamento_total" class="form-select"></select>
<select name="afastamento_total" id="afastamento_total" class="form-select">
@foreach($yesOrNo as $id => $text)
@if($id == $model->afastamento_total)
<option selected value="{{$id}}">{{$text}}</option>
@else
<option value="{{$id}}">{{$text}}</option>
@endif
@endforeach
</select>
</div>
</div>
......@@ -84,7 +110,15 @@
<div class="col-sm-4">
<div class="mb-3">
<label for="afastamento_parcial"> AFASTAMENTO PARCIAL </label>
<select name="afastamento_parcial" id="afastamento_parcial" class="form-select"></select>
<select name="afastamento_parcial" id="afastamento_parcial" class="form-select">
@foreach($yesOrNo as $id => $text)
@if($id == $model->afastamento_parcial)
<option selected value="{{$id}}">{{$text}}</option>
@else
<option value="{{$id}}">{{$text}}</option>
@endif
@endforeach
</select>
</div>
</div>
......@@ -100,7 +134,15 @@
<div class="col-sm-4">
<div class="mb-3">
<label for="direcao_sindical"> EXERCE FUNÇÃO ADMINISTRATIVA </label>
<select name="direcao_sindical" id="direcao_sindical" class="form-select"></select>
<select name="direcao_sindical" id="direcao_sindical" class="form-select">
@foreach($yesOrNo as $id => $text)
@if($id == $model->direcao_sindical)
<option selected value="{{$id}}">{{$text}}</option>
@else
<option value="{{$id}}">{{$text}}</option>
@endif
@endforeach
</select>
</div>
</div>
......@@ -145,7 +187,7 @@
$('#document').mask('###.###.###-##')
$('#carga_horaria').mask('000:00');
$('#carga_horaria').mask('00:00');
//Config : select2
......@@ -183,9 +225,4 @@
allowClear: true
})
$('#afastamento_total').on('change', () =>
{
}).change()
</script>
\ No newline at end of file
......@@ -30,7 +30,7 @@
<div>
@include('pad.anexo._form', [
'route' => route('update_anexo', ['user_pad_id' => 'null'])
'route' => route('update_anexo', ['user_pad_id' => $user_pad_id])
])
</div>
</div>
......
......@@ -51,7 +51,7 @@
])
</div>
<div class="mb-3 col-sm-8">
<div class="mb-3 col-sm-12">
<label class="form-label" for="titulo_projeto">Título do Projeto</label>
<input class="form-control @error('titulo_projeto') is-invalid @enderror ajax-errors" type="text" name="titulo_projeto" id="titulo_projeto" value="{{ old('titulo_projeto') }}">
......@@ -60,24 +60,6 @@
])
</div>
<div class="mb-3 col-sm-4">
<label class="form-label" for="funcao">Função</label>
<select class="form-select @error('funcao') is-invalid @enderror ajax-errors" name="funcao" id="funcao" value="{{ old('funcao') }}">
<option value="0">Selecione uma Função</option>
@foreach($funcoes as $value => $funcao)
@if( $value == old('funcao') )
<option selected value="{{$value}}">{{$funcao}}</option>
@else
<option value="{{$value}}">{{$funcao}}</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'funcao_create'
])
</div>
<div class="mb-3 col-sm-8">
<label class="form-label" for="cod_dimensao">Resolução</label>
<select class="form-select @error('cod_dimensao') is-invalid @enderror ajax-errors" name="cod_dimensao" id="cod_dimensao" value="{{ old('cod_dimensao') }}">
......@@ -136,7 +118,6 @@
<th scope="col"> Cód </th>
<th scope="col"> Programa de Extensão </th>
<th scope="col"> Título do Projeto </th>
<th scope="col"> Função </th>
<th scope="col"> CH Semanal </th>
<th scope="col"> Opções </th>
</tr>
......@@ -148,7 +129,6 @@
<td>{{ $atividade->cod_atividade }}</td>
<td>{{ $atividade->programa_extensao }}</td>
<td>{{ $atividade->titulo_projeto }}</td>
<td>{{ $atividade->funcaoAsString() }}</td>
<td>{{ $atividade->ch_semanal }}</td>
<td>
<div class="btn-group" role="group">
......
......@@ -23,7 +23,7 @@
])
</div>
<div class="mb-3 col-sm-8">
<div class="mb-3 col-sm-12">
<label class="form-label" for="titulo_projeto">Título do Projeto</label>
<input class="form-control @error('titulo_projeto') is-invalid @enderror ajax-errors" type="text" name="titulo_projeto" id="titulo_projeto" value="{{ $model->titulo_projeto }}">
......@@ -32,24 +32,6 @@
])
</div>
<div class="mb-3 col-sm-4">
<label class="form-label" for="funcao">Função</label>
<select class="form-select @error('funcao') is-invalid @enderror ajax-errors" name="funcao" id="funcao">
<option value="0">Selecione uma Função</option>
@foreach($funcoes as $value => $funcao)
@if( $value == $model->funcao )
<option selected value="{{$value}}">{{$funcao}}</option>
@else
<option value="{{$value}}">{{$funcao}}</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'funcao_update'
])
</div>
<div class="mb-3 col-sm-8">
<label class="form-label" for="cod_dimensao">Resolução</label>
<select class="form-select @error('cod_dimensao') is-invalid @enderror ajax-errors" name="cod_dimensao" id="cod_dimensao" value="{{ old('cod_dimensao') }}">
......
......@@ -51,7 +51,7 @@
])
</div>
<div class="mb-3 col-sm-8">
<div class="mb-3 col-sm-12">
<label class="form-label" for="discente">Nome do Orientando</label>
<input class="form-control @error('discente') is-invalid @enderror ajax-errors" type="text" name="discente" id="discente" value="{{ old('discente') }}">
......@@ -60,24 +60,6 @@
])
</div>
<div class="mb-3 col-sm-4">
<label class="form-label" for="funcao">Função</label>
<select class="form-select @error('funcao') is-invalid @enderror ajax-errors" name="funcao" id="funcao" value="{{ old('funcao') }}">
<option value="0">Selecione uma Função</option>
@foreach($funcoes as $value => $funcao)
@if( $value == old('funcao') )
<option selected value="{{$value}}">{{$funcao}}</option>
@else
<option value="{{$value}}">{{$funcao}}</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'funcao_create'
])
</div>
<div class="mb-3 col-sm-8">
<label class="form-label" for="cod_dimensao">Resolução</label>
<select class="form-select @error('cod_dimensao') is-invalid @enderror ajax-errors" name="cod_dimensao" id="cod_dimensao" value="{{ old('cod_dimensao') }}">
......@@ -126,7 +108,6 @@
<th scope="col"> Cód </th>
<th scope="col"> Título do Projeto </th>
<th scope="col"> Nome do Orientando </th>
<th scope="col"> Função </th>
<th scope="col"> CH Semanal </th>
<th scope="col"> Opções </th>
</tr>
......@@ -138,7 +119,6 @@
<td>{{ $atividade->cod_atividade }}</td>
<td>{{ $atividade->titulo_projeto }}</td>
<td>{{ $atividade->discente }}</td>
<td>{{ $atividade->funcaoAsString() }}</td>
<td>{{ $atividade->ch_semanal }}</td>
<td>
<div class="btn-group" role="group">
......
......@@ -23,7 +23,7 @@
])
</div>
<div class="mb-3 col-sm-8">
<div class="mb-3 col-sm-12">
<label class="form-label" for="discente">Nome do Orientando</label>
<input class="form-control @error('discente') is-invalid @enderror ajax-errors" type="text" name="discente" id="discente" value="{{ $model->discente }}">
......@@ -31,24 +31,6 @@
'field' => 'discente_update'
])
</div>
<div class="mb-3 col-sm-4">
<label class="form-label" for="funcao">Função</label>
<select class="form-select @error('funcao') is-invalid @enderror ajax-errors" name="funcao" id="funcao">
<option value="0">Selecione uma Função</option>
@foreach($funcoes as $value => $funcao)
@if( $value == $model->funcao )
<option selected value="{{$value}}">{{$funcao}}</option>
@else
<option value="{{$value}}">{{$funcao}}</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'funcao_update'
])
</div>
<div class="mb-3 col-sm-8">
<label class="form-label" for="cod_dimensao">Resolução</label>
......
......@@ -73,14 +73,16 @@
</div>
</div>
{{-- <div class="card mx-2" style="width: 10rem;">
<div class="card mx-2" style="width: 10rem;">
<div class="card-body">
<h2 class="text-center"> <i class="bi bi-file-earmark-text-fill"></i> </h2>
<h3 class="text-center"> Anexo B </h3>
<a class="stretched-link" href="{{ route('edit_anexo', ['user_pad_id' => $user_pad_id]) }}" class="btn-pad-dimensao"></a>
</div>
</div> --}}
</div>
</div>
<div class="d-flex my-3">
<div class="card mx-2" style="width: 10rem;">
<div class="card-body bg-primary">
<h1 class="text-center"> <i class="bi bi-cloud-arrow-down-fill" style="color: #F1F1F1"></i> </h1>
......
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