++ fix
This commit is contained in:
@@ -48,6 +48,10 @@ class Registro extends Component
|
||||
public bool $showDeleteConfirm = false;
|
||||
public ?int $deleteId = null;
|
||||
|
||||
// ─── Modal modulo S-13 ──────────────────────────────────────
|
||||
public bool $showS13Modal = false;
|
||||
public string $s13Anno = '';
|
||||
|
||||
protected $queryString = [
|
||||
'search' => ['except' => ''],
|
||||
'filtroAnno' => ['except' => ''],
|
||||
@@ -176,10 +180,28 @@ class Registro extends Component
|
||||
|
||||
// ─── Modulo S-13 ────────────────────────────────────────────
|
||||
|
||||
/**
|
||||
* Chiede quale anno di servizio stampare. L'anno del filtro è solo la
|
||||
* proposta iniziale: il modulo finisce in archivio e viene firmato, quindi
|
||||
* la scelta va confermata invece di essere ereditata da uno stato della
|
||||
* pagina che l'utente può non avere presente.
|
||||
*/
|
||||
public function openS13(): void
|
||||
{
|
||||
abort_if(!auth()->user()->can('settings.manage'), 403);
|
||||
|
||||
$this->s13Anno = $this->filtroAnno !== ''
|
||||
? $this->filtroAnno
|
||||
: (string) AnnoTeocratico::corrente()->id;
|
||||
|
||||
$this->resetValidation();
|
||||
$this->showS13Modal = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Modulo ufficiale S-13-I ("Registrazione delle assegnazioni del
|
||||
* territorio") compilato con le assegnazioni dell'anno di servizio
|
||||
* selezionato nei filtri.
|
||||
* territorio") compilato con le assegnazioni dell'anno di servizio scelto
|
||||
* nella modale.
|
||||
*
|
||||
* Solo amministratore, come il resto del CRUD di questa pagina: il modulo
|
||||
* espone in un unico file l'anagrafica completa di chi ha avuto quale
|
||||
@@ -190,12 +212,17 @@ class Registro extends Component
|
||||
{
|
||||
abort_if(!auth()->user()->can('settings.manage'), 403);
|
||||
|
||||
// Il modulo è per definizione relativo a un singolo anno di servizio:
|
||||
// con "Tutti gli anni" selezionato si ripiega sull'anno corrente.
|
||||
$anno = $this->filtroAnno
|
||||
? AnnoTeocratico::find($this->filtroAnno)
|
||||
: null;
|
||||
$anno ??= AnnoTeocratico::corrente();
|
||||
$this->validate(
|
||||
['s13Anno' => 'required|exists:anni_teocratici,id'],
|
||||
[
|
||||
's13Anno.required' => "Seleziona l'anno di servizio da stampare.",
|
||||
's13Anno.exists' => "L'anno di servizio selezionato non esiste.",
|
||||
]
|
||||
);
|
||||
|
||||
$anno = AnnoTeocratico::findOrFail($this->s13Anno);
|
||||
|
||||
$this->showS13Modal = false;
|
||||
|
||||
$pdf = Pdf::loadView('pdf.registro-s13', [
|
||||
'annoLabel' => $anno->label,
|
||||
|
||||
Reference in New Issue
Block a user