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
d887e59b
Commit
d887e59b
authored
Dec 16, 2022
by
alissonalbuquerque
Browse files
n
parent
fa51f632
Changes
6
Hide whitespace changes
Inline
Side-by-side
app/Imports/UsersImport.php
0 → 100644
View file @
d887e59b
<?php
namespace
App\Imports
;
use
App\Models\User
;
use
App\Models\Util\Status
;
use
Illuminate\Support\Facades\Hash
;
use
Maatwebsite\Excel\Concerns\ToModel
;
class
UsersImport
implements
ToModel
{
public
const
NAME
=
1
;
public
const
EMAIL
=
7
;
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public
function
model
(
array
$row
)
{
return
new
User
([
'name'
=>
$row
[
self
::
NAME
],
'email'
=>
$row
[
self
::
EMAIL
],
'status'
=>
Status
::
ATIVO
,
'password'
=>
Hash
::
make
(
'12345678'
)
]);
}
}
resources/views/users/_form.blade.php
0 → 100644
View file @
d887e59b
<!-- Tabs -->
<div>
<ul
class=
"nav nav-tabs"
>
<li
class=
"nav-item"
role=
"presentation"
>
<button
class=
"nav-link active"
id=
"user-tab"
data-bs-toggle=
"tab"
data-bs-target=
"#user-container"
type=
"button"
role=
"tab"
aria-controls=
"user-container"
arial-selected=
"true"
>
Usuário
</button>
</li>
@if( $model->exists )
<li
class=
"nav-item"
role=
"presentation"
>
<button
class=
"nav-link"
id=
"paper-tab"
data-bs-toggle=
"tab"
data-bs-target=
"#paper-container"
type=
"button"
role=
"tab"
aria-controls=
"paper-container"
arial-selected=
"false"
>
Papeis
</button>
</li>
@endif
</ul>
</div>
<!-- Panels -->
<div
id=
"tab-containers"
class=
"tab-content"
>
<div
id=
"user-container"
class=
"tab-pane fade show active"
role=
"tabpanel"
aria-labelledby=
"user-tab"
>
<div
class=
"border border-rounded mt-2 p-2"
>
<div
class=
"row"
>
@csrf
<div
class=
"mb-4 col-12"
>
<div
class=
"form-group"
>
<label
class=
"form-label"
for=
"name"
>
Nome
</label>
<input
type=
"text"
name=
"name"
id=
"name"
class=
"form-control @error('name') is-invalid @enderror"
placeholder=
"Nome"
value=
"{{ $model->exists ? $model->name : old('name') }}"
>
@include('components.divs.errors', ['field' => 'name'])
</div>
</div>
<div
class=
"mb-4 col-12"
>
<div
class=
"form-group"
>
<label
class=
"form-label"
for=
"email"
>
E-Mail
</label>
<input
type=
"text"
name=
"email"
id=
"email"
class=
"form-control @error('email') is-invalid @enderror"
placeholder=
"E-Mail"
value=
"{{ $model->exists ? $model->email : old('email') }}"
>
@include('components.divs.errors', ['field' => 'email'])
</div>
</div>
@if( $model->exists )
<div
class=
"mb-4 col-12"
>
<div
class=
"form-group"
>
<label
class=
"form-label"
for=
"status"
>
Status
</label>
<select
class=
"form-select"
name=
"status"
id=
"status"
>
@foreach($status as $value => $text)
@if($model->status == $value)
<option
value=
"{{ $value }}"
selected
>
{{ $text }}
</option>
@else
<option
value=
"{{ $value }}"
>
{{ $text }}
</option>
@endif
@endforeach
</select>
</div>
</div>
@endif
@if( $model->exists )
<div
class=
"mb-4 col-6"
>
<div
class=
"form-group"
>
<label
class=
"form-label"
for=
"curso_id"
>
Curso
</label>
<select
class=
"form-select"
name=
"curso_id"
id=
"curso_id"
>
<option
value=
""
disabled
selected
hidden
>
Selecione...
</option>
@foreach([] as $option)
@endforeach
</select>
</div>
</div>
@endif
@if( $model->exists )
<div
class=
"mb-4 col-6"
>
<div
class=
"form-group"
>
<label
class=
"form-label"
for=
"campus_id"
>
Campus
</label>
<select
class=
"form-select"
name=
"campus_id"
id=
"campus_id"
>
<option
value=
""
disabled
selected
hidden
>
Selecione...
</option>
@foreach([] as $option)
@endforeach
</select>
</div>
</div>
@endif
</div>
</div>
</div>
@if( $model->exists )
<div
id=
"paper-container"
class=
"tab-pane fade"
role=
"tabpanel"
aria-labelledby=
"paper-tab"
>
<div
class=
"border border-rounded mt-2 p-2"
>
<div
class=
"row"
>
</div>
</div>
</div>
@endif
<div
class=
"mt-1 text-end"
>
<div
class=
"modal-footer"
>
@if( !$model->exists )
@include('components.buttons.btn-save', ['content' => 'Cadastrar'])
@endif
@if( $model->exists )
@include('components.buttons.btn-save', ['content' => 'Atualizar'])
@endif
@include('components.buttons.btn-cancel', ['content' => 'Cancelar', 'route' => route('user_index')])
</div>
</div>
</div>
resources/views/users/create.blade.php
0 → 100644
View file @
d887e59b
@
extends
(
'layouts.main'
)
@
section
(
'title'
,
'Usuários'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
'user'
=>
Auth
::
user
(),
])
@
endsection
@
section
(
'nav'
)
@
include
(
'layouts.navigation'
,
[
'index_menu'
=>
$menu
,
])
@
endsection
@
section
(
'body'
)
<
div
class
=
"container"
>
@
include
(
'components.alerts'
)
<
div
class
=
"mb-3"
>
<
h3
class
=
"h4"
>
Cadastrar
-
Usuário
</
h3
>
</
div
>
<
form
action
=
"
{
{route('user_store')}
}
"
method
=
"POST"
>
@
include
(
'users._form'
,
[
'model'
=>
$model
])
</
form
>
</
div
>
@
endsection
\ No newline at end of file
resources/views/users/importView.blade.php
0 → 100644
View file @
d887e59b
<!doctype html>
<html
lang=
"en"
>
<head>
<meta
charset=
"utf-8"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1, shrink-to-fit=no"
>
<link
rel=
"stylesheet"
href=
"https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"
>
<title>
Laravel File Upload
</title>
<style>
.container
{
max-width
:
500px
;
}
dl
,
ol
,
ul
{
margin
:
0
;
padding
:
0
;
list-style
:
none
;
}
</style>
</head>
<body>
<div
class=
"container mt-5"
>
<form
action=
"{{route('user_import')}}"
method=
"post"
enctype=
"multipart/form-data"
>
<h3
class=
"text-center mb-5"
>
Importar Professores - Dev In Test
</h3>
@csrf
@if ($message = Session::get('success'))
<div
class=
"alert alert-success"
>
<strong>
{{ $message }}
</strong>
</div>
@endif
@if (count($errors) > 0)
<div
class=
"alert alert-danger"
>
<ul>
@foreach ($errors->all() as $error)
<li>
{{ $error }}
</li>
@endforeach
</ul>
</div>
@endif
<div
class=
"custom-file"
>
<input
type=
"file"
name=
"file"
class=
"custom-file-input"
id=
"chooseFile"
>
<label
class=
"custom-file-label"
for=
"chooseFile"
>
Select file
</label>
</div>
<button
type=
"submit"
name=
"submit"
class=
"btn btn-primary btn-block mt-4"
>
Upload Files
</button>
</form>
</div>
</body>
</html
\ No newline at end of file
resources/views/users/index.blade.php
0 → 100644
View file @
d887e59b
@
extends
(
'layouts.main'
)
@
section
(
'title'
,
'Usuários'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
'user'
=>
Auth
::
user
(),
])
@
endsection
@
section
(
'nav'
)
@
include
(
'layouts.navigation'
,
[
'menu'
=>
$menu
])
@
endsection
@
section
(
'body'
)
<
div
>
<
h3
class
=
"h3"
>
Usuários
</
h3
>
<
div
>
@
include
(
'components.alerts'
)
<
div
class
=
"d-flex justify-content-end mb-2"
>
@
include
(
'components.buttons.btn-create'
,
[
'id'
=>
'user_create'
,
'content'
=>
'Cadastrar'
,
'route'
=>
route
(
'user_create'
),
])
</
div
>
<
div
class
=
"border rounded px-4"
>
<
table
class
=
"table table-hover mt-4"
>
<
thead
>
<
tr
>
<
th
class
=
"w-50"
scole
=
"col"
>
Nome
</
th
>
<
th
class
=
"w-50"
scole
=
"col"
>
Email
</
th
>
<
th
scole
=
"col"
>
Opções
</
th
>
</
tr
>
</
thead
>
<
tbody
>
@
foreach
(
$users
as
$user
)
<
tr
>
<
td
>
{{
$user
->
name
}}
</
td
>
<
td
>
{{
$user
->
email
}}
</
td
>
<
td
>
<
div
class
=
"btn-group"
role
=
"group"
>
<
div
class
=
"me-1"
>
@
include
(
'components.buttons.btn-edit'
,
[
'route'
=>
route
(
'user_edit'
,
[
'id'
=>
$user
->
id
])
])
</
div
>
<
div
class
=
"me-1"
>
@
include
(
'components.buttons.btn-delete'
,
[
'id'
=>
$user
->
id
,
'route'
=>
route
(
'user_delete'
,
[
'id'
=>
$user
->
id
])
])
</
div
>
</
div
>
</
td
>
</
tr
>
@
endforeach
</
tbody
>
</
table
>
</
div
>
</
div
>
</
div
>
@
endsection
\ No newline at end of file
resources/views/users/update.blade.php
0 → 100644
View file @
d887e59b
@
extends
(
'layouts.main'
)
@
section
(
'title'
,
'Usuários'
)
@
section
(
'header'
)
@
include
(
'layouts.header'
,
[
'user'
=>
Auth
::
user
(),
])
@
endsection
@
section
(
'nav'
)
@
include
(
'layouts.navigation'
,
[
'index_menu'
=>
$menu
,
])
@
endsection
@
section
(
'body'
)
<
div
class
=
"container"
>
@
include
(
'components.alerts'
)
<
div
class
=
"mb-3"
>
<
h3
class
=
"h4"
>
Atualizar
-
Usuário
</
h3
>
</
div
>
<
form
action
=
"{{route('user_update', ['id' =>
$model->id
])}}"
method
=
"POST"
>
@
include
(
'users._form'
,
[
'model'
=>
$model
,
'status'
=>
$status
,
])
</
form
>
</
div
>
@
endsection
\ 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