@extends('layouts.app') @section('titulo', 'Editar Usuario '.$usuario->nombre) @section('contenido')
@csrf @method('PUT')
Información Personal

Asignada al crear la cuenta; no se modifica desde aquí.

Contrato
@php $oldCobraExtras = old('cobra_extras_fin_mes'); if ($oldCobraExtras === null) { $cobraExtrasValor = $usuario->cobra_extras_fin_mes ? '1' : '0'; } else { $cobraExtrasValor = (string) $oldCobraExtras; } @endphp
@error('cobra_extras_fin_mes')
{{ $message }}
@enderror
@php $oldTipoDieta = old('dieta_pactada_tipo'); if ($oldTipoDieta !== null) { $tipoDietaValor = (string) $oldTipoDieta; } else { $tipoDietaValor = ($usuario->dieta_fija_mensual_euros !== null && (float) $usuario->dieta_fija_mensual_euros > 0) ? 'fija' : 'ticket'; } @endphp
@error('dieta_pactada_tipo')
{{ $message }}
@enderror

Elige una de las dos opciones para habilitar el campo correspondiente.

@push('scripts') @endpush @endsection @section('contenido1')
Horario Laboral
@csrf @method('PUT')
@php $etiquetasRoles = [ 'admin' => 'Administrador', 'gestor' => 'Gestor', 'oficina' => 'Oficina', 'encargado' => 'Responsable de equipo', 'trabajador' => 'Trabajador', 'contra-incendios' => 'Contra incendios', 'user' => 'Usuario', ]; $rolesSeleccionados = collect(old('roles', $usuario->roles->pluck('id')->all())) ->map(fn ($v) => (int) $v) ->all(); @endphp
Roles y permisos

Usa el interruptor de cada fila para asignar o quitar roles. Si ninguno está activo, el usuario quedará sin roles.

@csrf @method('PUT')
@foreach($roles as $role) @php $titulo = $etiquetasRoles[$role->name] ?? \Illuminate\Support\Str::title(str_replace('-', ' ', $role->name)); $activo = in_array((int) $role->id, $rolesSeleccionados, true); @endphp @endforeach
@error('roles')
{{ $message }}
@enderror @error('roles.*')
{{ $message }}
@enderror
@php $tiposFichajeSeleccionados = collect(old('tipos_fichaje', $usuario->tiposFichaje->pluck('tipo_fichaje')->all())) ->map(fn ($v) => normalizarTipoFichajeAId($v)) ->filter() ->unique() ->values() ->all(); $codigoFichajeActual = old('codigo', $usuario->tiposFichaje->firstWhere('tipo_fichaje', 1)->codigo ?? $usuario->tiposFichaje->firstWhere('tipo_fichaje', 'Código')->codigo ?? ''); @endphp
Tipos de fichaje

Activa o desactiva los métodos de fichaje del usuario. Para Código se puede fijar un código numérico (si lo dejas vacío se genera uno).

@csrf @method('PUT')
@foreach(getTiposFichaje() as $label => $value) @php $activo = in_array((int) $value, $tiposFichajeSeleccionados, true); @endphp @endforeach
@error('tipos_fichaje')
{{ $message }}
@enderror @error('tipos_fichaje.*')
{{ $message }}
@enderror
@php $mostrarCardEquipoEncargado = $usuario->hasRole('encargado'); @endphp
@if($mostrarCardEquipoEncargado)
@include('admin.usuarios._equipo_grupo')
@endif
@include('admin.usuarios._equipo_como_trabajador')
@push('scripts') @endpush @endsection