++ gruppi di servizio: sorvegliante con utenza limitata, pacchetto di territori, assegnazione ai membri
Il gruppo ha un sorvegliante (proclamatore con utenza: email e password temporanea, senza conferma dell'email) e dei membri; l'amministratore mette in blocco dei territori nel pacchetto del gruppo. Il pacchetto non e' un'assegnazione e non tocca le statistiche; quando il sorvegliante da' un territorio a un membro nasce un'assegnazione normale con gruppo_servizio_id. Al rientro il territorio torna in reparto. Sciogliere il gruppo libera pacchetto e membri e disattiva l'utenza. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -24,6 +24,9 @@ use App\Livewire\Proclamatori\ProclamatoreEdit;
|
||||
use App\Livewire\Proclamatori\ProclamatoreCestino;
|
||||
use App\Livewire\Assegnazioni\Assegna;
|
||||
use App\Livewire\Assegnazioni\Rientra;
|
||||
use App\Livewire\Gruppi\GruppiIndex;
|
||||
use App\Livewire\Gruppi\GruppoShow;
|
||||
use App\Livewire\Gruppi\MioGruppo;
|
||||
use App\Livewire\Campagne\CampagnaIndex;
|
||||
use App\Livewire\Campagne\CampagnaCreate;
|
||||
use App\Livewire\Campagne\CampagnaShow;
|
||||
@@ -163,10 +166,20 @@ Route::middleware(['auth', 'verified'])->group(function () {
|
||||
Route::middleware('permission:territori.assign')->group(function () {
|
||||
Route::get('assegnazioni/assegna/{territorioId?}', Assegna::class)->name('assegnazioni.assegna');
|
||||
});
|
||||
Route::middleware('permission:territori.return')->group(function () {
|
||||
// Il rientro lo registra anche il sorvegliante di gruppo, ma solo per il
|
||||
// suo gruppo: il controllo fine è in Rientra::autorizza().
|
||||
Route::middleware('permission:territori.return|gruppo.gestisci')->group(function () {
|
||||
Route::get('assegnazioni/{assegnazione}/rientra', Rientra::class)->name('assegnazioni.rientra');
|
||||
});
|
||||
|
||||
// Il mio gruppo: la sola pagina del sorvegliante di gruppo (vedi anche
|
||||
// il middleware LimitaSorvegliante).
|
||||
Route::middleware('permission:gruppo.gestisci')->group(function () {
|
||||
Route::get('mio-gruppo', MioGruppo::class)->name('mio-gruppo');
|
||||
Route::get('mio-gruppo/territori/{territorio}/pdf', [TerritorioFileController::class, 'pdfGruppo'])
|
||||
->name('mio-gruppo.pdf');
|
||||
});
|
||||
|
||||
// Campagne — visualizzazione per chi ha campagne.manage; sola lettura per i
|
||||
// non-admin.
|
||||
Route::middleware('permission:campagne.manage')->group(function () {
|
||||
@@ -200,6 +213,8 @@ Route::middleware(['auth', 'verified'])->group(function () {
|
||||
Route::middleware('permission:settings.manage')->group(function () {
|
||||
Route::get('impostazioni', SettingsEdit::class)->name('settings.edit');
|
||||
Route::get('utenti', UsersIndex::class)->name('users.index');
|
||||
Route::get('gruppi', GruppiIndex::class)->name('gruppi.index');
|
||||
Route::get('gruppi/{gruppo}', GruppoShow::class)->name('gruppi.show');
|
||||
Route::get('zone', ZoneIndex::class)->name('zone.index');
|
||||
Route::get('tipologie', TipologieIndex::class)->name('tipologie.index');
|
||||
Route::get('xml-exchange', XmlExchange::class)->name('xml.exchange');
|
||||
|
||||
Reference in New Issue
Block a user