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
72a7c211
Commit
72a7c211
authored
Jun 29, 2022
by
alissonalbuquerque
Browse files
refatoracao do pad: professor
parent
4b76c368
Changes
7
Hide whitespace changes
Inline
Side-by-side
app/Http/Controllers/PADController.php
View file @
72a7c211
...
...
@@ -29,9 +29,24 @@ class PadController extends Controller
return
view
(
'pad.admin.index'
,
[
'pads'
=>
$pads
]);
}
dd
(
'refatorar'
);
if
(
Auth
::
user
()
->
isTypeTeacher
())
{
$index_menu
=
1
;
$userPads
=
UserPad
::
find
()
->
whereUser
(
Auth
::
user
()
->
id
)
->
get
();
return
view
(
'pad.teacher.index'
,
[
'index_menu'
=>
$index_menu
,
'userPads'
=>
$userPads
]);
}
}
/**
* @param integer $id
* @return \Illuminate\Http\Response
*/
public
function
view
(
$id
)
{
return
view
(
'pad.teacher.view'
,
[
'id'
=>
$id
]);
}
/**
* Show the form for creating a new resource.
*
...
...
@@ -47,20 +62,19 @@ class PadController extends Controller
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
*/
public
function
store
(
Request
$request
)
{
$validated
=
$request
->
validate
([
'nome'
=>
[
'required'
,
'string'
,
'min:
5
'
,
'max:255'
],
'nome'
=>
[
'required'
,
'string'
,
'min:
6
'
,
'max:255'
],
'status'
=>
[
'required'
,
'integer'
],
'data_inicio'
=>
[
'required'
,
'date'
,
'before_or_equal:data_fim'
],
'data_fim'
=>
[
'required'
,
'date'
,
'after_or_equal:data_inicio'
],
],
[
'required'
=>
'O campo de :attribute é obrigatório'
,
'nome.min'
=>
'O campo de :attribute deve ter no mínimo
5
letras'
,
'nome.min'
=>
'O campo de :attribute deve ter no mínimo
6
letras'
,
'nome.max'
=>
'O campo de :attribute deve ter no máximo 255 letras'
,
'data_inicio.before_or_equal'
=>
'A :attribute deve ser uma data anterior ou igual a data de fim'
,
'data_fim.after_or_equal'
=>
'A :attribute deve ser uma data posterior ou igual a data de início'
,
...
...
@@ -148,27 +162,28 @@ class PadController extends Controller
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @param int
eger
$id
* @return \Illuminate\Http\Response
*/
public
function
update
(
Request
$request
,
$id
)
{
$validated
=
$request
->
validate
([
'nome'
=>
[
'required'
,
'string'
,
'min:
5
'
,
'max:255'
],
'nome'
=>
[
'required'
,
'string'
,
'min:
6
'
,
'max:255'
],
'status'
=>
[
'required'
,
'integer'
],
'data_inicio'
=>
[
'required'
,
'date'
,
'before_or_equal:data_fim'
],
'data_fim'
=>
[
'required'
,
'date'
,
'after_or_equal:data_inicio'
],
],
[
'required'
=>
'O campo de :attribute é obrigatório'
,
'nome.min'
=>
'O campo de :attribute deve ter no mínimo
5
letras'
,
'nome.min'
=>
'O campo de :attribute deve ter no mínimo
6
letras'
,
'nome.max'
=>
'O campo de :attribute deve ter no máximo 255 letras'
,
'data_inicio.before_or_equal'
=>
'A :attribute deve ser uma data anterior ou igual a data de fim'
,
'data_fim.after_or_equal'
=>
'A :attribute deve ser uma data posterior ou igual a data de início'
,
]);
if
(
$validated
)
{
$model
=
new
Pad
(
$request
->
all
());
$model
=
Pad
::
find
(
$id
);
$model
->
fill
(
$request
->
all
());
if
(
$model
->
save
())
{
return
redirect
()
->
route
(
'pad_index'
)
->
with
(
'success'
,
'PAD atualizado com sucesso!'
);
...
...
app/Models/UserPad.php
View file @
72a7c211
...
...
@@ -2,6 +2,7 @@
namespace
App\Models
;
use
App\Queries\UserPadQuery
;
use
Illuminate\Database\Eloquent\Factories\HasFactory
;
use
Illuminate\Database\Eloquent\Model
;
...
...
@@ -14,11 +15,15 @@ class UserPad extends Model
protected
$fillable
=
[
'user_id'
,
'pad_id'
];
public
function
user
()
{
$this
->
belongsTo
(
User
::
class
);
return
$this
->
belongsTo
(
User
::
class
);
}
public
function
pad
()
{
$this
->
belongsTo
(
PAD
::
class
);
return
$this
->
belongsTo
(
PAD
::
class
);
}
public
static
function
find
()
{
return
new
UserPadQuery
(
get_called_class
());
}
}
app/Queries/UserPadQuery.php
0 → 100644
View file @
72a7c211
<?php
namespace
App\Queries
;
use
App\Models\UserPad
;
class
UserPadQuery
{
private
$query
;
public
function
__construct
()
{
$this
->
query
=
UserPad
::
where
([]);
}
/**
* @param integer $id
* @return UserPadQuery|Builder
*/
public
function
whereId
(
$id
,
$expression
=
'='
)
{
$this
->
query
=
$this
->
query
->
where
(
'id'
,
$expression
,
$id
);
return
$this
->
query
;
}
/**
* @param integer $user_id
* @return UserPadQuery|Builder
*/
public
function
whereUser
(
$user_id
,
$expression
=
'='
)
{
$this
->
query
=
$this
->
query
->
where
(
'user_id'
,
$expression
,
$user_id
);
return
$this
->
query
;
}
/**
* @return Builder
*/
public
function
getQuery
()
{
return
$this
->
query
;
}
}
\ No newline at end of file
resources/views/pad/index.blade.php
deleted
100644 → 0
View file @
4b76c368
@
extends
(
'layouts.main'
)
@
section
(
'title'
,
'Unidade'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
'user'
=>
Auth
::
user
(),
])
@
endsection
@
section
(
'nav'
)
@
include
(
'layouts.navigation'
,
[
'index_menu'
=>
$index_menu
,
])
@
endsection
@
section
(
'body'
)
<
div
class
=
"content"
>
<
div
class
=
"header"
id
=
"bordcab"
>
<
h1
class
=
"titulo pt-4 pb-4 mb-3 border-bottom"
>
PLANO
DE
ATIVIDADES
DOCENTES
(
PAD
)
</
h1
>
<
p
class
=
"pb-4 mb-3 text-center text-muted align-items-center"
><
a
href
=
"{{ route('pad_anexo') }}"
>
ANEXO
B
</
a
>
</
p
>
<
p
class
=
"pb-4 mb-3 text-center text-muted align-items-center"
>
Insira
os
dados
correspondentes
nos
campos
exibidos
abaixo
</
p
>
</
div
>
</
div
>
<
div
class
=
"btn-toolbar"
role
=
"toolbar"
aria
-
label
=
"Toolbar with button groups"
>
<
div
class
=
"btn-group mr-2"
role
=
"group"
aria
-
label
=
"First group"
>
<
a
href
=
"{{ route('dimensao_ensino') }}"
class
=
"btn-pad-dimensao"
>
<
i
class
=
"bi bi-mortarboard-fill"
></
i
>
<
h2
>
ENSINO
</
h2
>
</
a
>
</
div
>
<
div
class
=
"btn-group"
role
=
"group"
aria
-
label
=
"Third group"
>
<
a
href
=
"{{ route('dimensao_pesquisa') }}"
class
=
"btn-pad-dimensao"
>
<
i
class
=
"bi bi-search"
></
i
>
<
h2
>
PESQUISA
</
h2
>
</
a
>
</
div
>
<
div
class
=
"btn-group mr-2"
role
=
"group"
aria
-
label
=
"Second group"
>
<
a
href
=
"{{ route('dimensao_extensao') }}"
class
=
"btn-pad-dimensao"
>
<
i
class
=
"bi bi-clipboard-data-fill"
></
i
>
<
h2
>
EXTENSÃO
</
h2
>
</
a
>
</
div
>
<
div
class
=
"btn-group"
role
=
"group"
aria
-
label
=
"Third group"
>
<
a
href
=
"{{ route('dimensao_gestao') }}"
class
=
"btn-pad-dimensao"
>
<
i
class
=
"bi bi-people-fill"
></
i
>
<
h2
>
GESTÃO
</
h2
>
</
a
>
</
div
>
</
div
>
@
endsection
resources/views/pad/teacher/index.blade.php
0 → 100644
View file @
72a7c211
@
extends
(
'layouts.main'
)
@
php
use
App\Models\Tabelas\Constants
;
@
endphp
@
section
(
'title'
,
'Unidade'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
'user'
=>
Auth
::
user
(),
])
@
endsection
@
section
(
'nav'
)
@
include
(
'layouts.navigation'
,
[
'index_menu'
=>
$index_menu
,
])
@
endsection
@
section
(
'body'
)
<
div
class
=
"d-flex"
>
@
foreach
(
$userPads
as
$userPad
)
<
div
class
=
"card mx-2"
style
=
"width: 12rem;"
>
<
div
class
=
"card-body"
>
@
if
(
$userPad
->
pad
->
status
===
Constants
::
STATUS_ATIVO
)
<
h1
class
=
"text-center"
>
<
i
class
=
"bi bi-book-half"
></
i
>
</
h1
>
@
else
<
h1
class
=
"text-center"
>
<
i
class
=
"bi bi-journal-bookmark-fill"
></
i
>
</
h1
>
@
endif
<
h5
class
=
"text-center"
>
PAD
:
{{
$userPad
->
pad
->
nome
}}
</
h4
>
<
h5
class
=
"text-center"
>
Status
:
{{
$userPad
->
pad
->
getStatusAsText
()
}}
</
h4
>
<
a
class
=
"stretched-link"
href
=
"{{ route('pad_view', ['id' =>
$userPad->pad_id
]) }}"
target
=
"_blank"
></
a
>
</
div
>
</
div
>
@
endforeach
</
div
>
@
endsection
resources/views/pad/teacher/view.blade.php
0 → 100644
View file @
72a7c211
<div
class=
"content"
>
<div
class=
"header"
id=
"bordcab"
>
<h1
class=
"titulo pt-4 pb-4 mb-3 border-bottom"
>
PLANO DE ATIVIDADES DOCENTES (PAD)
</h1>
<p
class=
"pb-4 mb-3 text-center text-muted align-items-center"
><a
href=
"{{ route('pad_anexo') }}"
>
ANEXO B
</a>
</p>
<p
class=
"pb-4 mb-3 text-center text-muted align-items-center"
>
Insira os dados correspondentes nos campos exibidos abaixo
</p>
</div>
</div>
<div
class=
"btn-toolbar"
role=
"toolbar"
aria-label=
"Toolbar with button groups"
>
<div
class=
"btn-group mr-2"
role=
"group"
aria-label=
"First group"
>
<a
href=
"{{ route('dimensao_ensino') }}"
class=
"btn-pad-dimensao"
>
<i
class=
"bi bi-mortarboard-fill"
></i>
<h2>
ENSINO
</h2>
</a>
</div>
<div
class=
"btn-group"
role=
"group"
aria-label=
"Third group"
>
<a
href=
"{{ route('dimensao_pesquisa') }}"
class=
"btn-pad-dimensao"
>
<i
class=
"bi bi-search"
></i>
<h2>
PESQUISA
</h2>
</a>
</div>
<div
class=
"btn-group mr-2"
role=
"group"
aria-label=
"Second group"
>
<a
href=
"{{ route('dimensao_extensao') }}"
class=
"btn-pad-dimensao"
>
<i
class=
"bi bi-clipboard-data-fill"
></i>
<h2>
EXTENSÃO
</h2>
</a>
</div>
<div
class=
"btn-group"
role=
"group"
aria-label=
"Third group"
>
<a
href=
"{{ route('dimensao_gestao') }}"
class=
"btn-pad-dimensao"
>
<i
class=
"bi bi-people-fill"
></i>
<h2>
GESTÃO
</h2>
</a>
</div>
</div>
\ No newline at end of file
routes/web.php
View file @
72a7c211
...
...
@@ -81,6 +81,19 @@ Route::prefix('/pad')->group(function () {
Route
::
delete
(
'/delete/{id}'
,
[
PadController
::
class
,
'delete'
])
->
name
(
'pad_delete'
);
});
Route
::
prefix
(
'/pad/professor'
)
->
group
(
function
()
{
Route
::
get
(
'/index'
,
[
PadController
::
class
,
'index'
])
->
name
(
'pad_index'
);
Route
::
get
(
'/view/{id}'
,
[
PadController
::
class
,
'view'
])
->
name
(
'pad_view'
);
Route
::
get
(
'/anexo'
,
[
PadController
::
class
,
'anexo'
])
->
name
(
'pad_anexo'
);
});
Route
::
prefix
(
'/pad/dimensao/'
)
->
group
(
function
()
{
Route
::
get
(
'/gestao'
,
[
GestaoController
::
class
,
'index'
])
->
name
(
'dimensao_gestao'
);
Route
::
get
(
'/ensino'
,
[
EnsinoController
::
class
,
'index'
])
->
name
(
'dimensao_ensino'
);
Route
::
get
(
'/pesquisa'
,
[
PesquisaController
::
class
,
'index'
])
->
name
(
'dimensao_pesquisa'
);
Route
::
get
(
'/extensao'
,
[
ExtensaoController
::
class
,
'index'
])
->
name
(
'dimensao_extensao'
);
});
Route
::
prefix
(
'/coordenador'
)
->
group
(
function
()
{
Route
::
get
(
'/index'
,
[
CoordenadorController
::
class
,
'index'
])
->
name
(
'coordenador_index'
);
Route
::
get
(
'/create'
,
[
CoordenadorController
::
class
,
'create'
])
->
name
(
'coordenador_create'
);
...
...
@@ -103,13 +116,6 @@ Route::prefix('/diretor')->group(function () {
Route
::
get
(
'/listar/unidade'
,
[
UnidadeController
::
class
,
'getAll'
])
->
name
(
'listar_unidades'
);
Route
::
get
(
'/list/campus/{unidade_id}'
,
[
CampusController
::
class
,
'findByUnidade'
])
->
name
(
'list_campus_by_unidade'
);
Route
::
prefix
(
'/pad/dimensao/'
)
->
group
(
function
()
{
Route
::
get
(
'/gestao'
,
[
GestaoController
::
class
,
'index'
])
->
name
(
'dimensao_gestao'
);
Route
::
get
(
'/ensino'
,
[
EnsinoController
::
class
,
'index'
])
->
name
(
'dimensao_ensino'
);
Route
::
get
(
'/pesquisa'
,
[
PesquisaController
::
class
,
'index'
])
->
name
(
'dimensao_pesquisa'
);
Route
::
get
(
'/extensao'
,
[
ExtensaoController
::
class
,
'index'
])
->
name
(
'dimensao_extensao'
);
});
Route
::
prefix
(
'/pad/dimensao/ensino'
)
->
group
(
function
()
{
Route
::
post
(
'/aulas/create'
,
[
EnsinoAulaController
::
class
,
'create'
])
->
name
(
'ensino_aula_create'
);
// Route::get('/ensino/aulas/update', [EnsinoAulaController::class, 'update'])->name('ensino_aula_update');
...
...
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