CRUD denuncias y detenidos
This commit is contained in:
parent
6b8bc4d16a
commit
cddfb046bd
81
app/Http/Controllers/denunciasController.php
Normal file
81
app/Http/Controllers/denunciasController.php
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use App\Models\denuncias;
|
||||
use App\Http\Requests\UpdatedDenunciasRequest;
|
||||
use App\Http\Requests\StoreDenunciasRequest;
|
||||
|
||||
|
||||
class denunciasController extends Controller
|
||||
{
|
||||
public function index(Request $request){
|
||||
|
||||
$denuncias = denuncias::withTrashed()-> get();
|
||||
|
||||
return view('denuncias.index', ['denuncias'=>$denuncias]);
|
||||
}
|
||||
public function show($id){
|
||||
$denuncias = denuncias::findOrfail($id);
|
||||
return view('denuncias.show', ["denuncias"=>$denuncias]);
|
||||
}
|
||||
|
||||
public function destroy(Request $request, $id){
|
||||
$denuncias = denuncias::findOrfail($id);
|
||||
$denuncias->delete();
|
||||
$request->session()->flash('mensaje-success', 'La denuncia fue eliminada.');
|
||||
return redirect('/denuncias');
|
||||
}
|
||||
|
||||
public function create(){
|
||||
return view('denuncias.new');
|
||||
}
|
||||
|
||||
public function store(StoreDenunciasRequest $request){
|
||||
|
||||
$denuncias = new denuncias();
|
||||
$denuncias->fill([
|
||||
'nombre_denunciante' => $request->input('nombre'),
|
||||
'apellido_denunciante' => $request->input('apellido'),
|
||||
'dni_denunciante' => $request->input('dni'),
|
||||
'fecha' => $request->input('fecha'),
|
||||
'tipo' => $request->input('tipo'),
|
||||
'descripcion' => $request->input('descripcion'),
|
||||
'lugar' => $request->input('lugar'),
|
||||
]);
|
||||
$denuncias->save();
|
||||
$request->session()->flash('mensaje-success', 'La denuncia fue guardada exitosamente.');
|
||||
return redirect('/denuncias');
|
||||
}
|
||||
|
||||
public function edit($id){
|
||||
$denuncias = denuncias::findOrfail($id);
|
||||
return view('denuncias.edit', ["denuncia"=>$denuncias]);
|
||||
}
|
||||
|
||||
public function update(UpdatedDenunciasRequest $request, $id){
|
||||
$denuncias = denuncias::findOrfail($id);
|
||||
$denuncias->fill([
|
||||
'nombre_denunciante' => $request->input('nombre'),
|
||||
'apellido_denunciante' => $request->input('apellido'),
|
||||
'dni_denunciante' => $request->input('dni'),
|
||||
'fecha' => $request->input('fecha'),
|
||||
'tipo' => $request->input('tipo'),
|
||||
'descripcion' => $request->input('descripcion'),
|
||||
'lugar' => $request->input('lugar'),
|
||||
]);
|
||||
$denuncias->update();
|
||||
$request->session()->flash('mensaje-success', 'Los datos fueron modificados.');
|
||||
return redirect('/denuncias');
|
||||
}
|
||||
|
||||
public function restaurar(Request $request, $id){
|
||||
$denuncias = denuncias::withTrashed()->findOrfail($id);
|
||||
$denuncias->restore();
|
||||
$request->session()->flash('mensaje-success', 'La denuncia fue restaurada.');
|
||||
return redirect('/denuncias');
|
||||
}
|
||||
}
|
||||
|
||||
63
app/Http/Controllers/detenidosController.php
Normal file
63
app/Http/Controllers/detenidosController.php
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use App\Models\detenidos;
|
||||
use App\Http\Requests\UpdatedDetenidosRequest;
|
||||
use App\Http\Requests\StoreDetenidosRequest;
|
||||
|
||||
|
||||
class detenidosController extends Controller
|
||||
{
|
||||
public function index(Request $request){
|
||||
|
||||
$detenidos = detenidos::get();
|
||||
|
||||
return view('detenidos.index', ['detenidos'=>$detenidos]);
|
||||
}
|
||||
public function show($id){
|
||||
$detenidos = detenidos::findOrfail($id);
|
||||
return view('detenidos.show', ["detenido"=>$detenido]);
|
||||
}
|
||||
|
||||
public function create(){
|
||||
return view('detenidos.new');
|
||||
}
|
||||
|
||||
public function store(StoreDetenidosRequest $request){
|
||||
|
||||
$detenidos = new detenidos();
|
||||
$detenidos->fill([
|
||||
'nombre' => $request->input('nombre'),
|
||||
'apellido' => $request->input('apellido'),
|
||||
'dni' => $request->input('dni'),
|
||||
'fecha_nacimiento' => $request->input('fecha_nacimiento'),
|
||||
'domicilio' => $request->input('domicilio'),
|
||||
]);
|
||||
$detenidos->save();
|
||||
$request->session()->flash('mensaje-success', 'Los datos fueron guardados exitosamente.');
|
||||
return redirect('/detenidos');
|
||||
}
|
||||
|
||||
public function edit($id){
|
||||
$detenidos = detenidos::findOrfail($id);
|
||||
return view('detenidos.edit', ["detenido"=>$detenidos]);
|
||||
}
|
||||
|
||||
public function update(UpdatedDetenidosRequest $request, $id){
|
||||
$detenidos = detenidos::findOrfail($id);
|
||||
$detenidos->fill([
|
||||
'nombre' => $request->input('nombre'),
|
||||
'apellido' => $request->input('apellido'),
|
||||
'dni' => $request->input('dni'),
|
||||
'fecha_nacimiento' => $request->input('fecha_nacimiento'),
|
||||
'domicilio' => $request->input('domicilio'),
|
||||
]);
|
||||
$detenidos->update();
|
||||
$request->session()->flash('mensaje-success', 'Los datos fueron modificados exitosamente.');
|
||||
return redirect('/detenidos');
|
||||
}
|
||||
}
|
||||
|
||||
63
app/Http/Requests/StoreDenunciasRequest.php
Normal file
63
app/Http/Requests/StoreDenunciasRequest.php
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreDenunciasRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'nombre' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'apellido' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'dni' => 'required|numeric|digits_between:7,8|unique:denuncias,dni_denunciante',
|
||||
'fecha' => 'required|date',
|
||||
'tipo' => 'required|max:100',
|
||||
'descripcion' => 'required|max:1000',
|
||||
'lugar' => 'required|max:100',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Mensajes personalizados de validación.
|
||||
*/
|
||||
public function messages(): array
|
||||
{
|
||||
return [
|
||||
'nombre.required' => 'El campo nombre es requerido',
|
||||
'nombre.regex' => 'El campo nombre sólo debe contener letras',
|
||||
|
||||
'apellido.required' => 'El campo apellido es requerido',
|
||||
'apellido.regex' => 'El campo apellido sólo debe contener letras',
|
||||
|
||||
'dni.required' => 'El campo DNI es requerido',
|
||||
'dni.numeric' => 'El campo DNI sólo admite números',
|
||||
'dni.digits_between' => 'El campo DNI debe tener entre 7 y 8 dígitos',
|
||||
'dni.unique' => 'El DNI ya se encuentra registrado en otra denuncia',
|
||||
|
||||
'fecha.required' => 'El campo fecha es requerido',
|
||||
'fecha.date' => 'La fecha ingresada no es válida',
|
||||
|
||||
'tipo.required' => 'El campo tipo es requerido',
|
||||
'tipo.max' => 'El tipo no puede superar los 100 caracteres',
|
||||
|
||||
'descripcion.required' => 'El campo descripción es requerido',
|
||||
'descripcion.max' => 'La descripción no puede superar los 1000 caracteres',
|
||||
|
||||
'lugar.required' => 'El campo lugar es requerido',
|
||||
'lugar.max' => 'El lugar no puede superar los 100 caracteres',
|
||||
];
|
||||
}
|
||||
}
|
||||
55
app/Http/Requests/StoreDetenidosRequest.php
Normal file
55
app/Http/Requests/StoreDetenidosRequest.php
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class StoreDetenidosRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'nombre' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'apellido' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'dni' => 'required|numeric|digits_between:7,8|unique:detenidos,dni',
|
||||
'fecha_nacimiento' => 'required|date',
|
||||
'domicilio' => 'required|max:150',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Mensajes personalizados de validación.
|
||||
*/
|
||||
public function messages(): array
|
||||
{
|
||||
return [
|
||||
'nombre.required' => 'El campo nombre es requerido',
|
||||
'nombre.regex' => 'El campo nombre sólo debe contener letras',
|
||||
|
||||
'apellido.required' => 'El campo apellido es requerido',
|
||||
'apellido.regex' => 'El campo apellido sólo debe contener letras',
|
||||
|
||||
'dni.required' => 'El campo DNI es requerido',
|
||||
'dni.numeric' => 'El campo DNI sólo admite números',
|
||||
'dni.digits_between' => 'El campo DNI debe tener entre 7 y 8 dígitos',
|
||||
'dni.unique' => 'El DNI ya se encuentra registrado',
|
||||
|
||||
'fecha_nacimiento.required' => 'El campo fecha de nacimiento es requerido',
|
||||
'fecha_nacimiento.date' => 'La fecha de nacimiento ingresada no es válida',
|
||||
|
||||
'domicilio.required' => 'El campo domicilio es requerido',
|
||||
'domicilio.max' => 'El domicilio no puede superar los 150 caracteres',
|
||||
];
|
||||
}
|
||||
}
|
||||
62
app/Http/Requests/UpdatedDenunciasRequest.php
Normal file
62
app/Http/Requests/UpdatedDenunciasRequest.php
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class UpdatedDenunciasRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'nombre' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'apellido' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'dni' => 'required|numeric|digits_between:7,8',
|
||||
'fecha' => 'required|date',
|
||||
'tipo' => 'required|max:100',
|
||||
'descripcion' => 'required|max:1000',
|
||||
'lugar' => 'required|max:100',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Mensajes personalizados de validación.
|
||||
*/
|
||||
public function messages(): array
|
||||
{
|
||||
return [
|
||||
'nombre.required' => 'El campo nombre es requerido',
|
||||
'nombre.regex' => 'El campo nombre sólo debe contener letras',
|
||||
|
||||
'apellido.required' => 'El campo apellido es requerido',
|
||||
'apellido.regex' => 'El campo apellido sólo debe contener letras',
|
||||
|
||||
'dni.required' => 'El campo DNI es requerido',
|
||||
'dni.numeric' => 'El campo DNI sólo admite números',
|
||||
'dni.digits_between' => 'El campo DNI debe tener entre 7 y 8 dígitos',
|
||||
|
||||
'fecha.required' => 'El campo fecha es requerido',
|
||||
'fecha.date' => 'La fecha ingresada no es válida',
|
||||
|
||||
'tipo.required' => 'El campo tipo es requerido',
|
||||
'tipo.max' => 'El tipo no puede superar los 100 caracteres',
|
||||
|
||||
'descripcion.required' => 'El campo descripción es requerido',
|
||||
'descripcion.max' => 'La descripción no puede superar los 1000 caracteres',
|
||||
|
||||
'lugar.required' => 'El campo lugar es requerido',
|
||||
'lugar.max' => 'El lugar no puede superar los 100 caracteres',
|
||||
];
|
||||
}
|
||||
}
|
||||
54
app/Http/Requests/UpdatedDetenidosRequest.php
Normal file
54
app/Http/Requests/UpdatedDetenidosRequest.php
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class UpdatedDetenidosRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'nombre' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'apellido' => 'required|regex:/^[a-zA-ZáéíóúñÁÉÍÓÚ]+( [a-zA-ZáéíóúñÁÉÍÓÚ]+)*$/',
|
||||
'dni' => 'required|numeric|digits_between:7,8',
|
||||
'fecha_nacimiento' => 'required|date',
|
||||
'domicilio' => 'required|max:150',
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Mensajes personalizados de validación.
|
||||
*/
|
||||
public function messages(): array
|
||||
{
|
||||
return [
|
||||
'nombre.required' => 'El campo nombre es requerido',
|
||||
'nombre.regex' => 'El campo nombre sólo debe contener letras',
|
||||
|
||||
'apellido.required' => 'El campo apellido es requerido',
|
||||
'apellido.regex' => 'El campo apellido sólo debe contener letras',
|
||||
|
||||
'dni.required' => 'El campo DNI es requerido',
|
||||
'dni.numeric' => 'El campo DNI sólo admite números',
|
||||
'dni.digits_between' => 'El campo DNI debe tener entre 7 y 8 dígitos',
|
||||
|
||||
'fecha_nacimiento.required' => 'El campo fecha de nacimiento es requerido',
|
||||
'fecha_nacimiento.date' => 'La fecha de nacimiento ingresada no es válida',
|
||||
|
||||
'domicilio.required' => 'El campo domicilio es requerido',
|
||||
'domicilio.max' => 'El domicilio no puede superar los 150 caracteres',
|
||||
];
|
||||
}
|
||||
}
|
||||
27
app/Models/denuncias.php
Normal file
27
app/Models/denuncias.php
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class denuncias extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
use SoftDeletes;
|
||||
protected $table = 'denuncias';
|
||||
|
||||
public $primaryKey = 'id_denuncia';
|
||||
|
||||
public $timestamps = true;
|
||||
protected $fillable = [
|
||||
'nombre_denunciante',
|
||||
'apellido_denunciante',
|
||||
'dni_denunciante',
|
||||
'fecha',
|
||||
'tipo',
|
||||
'descripcion',
|
||||
'lugar',
|
||||
];
|
||||
}
|
||||
23
app/Models/detenidos.php
Normal file
23
app/Models/detenidos.php
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class detenidos extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $table = 'detenidos';
|
||||
|
||||
public $primaryKey = 'id_detenido';
|
||||
|
||||
public $timestamps = true;
|
||||
protected $fillable = [
|
||||
'nombre',
|
||||
'apellido',
|
||||
'dni',
|
||||
'fecha_nacimiento',
|
||||
'domicilio',
|
||||
];
|
||||
}
|
||||
|
|
@ -64,11 +64,11 @@ return [
|
|||
*/
|
||||
|
||||
'logo' => '<b>SICOP</b>',
|
||||
'logo_img' => 'vendor/adminlte/dist/img/AdminLTELogo.png',
|
||||
'logo_img' => 'vendor/adminlte/dist/img/logo_sicop.jpg',
|
||||
'logo_img_class' => 'brand-image img-circle elevation-3',
|
||||
'logo_img_xl' => null,
|
||||
'logo_img_xl_class' => 'brand-image-xs',
|
||||
'logo_img_alt' => 'Admin Logo',
|
||||
'logo_img_alt' => 'Logo SICOP',
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
@ -86,7 +86,7 @@ return [
|
|||
'auth_logo' => [
|
||||
'enabled' => false,
|
||||
'img' => [
|
||||
'path' => 'vendor/adminlte/dist/img/AdminLTELogo.png',
|
||||
'path' => 'vendor/adminlte/dist/img/logo_sicop.jpg',
|
||||
'alt' => 'Auth Logo',
|
||||
'class' => '',
|
||||
'width' => 50,
|
||||
|
|
@ -298,7 +298,9 @@ return [
|
|||
|
|
||||
*/
|
||||
|
||||
'menu' => [
|
||||
|
||||
|
||||
'menu' => [
|
||||
|
||||
[
|
||||
'text' => 'Inicio',
|
||||
|
|
@ -309,8 +311,8 @@ return [
|
|||
['header' => 'ADMINISTRACIÓN'],
|
||||
|
||||
[
|
||||
'text' => 'personal',
|
||||
'icon' => 'fas fa-fw fa-list',
|
||||
'text' => 'Personal',
|
||||
'icon' => 'fas fa-fw fa-user',
|
||||
'submenu' => [
|
||||
|
||||
[
|
||||
|
|
@ -328,8 +330,51 @@ return [
|
|||
],
|
||||
],
|
||||
|
||||
[
|
||||
'text' => 'Denuncias',
|
||||
'icon' => 'fas fa-fw fa-file-alt',
|
||||
'submenu' => [
|
||||
|
||||
[
|
||||
'text' => 'Listado',
|
||||
'route' => 'denuncias.index',
|
||||
'icon' => 'fas fa-fw fa-list-ul',
|
||||
],
|
||||
|
||||
[
|
||||
'text' => 'Nueva denuncia',
|
||||
'route' => 'denuncias.create',
|
||||
'icon' => 'fas fa-fw fa-plus',
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
[
|
||||
'text' => 'Detenidos',
|
||||
'icon' => 'fas fa-fw fa-user-lock',
|
||||
'submenu' => [
|
||||
|
||||
[
|
||||
'text' => 'Listado',
|
||||
'route' => 'detenidos.index',
|
||||
'icon' => 'fas fa-fw fa-list-ul',
|
||||
],
|
||||
|
||||
[
|
||||
'text' => 'Nuevo detenido',
|
||||
'route' => 'detenidos.create',
|
||||
'icon' => 'fas fa-fw fa-plus',
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Menu Filters
|
||||
|
|
|
|||
BIN
public/img/escudo policia.jpg
Normal file
BIN
public/img/escudo policia.jpg
Normal file
Binary file not shown.
BIN
public/vendor/adminlte/dist/img/logo_sicop.jpg
vendored
Normal file
BIN
public/vendor/adminlte/dist/img/logo_sicop.jpg
vendored
Normal file
Binary file not shown.
233
resources/views/denuncias/edit.blade.php
Normal file
233
resources/views/denuncias/edit.blade.php
Normal file
|
|
@ -0,0 +1,233 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<!-- Título -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
|
||||
<h3>Editar Datos de la Denuncia</h3>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Mensajes -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-10">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Formulario de edición -->
|
||||
<form method="POST"
|
||||
action="{{ route('denuncias.update', $denuncia->id_denuncia) }}">
|
||||
|
||||
@csrf
|
||||
|
||||
@method('PUT')
|
||||
|
||||
|
||||
<!-- Primera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre del denunciante (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
class="form-control"
|
||||
value="{{ old('nombre', $denuncia->nombre_denunciante) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido del denunciante (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
class="form-control"
|
||||
value="{{ old('apellido', $denuncia->apellido_denunciante) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
class="form-control"
|
||||
value="{{ old('dni', $denuncia->dni_denunciante) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Segunda fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha" class="form-check-label">
|
||||
Fecha (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="date"
|
||||
name="fecha"
|
||||
id="fecha"
|
||||
class="form-control"
|
||||
value="{{ old('fecha', $denuncia->fecha) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Tipo -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="tipo" class="form-check-label">
|
||||
Tipo de denuncia (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="tipo"
|
||||
id="tipo"
|
||||
class="form-control"
|
||||
value="{{ old('tipo', $denuncia->tipo) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Lugar -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="lugar" class="form-check-label">
|
||||
Lugar (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="lugar"
|
||||
id="lugar"
|
||||
class="form-control"
|
||||
value="{{ old('lugar', $denuncia->lugar) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Tercera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Descripción -->
|
||||
<div class="form-group col-md-12">
|
||||
|
||||
<label for="descripcion" class="form-check-label">
|
||||
Descripción (*)
|
||||
</label>
|
||||
|
||||
<textarea
|
||||
name="descripcion"
|
||||
id="descripcion"
|
||||
rows="6"
|
||||
class="form-control"
|
||||
required
|
||||
>{{ old('descripcion', $denuncia->descripcion) }}</textarea>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Botones -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<!-- Guardar -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
>
|
||||
Guardar
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Salir -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('denuncias.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
// Aquí podremos agregar JavaScript específico para esta vista.
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
155
resources/views/denuncias/index.blade.php
Normal file
155
resources/views/denuncias/index.blade.php
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-12 col-md-11">
|
||||
<h3>Listado de Denuncias</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-md-2">
|
||||
<a href="{{ route('denuncias.create') }}"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
title="Nueva Denuncia">
|
||||
Nueva denuncia
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-12 col-md-11">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table table-striped table-bordered table-hover" id="example">
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Denunciante</th>
|
||||
<th>DNI</th>
|
||||
<th>Fecha</th>
|
||||
<th>Tipo</th>
|
||||
<th>Lugar</th>
|
||||
<th>Acciones</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
@foreach($denuncias as $den)
|
||||
|
||||
<tr>
|
||||
|
||||
<td>{{ $den->id_denuncia }}</td>
|
||||
|
||||
<td>
|
||||
{{ $den->nombre_denunciante }}
|
||||
{{ $den->apellido_denunciante }}
|
||||
</td>
|
||||
|
||||
<td>{{ $den->dni_denunciante }}</td>
|
||||
|
||||
<td>{{ $den->fecha }}</td>
|
||||
|
||||
<td>{{ $den->tipo }}</td>
|
||||
|
||||
<td>{{ $den->lugar }}</td>
|
||||
|
||||
<td align="center">
|
||||
|
||||
@if($den->deleted_at == null)
|
||||
|
||||
<form method="POST"
|
||||
action="{{ route('denuncias.destroy', $den->id_denuncia) }}"
|
||||
style="display:inline;">
|
||||
|
||||
@csrf
|
||||
@method('DELETE')
|
||||
|
||||
<!-- Ver -->
|
||||
<a class="btn btn-info"
|
||||
href="{{ route('denuncias.show', $den->id_denuncia) }}"
|
||||
title="Ver más">
|
||||
<i class="fa fa-eye"></i>
|
||||
</a>
|
||||
|
||||
<!-- Editar -->
|
||||
<a class="btn btn-warning"
|
||||
href="{{ route('denuncias.edit', $den->id_denuncia) }}"
|
||||
title="Editar">
|
||||
<i class="fas fa-edit"></i>
|
||||
</a>
|
||||
|
||||
<!-- Eliminar -->
|
||||
<button class="btn btn-danger"
|
||||
onclick="return confirm('¿Está seguro de eliminar esta denuncia?');"
|
||||
title="Eliminar">
|
||||
<i class="fas fa-trash"></i>
|
||||
</button>
|
||||
|
||||
</form>
|
||||
|
||||
@else
|
||||
|
||||
<form method="POST"
|
||||
action="{{ route('denuncias.restaurar', $den->id_denuncia) }}"
|
||||
style="display:inline;">
|
||||
|
||||
@csrf
|
||||
@method('PUT')
|
||||
|
||||
<!-- Restaurar -->
|
||||
<button class="btn btn-success"
|
||||
onclick="return confirm('¿Está seguro de restaurar esta denuncia?');"
|
||||
title="Restaurar">
|
||||
<i class="fa fa-undo"></i>
|
||||
</button>
|
||||
|
||||
</form>
|
||||
|
||||
@endif
|
||||
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('styles')
|
||||
|
||||
@endpush
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
|
||||
$('#example').DataTable({
|
||||
dom: 'Bfrtip',
|
||||
buttons: ['excel'],
|
||||
pageLength: 5,
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
221
resources/views/denuncias/new.blade.php
Normal file
221
resources/views/denuncias/new.blade.php
Normal file
|
|
@ -0,0 +1,221 @@
|
|||
@extends('layouts.admin')
|
||||
@section('contenido')
|
||||
|
||||
<!-- Título -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
<h3>Nueva Denuncia</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Mensajes -->
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Formulario para crear una nueva denuncia -->
|
||||
<form method="POST" action="{{ route('denuncias.store') }}">
|
||||
|
||||
@csrf
|
||||
|
||||
<!-- Primera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre del denunciante (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
value="{{ old('nombre') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido del denunciante (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
value="{{ old('apellido') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
value="{{ old('dni') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Segunda fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha" class="form-check-label">
|
||||
Fecha (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="date"
|
||||
name="fecha"
|
||||
id="fecha"
|
||||
value="{{ old('fecha') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Tipo -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="tipo" class="form-check-label">
|
||||
Tipo de denuncia (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="tipo"
|
||||
id="tipo"
|
||||
value="{{ old('tipo') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Lugar -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="lugar" class="form-check-label">
|
||||
Lugar (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="lugar"
|
||||
id="lugar"
|
||||
value="{{ old('lugar') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Tercera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Descripción -->
|
||||
<div class="form-group col-md-12">
|
||||
|
||||
<label for="descripcion" class="form-check-label">
|
||||
Descripción (*)
|
||||
</label>
|
||||
|
||||
<textarea
|
||||
name="descripcion"
|
||||
id="descripcion"
|
||||
rows="5"
|
||||
required
|
||||
class="form-control"
|
||||
maxlength="500"
|
||||
>{{ old('descripcion') }}</textarea>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Botones -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<!-- Guardar -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
>
|
||||
Guardar
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Salir -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('denuncias.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
// Aquí podremos agregar JavaScript específico para esta vista.
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
189
resources/views/denuncias/show.blade.php
Normal file
189
resources/views/denuncias/show.blade.php
Normal file
|
|
@ -0,0 +1,189 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
|
||||
<h3>Ver Datos de la Denuncia</h3>
|
||||
|
||||
<div class="progress" style="height: 2px;"></div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Datos del denunciante -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre del denunciante
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->nombre_denunciante }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido del denunciante
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->apellido_denunciante }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->dni_denunciante }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Datos de la denuncia -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha" class="form-check-label">
|
||||
Fecha
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="fecha"
|
||||
id="fecha"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->fecha }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Tipo -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="tipo" class="form-check-label">
|
||||
Tipo de denuncia
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="tipo"
|
||||
id="tipo"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->tipo }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Lugar -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="lugar" class="form-check-label">
|
||||
Lugar
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="lugar"
|
||||
id="lugar"
|
||||
class="form-control"
|
||||
value="{{ $denuncia->lugar }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Descripción -->
|
||||
<div class="row">
|
||||
|
||||
<div class="form-group col-md-12">
|
||||
|
||||
<label for="descripcion" class="form-check-label">
|
||||
Descripción
|
||||
</label>
|
||||
|
||||
<textarea
|
||||
name="descripcion"
|
||||
id="descripcion"
|
||||
rows="6"
|
||||
class="form-control"
|
||||
readonly
|
||||
>{{ $denuncia->descripcion }}</textarea>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
<legend></legend>
|
||||
|
||||
|
||||
<!-- Botón Salir -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('denuncias.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
191
resources/views/detenidos/edit.blade.php
Normal file
191
resources/views/detenidos/edit.blade.php
Normal file
|
|
@ -0,0 +1,191 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<!-- Título -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
|
||||
<h3>Editar Datos del Detenido</h3>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Mensajes -->
|
||||
<div class="row">
|
||||
|
||||
<div class="col-md-10">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Formulario de edición -->
|
||||
<form method="POST"
|
||||
action="{{ route('detenidos.update', $detenido->id_detenido) }}">
|
||||
|
||||
@csrf
|
||||
|
||||
@method('PUT')
|
||||
|
||||
|
||||
<!-- Primera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
class="form-control"
|
||||
value="{{ old('nombre', $detenido->nombre) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
class="form-control"
|
||||
value="{{ old('apellido', $detenido->apellido) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
class="form-control"
|
||||
value="{{ old('dni', $detenido->dni) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Segunda fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha de nacimiento -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha_nacimiento" class="form-check-label">
|
||||
Fecha de nacimiento (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="date"
|
||||
name="fecha_nacimiento"
|
||||
id="fecha_nacimiento"
|
||||
class="form-control"
|
||||
value="{{ old('fecha_nacimiento', $detenido->fecha_nacimiento) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Domicilio -->
|
||||
<div class="form-group col-md-8">
|
||||
|
||||
<label for="domicilio" class="form-check-label">
|
||||
Domicilio (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="domicilio"
|
||||
id="domicilio"
|
||||
class="form-control"
|
||||
value="{{ old('domicilio', $detenido->domicilio) }}"
|
||||
required
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Botones -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<!-- Guardar -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
>
|
||||
Guardar
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Salir -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('detenidos.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
// Aquí podremos agregar JavaScript específico para esta vista.
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
114
resources/views/detenidos/index.blade.php
Normal file
114
resources/views/detenidos/index.blade.php
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-12 col-md-11">
|
||||
<h3>Listado de Detenidos</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-md-2">
|
||||
<a href="{{ route('detenidos.create') }}"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
title="Nuevo Detenido">
|
||||
Nuevo detenido
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-12 col-md-11">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
<div class="table-responsive">
|
||||
|
||||
<table class="table table-striped table-bordered table-hover" id="example">
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Id</th>
|
||||
<th>Nombre</th>
|
||||
<th>Apellido</th>
|
||||
<th>DNI</th>
|
||||
<th>Fecha de nacimiento</th>
|
||||
<th>Domicilio</th>
|
||||
<th>Acciones</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
|
||||
@foreach($detenidos as $det)
|
||||
|
||||
<tr>
|
||||
|
||||
<td>{{ $det->id_detenido }}</td>
|
||||
|
||||
<td>{{ $det->nombre }}</td>
|
||||
|
||||
<td>{{ $det->apellido }}</td>
|
||||
|
||||
<td>{{ $det->dni }}</td>
|
||||
|
||||
<td>{{ $det->fecha_nacimiento }}</td>
|
||||
|
||||
<td>{{ $det->domicilio }}</td>
|
||||
|
||||
<td align="center">
|
||||
|
||||
<!-- Ver -->
|
||||
<a class="btn btn-info"
|
||||
href="{{ route('detenidos.show', $det->id_detenido) }}"
|
||||
title="Ver más">
|
||||
<i class="fa fa-eye"></i>
|
||||
</a>
|
||||
|
||||
<!-- Editar -->
|
||||
<a class="btn btn-warning"
|
||||
href="{{ route('detenidos.edit', $det->id_detenido) }}"
|
||||
title="Editar">
|
||||
<i class="fas fa-edit"></i>
|
||||
</a>
|
||||
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('styles')
|
||||
|
||||
@endpush
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
|
||||
$('#example').DataTable({
|
||||
dom: 'Bfrtip',
|
||||
buttons: ['excel'],
|
||||
pageLength: 5,
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
181
resources/views/detenidos/new.blade.php
Normal file
181
resources/views/detenidos/new.blade.php
Normal file
|
|
@ -0,0 +1,181 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<!-- Título -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
<h3>Nuevo Detenido</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Mensajes -->
|
||||
<div class="row">
|
||||
<div class="col-md-10">
|
||||
|
||||
@include('compartido.mensajes')
|
||||
@include('compartido.errores')
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Formulario para crear un nuevo detenido -->
|
||||
<form method="POST" action="{{ route('detenidos.store') }}">
|
||||
|
||||
@csrf
|
||||
|
||||
<!-- Primera fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
value="{{ old('nombre') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
value="{{ old('apellido') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
value="{{ old('dni') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Segunda fila -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha de nacimiento -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha_nacimiento" class="form-check-label">
|
||||
Fecha de nacimiento (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="date"
|
||||
name="fecha_nacimiento"
|
||||
id="fecha_nacimiento"
|
||||
value="{{ old('fecha_nacimiento') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Domicilio -->
|
||||
<div class="form-group col-md-8">
|
||||
|
||||
<label for="domicilio" class="form-check-label">
|
||||
Domicilio (*)
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="domicilio"
|
||||
id="domicilio"
|
||||
value="{{ old('domicilio') }}"
|
||||
required
|
||||
class="form-control"
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Botones -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<!-- Guardar -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="btn btn-success btn-block btn-lg"
|
||||
>
|
||||
Guardar
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Salir -->
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('detenidos.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
@endsection
|
||||
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script>
|
||||
// Aquí podremos agregar JavaScript específico para esta vista.
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
148
resources/views/detenidos/show.blade.php
Normal file
148
resources/views/detenidos/show.blade.php
Normal file
|
|
@ -0,0 +1,148 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('contenido')
|
||||
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-lg-11 col-md-11 col-sm-11 col-xs-11">
|
||||
|
||||
<h3>Ver Datos del Detenido</h3>
|
||||
|
||||
<div class="progress" style="height: 2px;"></div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
<!-- Datos del detenido -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Nombre -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="nombre" class="form-check-label">
|
||||
Nombre
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="nombre"
|
||||
id="nombre"
|
||||
class="form-control"
|
||||
value="{{ $detenidos->nombre }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Apellido -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="apellido" class="form-check-label">
|
||||
Apellido
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="apellido"
|
||||
id="apellido"
|
||||
class="form-control"
|
||||
value="{{ $detenidos->apellido }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- DNI -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="dni" class="form-check-label">
|
||||
DNI
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="dni"
|
||||
id="dni"
|
||||
class="form-control"
|
||||
value="{{ $detenidos->dni }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Datos personales -->
|
||||
<div class="row">
|
||||
|
||||
<!-- Fecha de nacimiento -->
|
||||
<div class="form-group col-md-4">
|
||||
|
||||
<label for="fecha_nacimiento" class="form-check-label">
|
||||
Fecha de nacimiento
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="fecha_nacimiento"
|
||||
id="fecha_nacimiento"
|
||||
class="form-control"
|
||||
value="{{ $detenidos->fecha_nacimiento }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Domicilio -->
|
||||
<div class="form-group col-md-8">
|
||||
|
||||
<label for="domicilio" class="form-check-label">
|
||||
Domicilio
|
||||
</label>
|
||||
|
||||
<input
|
||||
type="text"
|
||||
name="domicilio"
|
||||
id="domicilio"
|
||||
class="form-control"
|
||||
value="{{ $detenidos->domicilio }}"
|
||||
readonly
|
||||
>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<br>
|
||||
|
||||
<legend></legend>
|
||||
|
||||
|
||||
<!-- Botón Salir -->
|
||||
<div class="row justify-content-center align-items-center">
|
||||
|
||||
<div class="col-md-2">
|
||||
|
||||
<a
|
||||
href="{{ route('detenidos.index') }}"
|
||||
class="btn btn-primary btn-block btn-lg"
|
||||
title="Salir"
|
||||
>
|
||||
Salir
|
||||
</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
|
|
@ -82,14 +82,14 @@
|
|||
<a class="btn btn-warning"
|
||||
href="{{ route('personal.edit', $per->id_personal) }}"
|
||||
title="Editar">
|
||||
<i class="fa fa-pencil"></i>
|
||||
<i class="fas fa-edit"></i>
|
||||
</a>
|
||||
|
||||
<!-- btn-danger => rojo (acción destructiva como eliminar) -->
|
||||
<button class="btn btn-danger"
|
||||
onclick="return confirm('¿Está seguro de eliminar este efectivo?');"
|
||||
title="Eliminar">
|
||||
<i class="fa fa-remove"></i>
|
||||
<i class="fas fa-trash"></i>
|
||||
</button>
|
||||
</form>
|
||||
@else
|
||||
|
|
|
|||
|
|
@ -2,6 +2,9 @@
|
|||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use App\Http\Controllers\personalController;
|
||||
use App\Http\Controllers\denunciasController;
|
||||
use App\Http\Controllers\detenidosController;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Web Routes
|
||||
|
|
@ -20,6 +23,13 @@ Route::get('/', function () {
|
|||
Route::resource('personal', personalController::class);
|
||||
Route::put('personal/restaurar/{personal}', [personalController::class, 'restaurar'])->name('personal.restaurar');
|
||||
|
||||
Route::resource('denuncias', denunciasController::class);
|
||||
Route::put('denuncias/restaurar/{denuncias}', [denunciasController::class, 'restaurar'])->name('denuncias.restaurar');
|
||||
|
||||
Route::resource('detenidos', detenidosController::class);
|
||||
|
||||
|
||||
|
||||
/*Route::get('personal', [personalController::class, 'index'])->name('personal.index');
|
||||
Route::post('personal', [personalController::class, 'store'])->name('personal.store');
|
||||
Route::get('personal/create', [personalController::class, 'create'])->name('personal.create');
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user