Commit bbf6f42a authored by alissonalbuquerque's avatar alissonalbuquerque
Browse files

add crud de gestao

parent dd34fdd7
......@@ -3,13 +3,11 @@
namespace App\Http\Controllers\Dimensao\Tabelas\Gestao;
use App\Http\Controllers\Controller;
use App\Models\Tabelas\Constants;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Response;
use Illuminate\Support\Facades\Validator;
use App\Models\Avaliacao;
use App\Models\Planejamento;
use App\Models\Tabelas\Gestao\GestaoMembroCamaras;
use App\Models\Tabelas\Gestao\GestaoOutros;
use App\Models\Util\Dimensao;
use App\Models\Util\Avaliacao as UtilAvaliacao;
......@@ -50,44 +48,44 @@ class GestaoOutrosController extends Controller
$validator = Validator::make(
$request->all(),
array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
array_merge(GestaoOutros::rules(), $cargaHoraria->rules()),
array_merge(GestaoOutros::messages(), $cargaHoraria->messages())
);
if($validator->fails())
{
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $request->user_pad_id,])
->route('gestao_outros_index', ['user_pad_id' => $request->user_pad_id,])
->withErrors($validator)
->withInput();
}
$user_pad_id = $request->user_pad_id;
$model = new GestaoMembroCamaras($request->all());
$model = new GestaoOutros($request->all());
$model->dimensao = Dimensao::GESTAO;
if($model->save())
{
$avaliacao = new Avaliacao([
'tarefa_id' => $model->id,
'type' => UtilAvaliacao::GESTAO_MEMBRO_CAMARAS,
'type' => UtilAvaliacao::GESTAO_OUTROS,
'status' => Status::PENDENTE,
]);
if(!$avaliacao->save())
{
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('fail', 'Erro ao cadastrar Atividade!');
}
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('success', 'Cadastro realizado com sucesso!');
} else {
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('fail', 'Erro ao cadastrar Atividade!');
}
}
......@@ -103,11 +101,11 @@ class GestaoOutrosController extends Controller
$validator = Validator::make(
$request->all(),
array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
array_merge(GestaoOutros::rules(), $cargaHoraria->rules()),
array_merge(GestaoOutros::messages(), $cargaHoraria->messages())
);
$model = GestaoMembroCamaras::find($id);
$model = GestaoOutros::find($id);
$model->fill($request->all());
$user_pad_id = $model->user_pad_id;
......@@ -115,31 +113,31 @@ class GestaoOutrosController extends Controller
if($validator->fails())
{
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('fail', 'Erro ao atualizar Atividade!');
}
if($model->save()) {
return redirect()->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
return redirect()->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('success', 'Atualizado com sucesso!');
} else {
return redirect()->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
return redirect()->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('fail', 'Erro ao atualizar a Atividade!');
}
}
public function edit($id)
{
$model = GestaoMembroCamaras::find($id);
$model = GestaoOutros::find($id);
return view('pad.components.templates.dimensao.gestao.membro_camaras.form_update', [
return view('pad.components.templates.dimensao.gestao.outros.form_update', [
'model' => $model,
]);
}
public function viewResolucao()
{
$resolucoes = GestaoMembroCamaras::getPlanejamentos();
$resolucoes = GestaoOutros::getPlanejamentos();
return view('pad.components.templates.resolucao', [
'resolucoes' => $resolucoes
]);
......@@ -147,24 +145,24 @@ class GestaoOutrosController extends Controller
public function delete($id)
{
$model = GestaoMembroCamaras::find($id);
$model = GestaoOutros::find($id);
$user_pad_id = $model->user_pad_id;
if($model->delete()) {
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('success', 'Atividade removida com Sucesso!');
} else {
return redirect()
->route('gestao_membro_camaras_index', ['user_pad_id' => $user_pad_id])
->route('gestao_outros_index', ['user_pad_id' => $user_pad_id])
->with('fail', 'Erro ao remover atividade!');
}
}
public function search($user_pad_id = null)
{
$query = GestaoMembroCamaras::initQuery();
$query = GestaoOutros::initQuery();
if($user_pad_id) {
$query->whereUserPad($user_pad_id)->orderBy('cod_atividade');
......@@ -184,8 +182,8 @@ class GestaoOutrosController extends Controller
$validator = Validator::make(
$request->all(),
array_merge(GestaoMembroCamaras::rules(), $cargaHoraria->rules()),
array_merge(GestaoMembroCamaras::messages(), $cargaHoraria->messages())
array_merge(GestaoOutros::rules(), $cargaHoraria->rules()),
array_merge(GestaoOutros::messages(), $cargaHoraria->messages())
);
if($validator->passes()) {
......
......@@ -20,7 +20,7 @@ class GestaoOutros extends Model
*
* @var array
*/
protected $fillable = ['orientacao_id', 'user_pad_id', 'cod_dimensao', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
protected $fillable = ['orientacao_id', 'user_pad_id', 'dimensao', 'cod_atividade', 'atividade', 'descricao', 'ch_semanal'];
public static function rules()
{
......
......@@ -20,7 +20,6 @@ class CreateGestaoOutroTable extends Migration
$table->string('cod_atividade')->notNull();
$table->string('atividade')->notNull();
$table->text('descricao')->notNull();
$table->string('cod_dimensao')->notNull();
$table->integer('ch_semanal')->notNull();
$table->timestamps();
$table->softDeletes();
......
@extends('layouts.main')
@section('title', 'Gestão')
@section('header')
@include('layouts.header', [
'user' => Auth::user(),
])
@endsection
@section('nav')
@include('layouts.navigation', [
'index_menu' => $index_menu,
])
@endsection
@section('body')
<div class="container">
@include('pad.components.templates.dropdown-eixo', ['divs' => $divs])
@include('components.alerts')
<div id="gestao_outros">
<div>
<div class="mb-3">
<h3 class="h3"> Gestão - Outros </h3>
@include('components.buttons.btn-show-resolucao', [
'content' => 'Resolução',
'btn_class' => 'show_resolucao',
])
</div>
<form action="{{route('gestao_outros_create')}}" method="post" id="gestao_outros-form">
@csrf
<div class="row">
<input type="hidden" id="user_pad_id" name="user_pad_id" value="{{$user_pad_id}}">
<div class="mb-3 col-sm-2">
<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-10">
<label class="form-label" for="atividade">Atividade ( Nome da Atividade Realizada )</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-">
<div class="form-group">
<textarea class="form-control @error('descricao') is-invalid @enderror ajax-errors" name="descricao" id="atividade" cols="30" rows="5" placeholder="Atividade: Informar/descrever a(s) atividade(s) desenvolvida(s)"></textarea>
</div>
@include('components.divs.errors', [
'field' => 'descricao_create'
])
</div>
<div class="d-flex justify-content-end">
<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>
<div class="mt-1 text-end">
@include('components.buttons.btn-save', [
'content' => 'Cadastrar',
'id' => 'btn-submit_gestao_outros'
])
</div>
</form>
</div>
<div class="border rounded px-4 mt-4">
<table class="table table-hover" id="gestao_outros-table-">
<thead>
<tr>
<!-- <th scole="col">#</th> -->
<th scope="col"> Cód </th>
<th scope="col"> Atividade </th>
<th scope="col"> Descrição </th>
<th scope="col"> CH Semanal </th>
<th scope="col"> Opções </th>
</tr>
</thead>
<tbody>
@foreach($atividades as $atividade)
<tr>
<td>{{ $atividade->cod_atividade }}</td>
<td>{{ $atividade->atividade }}</td>
<td>{{ $atividade->descricao }}</td>
<td>{{ $atividade->ch_semanal }}</td>
<td>
@include('components.buttons.btn-edit-task', [
'btn_class' => 'btn-edit_gestao_outros',
'btn_id' => $atividade->id,
])
@include('components.buttons.btn-delete', [
'id' => $atividade->id,
'route' => route('gestao_outros_delete', ['id' => $atividade->id])
])
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
@include('components.modal', [
'size' => 'modal-lg',
'header' => '',
])
</div>
@endsection
@section('scripts')
@include('pad.components.scripts.dropdown-eixo', ['divs' => $divs])
@include('pad.components.scripts.cod_atividade', [
'cod_atividade' => '24-',
'form_id' => 'gestao_outros-form',
'div_selected' => 'gestao_outros',
'route' => route('gestao_outros_search'),
])
@include('pad.components.scripts.ajaxValidation', [
'btn_submit_id' => 'btn-submit_gestao_outros',
'form_id' => 'gestao_outros-form',
'form_type' => 'create',
'route' => route('gestao_outros_validate'),
])
@include('pad.components.scripts.dimensao.ensino.show_modal', [
'modal_id' => 'modal',
'route' => route('view_gestao_outros_update'),
'btn_class' => 'btn-edit_gestao_outros',
])
@include('pad.components.scripts.dimensao.ensino.show_modal', [
'modal_id' => 'modal',
'route' => route('view_gestao_outros_resolucao'),
'btn_class' => 'show_resolucao',
])
@endsection
<div id="gestao_outros">
<div>
<div class="mb-3">
<h3 class="h3"> Gestão - Outros </h3>
</div>
<form action="{{route('gestao_outros_update', ['id' => $model->id])}}" method="post" id="gestao_outros_update-form">
@csrf
<div class="row">
<div class="mb-3 col-sm-2">
<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-10">
<label class="form-label" for="atividade">Atividade ( Nome da Atividade Realizada )</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-">
<div class="form-group">
<textarea class="form-control @error('descricao') is-invalid @enderror ajax-errors" name="descricao" id="atividade" cols="30" rows="5" placeholder="Atividade: Informar/descrever a(s) atividade(s) desenvolvida(s)">{{ $model->descricao }}</textarea>
</div>
@include('components.divs.errors', [
'field' => 'descricao_update'
])
</div>
<div class="d-flex justify-content-end">
<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>
<div class="mt-1 text-end">
<div class="modal-footer">
@include('components.buttons.btn-close_modal')
@include('components.buttons.btn-save', [
'id' => 'btn-submit_gestao_outros-update',
'content' => 'Atualizar',
])
</div>
</div>
</form>
</div>
</div>
@include('pad.components.scripts.ajaxValidation', [
'btn_submit_id' => 'btn-submit_gestao_outros-update',
'form_id' => 'gestao_outros_update-form',
'form_type' => 'update',
'route' => route('gestao_outros_validate'),
])
\ No newline at end of file
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