27 changed files with 774 additions and 5 deletions
@ -0,0 +1,69 @@ |
|||
<?php |
|||
|
|||
namespace App\Http\Controllers; |
|||
|
|||
use App\Models\Auto; |
|||
use Illuminate\Http\Request; |
|||
|
|||
class AutoController extends Controller |
|||
{ |
|||
/** |
|||
* Display a listing of the resource. |
|||
*/ |
|||
public function index() |
|||
{ |
|||
$autos = Auto::all(); |
|||
return view('autos', ['autos' => $autos]); |
|||
} |
|||
|
|||
/** |
|||
* Show the form for creating a new resource. |
|||
*/ |
|||
public function create() |
|||
{ |
|||
return view('autosCrearEditar', ['auto' => null]); |
|||
} |
|||
|
|||
/** |
|||
* Store a newly created resource in storage. |
|||
*/ |
|||
public function store(Request $request) |
|||
{ |
|||
$auto = Auto::create($request->all()); |
|||
return redirect()->route('autos.index'); |
|||
} |
|||
|
|||
/** |
|||
* Display the specified resource. |
|||
*/ |
|||
public function show(Auto $auto) |
|||
{ |
|||
return view('autosCrearEditar', ['auto' => $auto]); |
|||
} |
|||
|
|||
/** |
|||
* Show the form for editing the specified resource. |
|||
*/ |
|||
public function edit(Auto $auto) |
|||
{ |
|||
return view('autosCrearEditar', ['auto' => $auto]); |
|||
} |
|||
|
|||
/** |
|||
* Update the specified resource in storage. |
|||
*/ |
|||
public function update(Request $request, Auto $auto) |
|||
{ |
|||
$auto->update($request->all()); |
|||
return redirect()->route('autos.index'); |
|||
} |
|||
|
|||
/** |
|||
* Remove the specified resource from storage. |
|||
*/ |
|||
public function destroy(Auto $auto) |
|||
{ |
|||
$auto->delete(); |
|||
return redirect()->route('autos.index'); |
|||
} |
|||
} |
@ -0,0 +1,82 @@ |
|||
<?php |
|||
|
|||
namespace App\Http\Controllers; |
|||
|
|||
use App\Models\Trabajador; |
|||
use Illuminate\Http\Request; |
|||
use App\Models\Puesto; |
|||
|
|||
class TrabajadorController extends Controller |
|||
{ |
|||
/** |
|||
* Display a listing of the resource. |
|||
*/ |
|||
public function index() |
|||
{ |
|||
$trabajadores = Trabajador::all(); |
|||
return view('trabajadores', ['trabajadores' => $trabajadores]); |
|||
} |
|||
|
|||
/** |
|||
* Show the form for creating a new resource. |
|||
*/ |
|||
public function create() |
|||
{ |
|||
$puestos = Puesto::all(); |
|||
return view('trabajadoresCrearEditar', ['trabajador' => null, 'puestos' => $puestos]); |
|||
} |
|||
|
|||
/** |
|||
* Store a newly created resource in storage. |
|||
*/ |
|||
public function store(Request $request) |
|||
{ |
|||
|
|||
$trabajador2 = new Trabajador($request->all()); |
|||
$trabajador2->save(); |
|||
return redirect()->route('trabajadores.index')->with('succes',value: 'El auto se agregó'); |
|||
} |
|||
|
|||
/** |
|||
* Display the specified resource. |
|||
*/ |
|||
public function show(Trabajador $trabajador) |
|||
{ |
|||
// |
|||
} |
|||
|
|||
/** |
|||
* Show the form for editing the specified resource. |
|||
*/ |
|||
public function edit($id) |
|||
{ |
|||
$puestos = Puesto::all(); |
|||
$trabajador = Trabajador::find($id); |
|||
return view('trabajadoresCrearEditar', ['trabajador' => $trabajador, 'puestos' => $puestos])->with(key: 'warning', value:'Actualizado correctamente'); |
|||
} |
|||
|
|||
/** |
|||
* Update the specified resource in storage. |
|||
*/ |
|||
public function update(Request $request, $id) |
|||
{ |
|||
$trabajador = Trabajador::find($id); //Busca el trabajador por el id |
|||
$trabajador->update($request->all()); //Actualiza los datos del trabajador |
|||
return redirect()->route('trabajadores.index')->with(key: 'warning', value:'Actualizado correctamente'); //Redirecciona a la página de index |
|||
} |
|||
|
|||
/** |
|||
* Remove the specified resource from storage. |
|||
*/ |
|||
public function destroy($id) |
|||
{ |
|||
$trabajador = Trabajador::find($id); //Busca el trabajador por el id |
|||
if($trabajador->puesto_id()!=1){ |
|||
$trabajador->delete(); //Elimina el trabajador: |
|||
return redirect()->route('trabajadores.index')->with(key: 'succes', value:'Eliminado correctamente'); //Redirecciona a la página de index |
|||
}else{ |
|||
return redirect()->route('trabajadores.index')->with(key: 'error', value:'No se puede eliminar el trabajador porque no tiene un puesto asignado'); //Redirecciona a la página de index |
|||
} |
|||
} |
|||
|
|||
} |
@ -0,0 +1,14 @@ |
|||
<?php |
|||
|
|||
namespace App\Models; |
|||
|
|||
use Illuminate\Database\Eloquent\Factories\HasFactory; |
|||
use Illuminate\Database\Eloquent\Model; |
|||
|
|||
class Auto extends Model |
|||
{ |
|||
use HasFactory; |
|||
protected $table = 'autos'; |
|||
|
|||
protected $fillable = ['marca', 'modelo', 'año', 'color', 'precio']; |
|||
} |
@ -0,0 +1,19 @@ |
|||
<?php |
|||
|
|||
namespace App\Models; |
|||
|
|||
use Illuminate\Database\Eloquent\Factories\HasFactory; |
|||
use Illuminate\Database\Eloquent\Model; |
|||
use Illuminate\Database\Eloquent\Relations\HasMany; |
|||
|
|||
class Puesto extends Model |
|||
{ |
|||
use HasFactory; |
|||
protected $table = 'puestos'; |
|||
protected $fillable = ['nombre']; |
|||
|
|||
public function trabajadores(): hasMany |
|||
{ |
|||
return $this->hasMany(Trabajador::class,'puesto_id','id'); |
|||
} |
|||
} |
@ -0,0 +1,20 @@ |
|||
<?php |
|||
|
|||
namespace App\Models; |
|||
|
|||
use Illuminate\Database\Eloquent\Factories\HasFactory; |
|||
use Illuminate\Database\Eloquent\Model; |
|||
use Illuminate\Database\Eloquent\Relations\HasOne; |
|||
class Trabajador extends Model |
|||
{ |
|||
|
|||
use HasFactory; |
|||
protected $table = 'trabajadors'; |
|||
|
|||
protected $fillable = ['nombre', 'telefono', 'genero', 'sueldo', 'puesto_id', 'numero_seguro', 'correo_electronico']; |
|||
|
|||
public function Puesto(): hasOne |
|||
{ |
|||
return $this->hasOne(Puesto::class,'id','puesto_id'); |
|||
} |
|||
} |
@ -0,0 +1,27 @@ |
|||
<?php |
|||
|
|||
namespace Database\Factories; |
|||
|
|||
use Illuminate\Database\Eloquent\Factories\Factory; |
|||
|
|||
/** |
|||
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Auto> |
|||
*/ |
|||
class AutoFactory extends Factory |
|||
{ |
|||
/** |
|||
* Define the model's default state. |
|||
* |
|||
* @return array<string, mixed> |
|||
*/ |
|||
public function definition(): array |
|||
{ |
|||
return [ |
|||
'marca' => $this->faker->randomElement(['Toyota', 'Ford', 'Chevrolet', 'Nissan', 'Honda']), |
|||
'modelo' => $this->faker->randomElement(['Corolla', 'F150', 'Camry', 'Altima', 'Civic']), |
|||
'año' => $this->faker->year(), |
|||
'color' => $this->faker->colorName(), |
|||
'precio' => $this->faker->randomFloat(2, 10000, 50000), |
|||
]; |
|||
} |
|||
} |
@ -0,0 +1,29 @@ |
|||
<?php |
|||
|
|||
namespace Database\Factories; |
|||
|
|||
use Illuminate\Database\Eloquent\Factories\Factory; |
|||
|
|||
/** |
|||
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Trabajador> |
|||
*/ |
|||
class TrabajadorFactory extends Factory |
|||
{ |
|||
/** |
|||
* Define the model's default state. |
|||
* |
|||
* @return array<string, mixed> |
|||
*/ |
|||
public function definition(): array |
|||
{ |
|||
return [ |
|||
'nombre'=> $this->faker->name, |
|||
'telefono'=> $this->faker->phoneNumber(), |
|||
'genero'=> $this->faker->randomElement(['Masculino','Femenino']), |
|||
'sueldo'=> $this->faker->randomFloat(2, 1000, 100000), |
|||
'puesto'=> $this->faker->jobTitle(), |
|||
'numero_seguro'=> $this->faker->randomNumber(8), |
|||
'correo_electronico'=> $this->faker->email(), |
|||
]; |
|||
} |
|||
} |
@ -0,0 +1,38 @@ |
|||
<?php |
|||
|
|||
use Illuminate\Database\Migrations\Migration; |
|||
use Illuminate\Database\Schema\Blueprint; |
|||
use Illuminate\Support\Facades\Schema; |
|||
|
|||
return new class extends Migration |
|||
{ |
|||
/** |
|||
* Run the migrations. |
|||
*/ |
|||
public function up(): void |
|||
{ |
|||
Schema::create('puestos', function (Blueprint $table) { |
|||
$table->id(); |
|||
$table->string('nombre'); |
|||
$table->timestamps(); |
|||
}); |
|||
|
|||
DB::table('puestos')->insert([ |
|||
'nombre' => 'Administrador', |
|||
]); |
|||
DB::table('puestos')->insert([ |
|||
'nombre' => 'Mesero', |
|||
]); |
|||
DB::table('puestos')->insert([ |
|||
'nombre' => 'Cocinero', |
|||
]); |
|||
} |
|||
|
|||
/** |
|||
* Reverse the migrations. |
|||
*/ |
|||
public function down(): void |
|||
{ |
|||
Schema::dropIfExists('puestos'); |
|||
} |
|||
}; |
@ -0,0 +1,32 @@ |
|||
<?php |
|||
|
|||
use Illuminate\Database\Migrations\Migration; |
|||
use Illuminate\Database\Schema\Blueprint; |
|||
use Illuminate\Support\Facades\Schema; |
|||
|
|||
return new class extends Migration |
|||
{ |
|||
/** |
|||
* Run the migrations. |
|||
*/ |
|||
public function up(): void |
|||
{ |
|||
Schema::create('autos', function (Blueprint $table) { |
|||
$table->id(); |
|||
$table->string('marca'); |
|||
$table->string('modelo'); |
|||
$table->integer('año'); |
|||
$table->string('color'); |
|||
$table->decimal('precio', 8, 2); |
|||
$table->timestamps(); |
|||
}); |
|||
} |
|||
|
|||
/** |
|||
* Reverse the migrations. |
|||
*/ |
|||
public function down(): void |
|||
{ |
|||
Schema::dropIfExists('autos'); |
|||
} |
|||
}; |
@ -0,0 +1,36 @@ |
|||
<?php |
|||
|
|||
use Illuminate\Database\Migrations\Migration; |
|||
use Illuminate\Database\Schema\Blueprint; |
|||
use Illuminate\Support\Facades\Schema; |
|||
use PhpParser\Node\NullableType; |
|||
|
|||
return new class extends Migration |
|||
{ |
|||
/** |
|||
* Run the migrations. |
|||
*/ |
|||
public function up(): void |
|||
{ |
|||
Schema::create('trabajadors', function (Blueprint $table) { |
|||
$table->id(); |
|||
$table->string('nombre'); |
|||
$table->string('telefono')->nullable(); |
|||
$table->string('genero'); |
|||
$table->decimal('sueldo', 10, 2); |
|||
$table->string('numero_seguro'); |
|||
$table->string('correo_electronico')->nullable(); |
|||
$table->unsignedBigInteger('puesto_id'); |
|||
$table->timestamps(); |
|||
$table->foreign('puesto_id')->references('id')->on('puestos'); |
|||
}); |
|||
} |
|||
|
|||
/** |
|||
* Reverse the migrations. |
|||
*/ |
|||
public function down(): void |
|||
{ |
|||
Schema::dropIfExists('trabajadors'); |
|||
} |
|||
}; |
@ -0,0 +1,31 @@ |
|||
<?php |
|||
|
|||
use Illuminate\Database\Migrations\Migration; |
|||
use Illuminate\Database\Schema\Blueprint; |
|||
use Illuminate\Support\Facades\Schema; |
|||
|
|||
return new class extends Migration |
|||
{ |
|||
/** |
|||
* Run the migrations. |
|||
*/ |
|||
public function up(): void |
|||
{ |
|||
Schema::table('users', function (Blueprint $table) { |
|||
// |
|||
$table->unsignedBigInteger('puesto_id')->default(1); |
|||
$table->foreign('puesto_id')->references('id')->on('puestos'); |
|||
}); |
|||
} |
|||
|
|||
/** |
|||
* Reverse the migrations. |
|||
*/ |
|||
public function down(): void |
|||
{ |
|||
Schema::table('users', function (Blueprint $table) { |
|||
// |
|||
$table->dropColumn('puesto_id'); |
|||
}); |
|||
} |
|||
}; |
@ -0,0 +1,22 @@ |
|||
<?php |
|||
|
|||
use Illuminate\Database\Migrations\Migration; |
|||
use Illuminate\Database\Schema\Blueprint; |
|||
use Illuminate\Support\Facades\Schema; |
|||
|
|||
return new class extends Migration |
|||
{ |
|||
public function up() |
|||
{ |
|||
Schema::table('trabajadors', function (Blueprint $table) { |
|||
$table->decimal('sueldo', 12, 2)->change(); // Permite números más grandes con 2 decimales |
|||
}); |
|||
} |
|||
|
|||
public function down() |
|||
{ |
|||
Schema::table('trabajadors', function (Blueprint $table) { |
|||
$table->decimal('sueldo', 8, 2)->change(); // Vuelve al tamaño original si necesitas revertir |
|||
}); |
|||
} |
|||
}; |
@ -0,0 +1,17 @@ |
|||
<?php |
|||
|
|||
namespace Database\Seeders; |
|||
|
|||
use Illuminate\Database\Console\Seeds\WithoutModelEvents; |
|||
use Illuminate\Database\Seeder; |
|||
|
|||
class AutoSeeder extends Seeder |
|||
{ |
|||
/** |
|||
* Run the database seeds. |
|||
*/ |
|||
public function run(): void |
|||
{ |
|||
// |
|||
} |
|||
} |
@ -0,0 +1,18 @@ |
|||
<?php |
|||
|
|||
namespace Database\Seeders; |
|||
|
|||
use Illuminate\Database\Console\Seeds\WithoutModelEvents; |
|||
use Illuminate\Database\Seeder; |
|||
use App\Models\Trabajador; |
|||
|
|||
class TrabajadorSeeder extends Seeder |
|||
{ |
|||
/** |
|||
* Run the database seeds. |
|||
*/ |
|||
public function run(): void |
|||
{ |
|||
|
|||
} |
|||
} |
@ -0,0 +1,77 @@ |
|||
@extends('layouts.plantilla') |
|||
|
|||
@section('contenido') |
|||
<div class="container"> |
|||
<div class="row"> |
|||
<div class="col-md-12"> |
|||
<h1>Autos</h1> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-md-12"> |
|||
<a href="{{ route('autos.create') }}" class="btn btn-primary">Agregar Auto</a> |
|||
<table class="table table-striped"> |
|||
<thead> |
|||
<tr> |
|||
<th>Marca</th> |
|||
<th>Modelo</th> |
|||
<th>Año</th> |
|||
<th>Color</th> |
|||
<th>Precio</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
@foreach ($autos as $auto) |
|||
<tr> |
|||
<td>{{ $auto->marca }}</td> |
|||
<td>{{ $auto->modelo }}</td> |
|||
<td>{{ $auto->año }}</td> |
|||
<td>{{ $auto->color }}</td> |
|||
<td>{{ $auto->precio }}</td> |
|||
<td> |
|||
<a href="{{ route('autos.edit', $auto->id) }}" class="btn btn-warning">Editar</a> |
|||
<button type="button" class="btn btn-danger" data-bs-toggle="modal" data-bs-target="#confirmDeleteModal" data-id="{{ $auto->id }}"> |
|||
Eliminar |
|||
</button> |
|||
</td> |
|||
</tr> |
|||
@endforeach |
|||
</tbody> |
|||
</table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- Modal --> |
|||
<div class="modal fade" id="confirmDeleteModal" tabindex="-1" aria-labelledby="confirmDeleteModalLabel" aria-hidden="true"> |
|||
<div class="modal-dialog"> |
|||
<div class="modal-content"> |
|||
<div class="modal-header"> |
|||
<h5 class="modal-title" id="confirmDeleteModalLabel">Confirmar Eliminación</h5> |
|||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> |
|||
</div> |
|||
<div class="modal-body"> |
|||
¿Estás seguro de que deseas eliminar este auto? |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">No</button> |
|||
<form id="deleteForm" action="" method="POST" style="display:inline;"> |
|||
@csrf |
|||
@method('DELETE') |
|||
<button type="submit" class="btn btn-danger">Sí, eliminar</button> |
|||
</form> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<script> |
|||
var confirmDeleteModal = document.getElementById('confirmDeleteModal'); |
|||
confirmDeleteModal.addEventListener('show.bs.modal', function (event) { |
|||
var button = event.relatedTarget; |
|||
var autoId = button.getAttribute('data-id'); |
|||
var form = document.getElementById('deleteForm'); |
|||
form.action = '/autos/' + autoId; |
|||
}); |
|||
</script> |
|||
@endsection |
@ -0,0 +1,49 @@ |
|||
@extends('layouts.plantilla') |
|||
|
|||
@section('contenido') |
|||
<div class="content"> |
|||
<div class="row"> |
|||
<div class="col-12 pt-5"> |
|||
@if($auto) |
|||
<h1>Editar Auto</h1> |
|||
@else |
|||
<h1>Crear Auto</h1> |
|||
@endif |
|||
</div> |
|||
|
|||
<div class="col-12"> |
|||
@if($auto) |
|||
<form action="{{ route('autos.update', $auto->id) }}" method="POST"> |
|||
@csrf |
|||
@method('PUT') |
|||
@else |
|||
<form action="{{ route('autos.store') }}" method="POST"> |
|||
@csrf |
|||
@endif |
|||
<div class="form-group"> |
|||
<label for="marca" class="form-label">Marca</label> |
|||
<input type="text" class="form-control" id="marca" name="marca" value="{{$auto ? $auto->marca : ''}}" placeholder="Ingrese la marca" pattern="[A-Za-z\s]+" title="Solo letras y espacios" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="modelo" class="form-label">Modelo</label> |
|||
<input type="text" class="form-control" id="modelo" name="modelo" value="{{$auto ? $auto->modelo : ''}}" placeholder="Ingrese el modelo" pattern="[A-Za-z\s]+" title="Solo letras y espacios" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="año" class="form-label">Año</label> |
|||
<input type="number" class="form-control" id="año" name="año" value="{{$auto ? $auto->año : ''}}" placeholder="Ingrese el año" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="color" class="form-label">Color</label> |
|||
<input type="color" class="form-control" id="color" name="color" value="{{$auto ? $auto->color : '#000000'}}" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="precio" class="form-label">Precio</label> |
|||
<input type="number" step="0.01" class="form-control" id="precio" name="precio" value="{{$auto ? $auto->precio : ''}}" placeholder="Ingrese el precio" required> |
|||
</div> |
|||
<button type="submit" class="btn btn-primary">Guardar</button> |
|||
<a href="{{ route('autos.index') }}" class="btn btn-danger">Cancelar</a> |
|||
</form> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
@endsection |
@ -0,0 +1,49 @@ |
|||
@extends('layouts.plantilla') |
|||
|
|||
@section('contenido') |
|||
<div class="container"> |
|||
<div class="row"> |
|||
<div class="col-md-12"> |
|||
<h1>Trabajadores</h1> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-md-12"> |
|||
<a href="{{ route('trabajadores.create') }}" class="btn btn-primary">Agregar Trabajador</a> |
|||
<table class="table table-striped"> |
|||
<thead> |
|||
<tr> |
|||
<th>Nombre</th> |
|||
<th>Teléfono</th> |
|||
<th>Género</th> |
|||
<th>Sueldo</th> |
|||
<th>Puesto</th> |
|||
<th>Número de Seguro</th> |
|||
<th>Correo Electrónico</th> |
|||
<th>Acciones</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
@foreach ($trabajadores as $trabajador) |
|||
<tr> |
|||
<td>{{ $trabajador->nombre }}</td> |
|||
<td>{{ $trabajador->telefono }}</td> |
|||
<td>{{ $trabajador->genero }}</td> |
|||
<td>{{ $trabajador->sueldo }}</td> |
|||
<td>{{ $trabajador->Puesto->nombre }}</td> |
|||
<td>{{ $trabajador->numero_seguro }}</td> |
|||
<td>{{ $trabajador->correo_electronico }}</td> |
|||
<td> |
|||
<a href="{{ route('trabajadores.edit', $trabajador->id) }}" class="btn btn-warning">Editar</a> |
|||
<form action="{{ route('trabajadores.destroy', $trabajador->id) }}" method="POST"> |
|||
@csrf |
|||
@method('DELETE') |
|||
<button type="submit" class="btn btn-danger">Eliminar</button> |
|||
</form> |
|||
</td> |
|||
</tr> |
|||
@endforeach |
|||
</tbody> |
|||
</table> |
|||
</div> |
|||
</div> |
|||
@endsection |
@ -0,0 +1,66 @@ |
|||
@extends('layouts.plantilla') |
|||
|
|||
@section('contenido') |
|||
<div class="content"> |
|||
<div class="row"> |
|||
<div class="col-12 pt-5"> |
|||
@if($trabajador) |
|||
<h1>Editar Trabajador</h1> |
|||
@else |
|||
<h1>Crear Trabajador</h1> |
|||
@endif |
|||
</div> |
|||
|
|||
<div class="col-12"> |
|||
@if($trabajador) |
|||
<form action="{{ route('trabajadores.update', $trabajador->id) }}" method="POST"> |
|||
@csrf |
|||
@method('PUT') |
|||
@else |
|||
<form action="{{ route('trabajadores.store') }}" method="POST"> |
|||
@csrf |
|||
@endif |
|||
<div class="form-group"> |
|||
<label for="nombre" class="form-label">Nombre</label> |
|||
<input type="text" class="form-control" id="nombre" name="nombre" value="{{$trabajador ? $trabajador->nombre : ''}}" placeholder="Ingrese el nombre" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="telefono" class="form-label">Teléfono</label> |
|||
<input type="text" class="form-control" id="telefono" name="telefono" value="{{$trabajador ? $trabajador->telefono : ''}}" placeholder="Ingrese el teléfono"> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="genero" class="form-label">Género</label> |
|||
<select name="genero" id="genero" class="form-control"> |
|||
<option value="Masculino" {{$trabajador ? ($trabajador->genero == 'Masculino' ? 'selected' : '') : ''}}>Masculino</option> |
|||
<option value="Femenino" {{$trabajador ? ($trabajador->genero == 'Femenino' ? 'selected' : '') : ''}}>Femenino</option> |
|||
<option value="Otro" {{$trabajador ? ($trabajador->genero == 'Otro' ? 'selected' : '') : ''}}>Otro</option> |
|||
</select> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="sueldo" class="form-label">Sueldo</label> |
|||
<input type="number" step="0.01" class="form-control" id="sueldo" name="sueldo" value="{{$trabajador ? $trabajador->sueldo : ''}}" placeholder="Ingrese el sueldo" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="puesto" class="form-label">Puesto</label> |
|||
<select name="puesto_id" id="puesto" class="form-control"> |
|||
@foreach($puestos as $puesto) |
|||
<option value="{{$puesto->id}}" {{$trabajador ? ($trabajador->puesto_id == $puesto->id ? 'selected' : '') : ''}}>{{$puesto->nombre}}</option> |
|||
@endforeach |
|||
</select> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="numero_seguro" class="form-label">Número de Seguro</label> |
|||
<input type="text" class="form-control" id="numero_seguro" name="numero_seguro" value="{{$trabajador ? $trabajador->numero_seguro : ''}}" placeholder="Ingrese el número de seguro" required> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label for="correo_electronico" class="form-label">Correo Electrónico</label> |
|||
<input type="email" class="form-control" id="correo_electronico" name="correo_electronico" value="{{$trabajador ? $trabajador->correo_electronico : ''}}" placeholder="Ingrese el correo electrónico"> |
|||
</div> |
|||
<button type="submit" class="btn btn-primary">Guardar</button> |
|||
<a href="{{ route('trabajadores.index') }}" class="btn btn-danger">Cancelar</a> |
|||
</form> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
@endsection |
Loading…
Reference in new issue