Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Walter Felipe
pad-upe
Commits
52ec4090
Commit
52ec4090
authored
Sep 18, 2022
by
alissonalbuquerque
Browse files
add crud de EnsinoSupervisao
parent
3ab8484b
Changes
6
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/Dimensao/Tabelas/Ensino/EnsinoSupervisaoController.php
View file @
52ec4090
...
...
@@ -75,6 +75,8 @@ class EnsinoSupervisaoController extends Controller
*/
public
function
create
(
Request
$request
)
{
$ch_semanal_temp
=
$request
->
ch_semanal
;
if
(
$request
->
cod_dimensao
)
{
$planejamento
=
Planejamento
::
initQuery
()
->
whereCodDimensao
(
$request
->
cod_dimensao
)
->
first
();
...
...
@@ -82,10 +84,12 @@ class EnsinoSupervisaoController extends Controller
$ch_min
=
$planejamento
->
ch_semanal
;
$ch_max
=
$planejamento
->
ch_maxima
;
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
);
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
,
[
'field'
=>
'Qtd. Participantes'
,
'value'
=>
$request
->
numero_orientandos
]);
$request
->
merge
([
'ch_semanal'
=>
$request
->
ch_semanal
*
(
$request
->
numero_orientandos
??
1
)]);
$validator
=
Validator
::
make
(
$request
->
all
(),
$request
->
all
(),
array_merge
(
EnsinoSupervisao
::
rules
(),
$cargaHoraria
->
rules
()),
array_merge
(
EnsinoSupervisao
::
messages
(),
$cargaHoraria
->
messages
())
);
...
...
@@ -99,6 +103,7 @@ class EnsinoSupervisaoController extends Controller
if
(
$validator
->
fails
())
{
$request
->
merge
([
'ch_semanal'
=>
$ch_semanal_temp
]);
return
redirect
()
->
route
(
'ensino_supervisao_index'
,
[
'user_pad_id'
=>
$request
->
user_pad_id
,])
->
withErrors
(
$validator
)
...
...
@@ -106,6 +111,7 @@ class EnsinoSupervisaoController extends Controller
}
$user_pad_id
=
$request
->
user_pad_id
;
$request
->
merge
([
'ch_semanal'
=>
$ch_semanal_temp
]);
$model
=
new
EnsinoSupervisao
(
$request
->
all
());
$model
->
dimensao
=
Dimensao
::
ENSINO
;
...
...
@@ -137,7 +143,11 @@ class EnsinoSupervisaoController extends Controller
}
public
function
update
(
$id
,
Request
$request
)
{
{
$model
=
EnsinoSupervisao
::
find
(
$id
);
$ch_semanal_temp
=
$request
->
ch_semanal
;
if
(
$request
->
cod_dimensao
)
{
$planejamento
=
Planejamento
::
initQuery
()
->
whereCodDimensao
(
$request
->
cod_dimensao
)
->
first
();
...
...
@@ -145,10 +155,12 @@ class EnsinoSupervisaoController extends Controller
$ch_min
=
$planejamento
->
ch_semanal
;
$ch_max
=
$planejamento
->
ch_maxima
;
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
);
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
,
[
'field'
=>
'Qtd. Participantes'
,
'value'
=>
$request
->
numero_orientandos
]);
$request
->
merge
([
'ch_semanal'
=>
$request
->
ch_semanal
*
(
$request
->
numero_orientandos
??
1
)]);
$validator
=
Validator
::
make
(
$request
->
all
(),
$request
->
all
(),
array_merge
(
EnsinoSupervisao
::
rules
(),
$cargaHoraria
->
rules
()),
array_merge
(
EnsinoSupervisao
::
messages
(),
$cargaHoraria
->
messages
())
);
...
...
@@ -160,9 +172,6 @@ class EnsinoSupervisaoController extends Controller
);
}
$model
=
EnsinoSupervisao
::
find
(
$id
);
$model
->
fill
(
$request
->
all
());
$user_pad_id
=
$model
->
user_pad_id
;
if
(
$validator
->
fails
())
...
...
@@ -172,6 +181,9 @@ class EnsinoSupervisaoController extends Controller
->
with
(
'fail'
,
'Erro ao atualizar Atividade!'
);
}
$request
->
merge
([
'ch_semanal'
=>
$ch_semanal_temp
]);
$model
->
fill
(
$request
->
all
());
if
(
$model
->
save
())
{
return
redirect
()
->
route
(
'ensino_supervisao_index'
,
[
'user_pad_id'
=>
$user_pad_id
])
->
with
(
'success'
,
'Atualizado com sucesso!'
);
...
...
@@ -211,6 +223,8 @@ class EnsinoSupervisaoController extends Controller
public
function
ajaxValidation
(
Request
$request
)
{
$ch_semanal_temp
=
$request
->
ch_semanal
;
if
(
$request
->
cod_dimensao
)
{
$planejamento
=
Planejamento
::
initQuery
()
->
whereCodDimensao
(
$request
->
cod_dimensao
)
->
first
();
...
...
@@ -218,10 +232,12 @@ class EnsinoSupervisaoController extends Controller
$ch_min
=
$planejamento
->
ch_semanal
;
$ch_max
=
$planejamento
->
ch_maxima
;
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
);
$cargaHoraria
=
new
CargaHorariaValidation
(
$ch_min
,
$ch_max
,
[
'field'
=>
'Qtd. Participantes'
,
'value'
=>
$request
->
numero_orientandos
]);
$request
->
merge
([
'ch_semanal'
=>
$request
->
ch_semanal
*
(
$request
->
numero_orientandos
??
1
)]);
$validator
=
Validator
::
make
(
$request
->
all
(),
$request
->
all
(),
array_merge
(
EnsinoSupervisao
::
rules
(),
$cargaHoraria
->
rules
()),
array_merge
(
EnsinoSupervisao
::
messages
(),
$cargaHoraria
->
messages
())
);
...
...
@@ -234,6 +250,7 @@ class EnsinoSupervisaoController extends Controller
}
if
(
$validator
->
passes
())
{
$request
->
merge
([
'ch_semanal'
=>
$ch_semanal_temp
]);
return
Response
::
json
([
'message'
=>
true
,
'status'
=>
200
]);
}
...
...
app/Models/Tabelas/Ensino/EnsinoSupervisao.php
View file @
52ec4090
...
...
@@ -16,7 +16,7 @@ class EnsinoSupervisao extends Model
*
* @var string
*/
protected
$table
=
'ensino_
orientacoes
'
;
protected
$table
=
'ensino_
supervisao
'
;
/**
* The attributes that are mass assignable.
...
...
@@ -25,6 +25,24 @@ class EnsinoSupervisao extends Model
*/
protected
$fillable
=
[
'orientacao_id'
,
'cod_dimensao'
,
'user_pad_id'
,
'dimensao'
,
'cod_atividade'
,
'atividade'
,
'curso'
,
'nivel'
,
'type_supervisao'
,
'numero_orientandos'
,
'ch_semanal'
];
/** @return string */
public
function
nivelAsString
()
{
return
Nivel
::
listNivel
(
$this
->
nivel
);
}
/** @return string */
public
function
supervisaoAsString
()
{
return
Supervisao
::
listSupervisao
(
$this
->
type_supervisao
);
}
/** @return string */
public
function
chSemanal
()
{
return
sprintf
(
'%s (x%s)'
,
$this
->
ch_semanal
,
$this
->
numero_orientandos
);
}
/**
* @return array
*/
...
...
@@ -35,8 +53,8 @@ class EnsinoSupervisao extends Model
'atividade'
=>
[
'required'
,
'string'
,
'max:255'
],
'curso'
=>
[
'required'
,
'string'
,
'max:255'
],
'nivel'
=>
[
'required'
,
'integer'
,
Rule
::
in
(
array_keys
(
Nivel
::
listNivel
()))],
'type_
orientac
ao'
=>
[
'required'
,
'integer'
,
Rule
::
in
(
array_keys
(
Supervisao
::
listSupervisao
()))],
'numero_orientandos'
=>
[
'
integer
'
],
'type_
supervis
ao'
=>
[
'required'
,
'integer'
,
Rule
::
in
(
array_keys
(
Supervisao
::
listSupervisao
()))],
'numero_orientandos'
=>
[
'
required'
,
'integer'
,
'min:1
'
],
'cod_dimensao'
=>
[
'required'
,
'string'
,
Rule
::
in
(
array_keys
(
self
::
listPlanejamentos
()))],
];
}
...
...
@@ -67,7 +85,9 @@ class EnsinoSupervisao extends Model
'type_supervisao.integer'
=>
'O campo "Supervisão" deve cónter um inteiro!'
,
//'numero_orientandos'
'numero_orientandos'
=>
'O campo "Número de Orientandos" deve cónter um inteiro!'
,
'numero_orientandos.required'
=>
'O campo "Qtd. Participantes" é obrigatório!'
,
'numero_orientandos.integer'
=>
'O campo "Qtd. Participantes" deve cónter um inteiro!'
,
'numero_orientandos.min'
=>
'O valor minímo de "Qtd. Participantes" é 1 (um) participante'
,
//'cod_dimensao'
'cod_dimensao.required'
=>
'O campo "Resolução" é obrigatório'
,
...
...
resources/views/pad/components/templates/dimensao/ensino/orientacao/numero_orientandos.blade.php
View file @
52ec4090
{{
--
@
include
(
'pad.components.templates.dimensao.ensino.orientacao.numero_orientandos'
,
[
'form_id'
=
''
])
@
include
(
'pad.components.templates.dimensao.ensino.orientacao.numero_orientandos'
,
[
'form_id'
=
>
''
])
--
}}
@
php
...
...
resources/views/pad/components/templates/dimensao/ensino/supervisao/form_create.blade.php
View file @
52ec4090
...
...
@@ -29,7 +29,7 @@
'btn_class'
=>
'show_resolucao'
,
])
</
div
>
<
form
action
=
"
{
{route('ensino_supervisao_create')}
}
"
method
=
"post"
id
=
"ensino_supervisao-form"
class
=
""
>
<
form
action
=
"
{
{route('ensino_supervisao_create')}
}
"
method
=
"post"
id
=
"ensino_supervisao-form"
>
@
csrf
...
...
@@ -37,11 +37,101 @@
<
input
type
=
"hidden"
id
=
"user_pad_id"
name
=
"user_pad_id"
value
=
"
{
{$user_pad_id}
}
"
>
<
div
class
=
"mb-3 col-sm-
2
"
>
<
div
class
=
"mb-3 col-sm-
3
"
>
<
label
class
=
"form-label"
for
=
"cod_atividade"
>
Cód
.
Atividade
</
label
>
<
input
class
=
"form-control @error('cod_atividade') is-invalid @enderror ajax-errors"
type
=
"text"
name
=
"cod_atividade"
id
=
"cod_atividade"
readonly
>
</
div
>
<
div
class
=
"mb-3 col-sm-9"
>
<
label
class
=
"form-label"
for
=
"atividade"
>
Atividade
:
Supervisão
/
Preceptoria
/
Tutoria
" é obrigatório!</label>
<input class="
form
-
control
@
error
(
'atividade'
)
is
-
invalid
@
enderror
ajax
-
errors
" type="
text
" name="
atividade
" id="
atividade
" value="
{{
old
(
'atividade'
)
}}
">
@include('components.divs.errors', [
'field' => 'atividade_create',
])
</div>
<div class="
mb
-
3
col
-
sm
-
12
">
<label class="
form
-
label
" for="
curso
">Curso</label>
<input class="
form
-
control
@
error
(
'curso'
)
is
-
invalid
@
enderror
ajax
-
errors
" type="
text
" name="
curso
" id="
curso
" value="
{{
old
(
'curso'
)
}}
">
@include('components.divs.errors', [
'field' => 'curso_create'
])
</div>
<div class="
mb
-
3
col
-
sm
-
4
">
<label class="
form
-
label
" for="
nivel
">Nível</label>
<select class="
form
-
select
@
error
(
'nivel'
)
is
-
invalid
@
enderror
ajax
-
errors
" name="
nivel
" id="
nivel
" value="
{{
old
(
'nivel'
)
}}
">
<option value="
0
">Selecione um Nível</option>
@foreach(
$niveis
as
$value
=>
$nivel
)
@if(
$value
== old('nivel') )
<option selected value="
{{
$value
}}
">
{
{$nivel}
}
</option>
@else
<option value="
{{
$value
}}
">
{
{$nivel}
}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'nivel_create'
])
</div>
<div class="
mb
-
3
col
-
sm
-
4
">
<label class="
form
-
label
" for="
type_supervisao
">Orientação</label>
<select class="
form
-
select
@
error
(
'type_supervisao'
)
is
-
invalid
@
enderror
ajax
-
errors
" name="
type_supervisao
" id="
type_supervisao
" value="
{{
old
(
'type_supervisao'
)
}}
">
<option value="
0
">Selecione uma Modalidade</option>
@foreach(
$supervisoes
as
$value
=>
$supervisao
)
@if(
$value
== old('type_supervisao') )
<option selected value="
{{
$value
}}
">
{
{$supervisao}
}
</option>
@else
<option value="
{{
$value
}}
">
{
{$supervisao}
}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'type_supervisao_create'
])
</div>
<div class="
mb
-
3
col
-
sm
-
4
">
<label class="
form
-
label
" for="
numero_orientandos
">Qtd. Participantes</label>
<input class="
form
-
control
@
error
(
'numero_orientandos'
)
is
-
invalid
@
enderror
ajax
-
errors
" type="
number
" name="
numero_orientandos
" id="
numero_orientandos
" value="
{{
old
(
'numero_orientandos'
)
}}
">
@include('components.divs.errors', [
'field' => 'numero_orientandos_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'
)
}}
">
<option value="
0
">Selecione uma Resolução</option>
@foreach(
$planejamentos
as
$value
=>
$cod_dimensao
)
@if(
$value
== old('cod_dimensao') )
<option selected value="
{{
$value
}}
">
{
{$cod_dimensao}
}
</option>
@else
<option value="
{{
$value
}}
">
{
{$cod_dimensao}
}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'cod_dimensao_create'
])
</div>
<div class="
mb
-
3
col
-
sm
-
4
">
<label class="
form
-
label
" for="
ch_semanal
">CH. Semanal</label>
<input class="
form
-
control
@
error
(
'ch_semanal'
)
is
-
invalid
@
enderror
ajax
-
errors
" type="
number
" name="
ch_semanal
" id="
ch_semanal
" value="
{{
old
(
'ch_semanal'
)
}}
">
@include('components.divs.errors', [
'field' => 'ch_semanal_create'
])
</div>
</div>
<div class="
mt
-
1
text
-
end
">
...
...
@@ -59,8 +149,13 @@
<table class="
table
table
-
hover
" id="
ensino_supervisao
-
table
">
<thead>
<tr>
<!--
<
th
scole
=
"col"
>
#</th> -->
<th scope="
col
"> Cód </th>
<th scope="
col
"> Atividade </th>
<th scope="
col
"> Curso </th>
<th scope="
col
"> Nível </th>
<th scope="
col
"> Orientação </th>
<th scope="
col
"> CH Semanal </th>
<th scope="
col
"> Opções </th>
</tr>
</thead>
...
...
@@ -68,6 +163,11 @@
@foreach(
$atividades
as
$atividade
)
<tr>
<td>{{
$atividade->cod_atividade
}}</td>
<td>{{
$atividade->atividade
}}</td>
<td>{{
$atividade->curso
}}</td>
<td>{{
$atividade->nivelAsString
() }}</td>
<td>{{
$atividade->supervisaoAsString
() }}</td>
<td>{{
$atividade->chSemanal
() }}</td>
<td>
@include('components.buttons.btn-edit-task', [
'btn_class' => 'btn-edit_ensino_supervisao',
...
...
@@ -76,7 +176,7 @@
@include('components.buttons.btn-delete', [
'id' =>
$atividade->id
,
'route'
=>
route
(
'ensino_supervisao_delete'
,
[
'id'
=>
$
ensinoAula
->
id
])
'route' => route('ensino_supervisao_delete', ['id' =>
$
atividade
->id
])
])
</td>
</tr>
...
...
@@ -123,4 +223,6 @@
'route' => route('view_ensino_supervisao_resolucao'),
'btn_class' => 'show_resolucao',
])
@include('pad.components.templates.dimensao.ensino.supervisao.numero_orientandos', ['form_id' => 'ensino_supervisao-form'])
@endsection
resources/views/pad/components/templates/dimensao/ensino/supervisao/form_update.blade.php
View file @
52ec4090
...
...
@@ -9,11 +9,101 @@
<div
class=
"row"
>
<div
class=
"mb-3 col-sm-
2
"
>
<div
class=
"mb-3 col-sm-
3
"
>
<label
class=
"form-label"
for=
"cod_atividade"
>
Cód. Atividade
</label>
<input
class=
"form-control @error('cod_atividade') is-invalid @enderror ajax-errors"
type=
"text"
name=
"cod_atividade"
id=
"cod_atividade"
value=
"{{$model->cod_atividade}}"
readonly
>
</div>
<div
class=
"mb-3 col-sm-9"
>
<label
class=
"form-label"
for=
"atividade"
>
Atividade: Supervisão / Preceptoria / Tutoria" é obrigatório!
</label>
<input
class=
"form-control @error('atividade') is-invalid @enderror ajax-errors"
type=
"text"
name=
"atividade"
id=
"atividade"
value=
"{{ $model->atividade }}"
>
@include('components.divs.errors', [
'field' => 'atividade_update',
])
</div>
<div
class=
"mb-3 col-sm-12"
>
<label
class=
"form-label"
for=
"curso"
>
Curso
</label>
<input
class=
"form-control @error('curso') is-invalid @enderror ajax-errors"
type=
"text"
name=
"curso"
id=
"curso"
value=
"{{ $model->curso }}"
>
@include('components.divs.errors', [
'field' => 'curso_update'
])
</div>
<div
class=
"mb-3 col-sm-4"
>
<label
class=
"form-label"
for=
"nivel"
>
Nível
</label>
<select
class=
"form-select @error('nivel') is-invalid @enderror ajax-errors"
name=
"nivel"
id=
"nivel"
>
<option
value=
"0"
>
Selecione um Nível
</option>
@foreach($niveis as $value => $nivel)
@if( $value == $model->nivel )
<option
selected
value=
"{{$value}}"
>
{{$nivel}}
</option>
@else
<option
value=
"{{$value}}"
>
{{$nivel}}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'nivel_update'
])
</div>
<div
class=
"mb-3 col-sm-4"
>
<label
class=
"form-label"
for=
"type_supervisao"
>
Orientação
</label>
<select
class=
"form-select @error('type_supervisao') is-invalid @enderror ajax-errors"
name=
"type_supervisao"
id=
"type_supervisao"
>
<option
value=
"0"
>
Selecione uma Modalidade
</option>
@foreach($supervisoes as $value => $supervisao)
@if( $value == $model->type_supervisao )
<option
selected
value=
"{{$value}}"
>
{{$supervisao}}
</option>
@else
<option
value=
"{{$value}}"
>
{{$supervisao}}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'type_supervisao_update'
])
</div>
<div
class=
"mb-3 col-sm-4"
>
<label
class=
"form-label"
for=
"numero_orientandos"
>
Qtd. Participantes
</label>
<input
class=
"form-control @error('numero_orientandos') is-invalid @enderror ajax-errors"
type=
"number"
name=
"numero_orientandos"
id=
"numero_orientandos"
value=
"{{ $model->numero_orientandos }}"
>
@include('components.divs.errors', [
'field' => 'numero_orientandos_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"
>
<option
value=
"0"
>
Selecione uma Resolução
</option>
@foreach($planejamentos as $value => $cod_dimensao)
@if( $value == $model->cod_dimensao )
<option
selected
value=
"{{$value}}"
>
{{$cod_dimensao}}
</option>
@else
<option
value=
"{{$value}}"
>
{{$cod_dimensao}}
</option>
@endif
@endforeach
</select>
@include('components.divs.errors', [
'field' => 'cod_dimensao_update'
])
</div>
<div
class=
"mb-3 col-sm-4"
>
<label
class=
"form-label"
for=
"ch_semanal"
>
CH. Semanal
</label>
<input
class=
"form-control @error('ch_semanal') is-invalid @enderror ajax-errors"
type=
"number"
name=
"ch_semanal"
id=
"ch_semanal"
value=
"{{ $model->ch_semanal }}"
>
@include('components.divs.errors', [
'field' => 'ch_semanal_update'
])
</div>
</div>
<div
class=
"mt-1 text-end"
>
...
...
@@ -37,4 +127,6 @@
'form_id' => 'ensino_supervisao_update-form',
'form_type' => 'update',
'route' => route('ensino_supervisao_validate'),
])
\ No newline at end of file
])
@include('pad.components.templates.dimensao.ensino.supervisao.numero_orientandos', ['form_id' => 'ensino_supervisao_update-form'])
\ No newline at end of file
resources/views/pad/components/templates/dimensao/ensino/supervisao/numero_orientandos.blade.php
0 → 100644
View file @
52ec4090
{{
--
@
include
(
'pad.components.templates.dimensao.ensino.supervisao.numero_orientandos'
,
[
'form_id'
=>
''
])
--
}}
@
php
use
App\Models\Util\Supervisao
;
$supervisao_grupo
=
Supervisao
::
GRUPO
;
@
endphp
<
script
type
=
"text/javascript"
>
$
(
document
)
.
ready
(
function
()
{
$
(
'#{{$form_id}} #type_supervisao'
)
.
on
(
'change'
,
function
()
{
if
(
$
(
this
)
.
val
()
==
{{
$supervisao_grupo
}})
{
$
(
'#{{$form_id}} #numero_orientandos'
)
.
show
()
$
(
"#
{
{$form_id}
}
label[for='numero_orientandos']"
)
.
show
()
}
else
{
$
(
'#{{$form_id}} #numero_orientandos'
)
.
hide
()
$
(
"#
{
{$form_id}
}
label[for='numero_orientandos']"
)
.
hide
()
$
(
'#{{$form_id}} #numero_orientandos'
)
.
val
(
'1'
)
}
})
.
change
()
});
</
script
>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment