netgescon-day0/config/netgescon.php

178 lines
5.7 KiB
PHP
Executable File

<?php
return [
'version' => env('NETGESCON_VERSION', '0.8.1'),
'ui' => [
'force_filament' => env('NETGESCON_FORCE_FILAMENT', true),
],
/*
|--------------------------------------------------------------------------
| Layout Configuration
|--------------------------------------------------------------------------
|
| Questa configurazione gestisce i layout utilizzati dall'applicazione
| e previene l'uso di layout obsoleti o non autorizzati.
|
*/
'active_layout' => 'admin.layouts.netgescon',
'defaults' => [
'default_stabile_id' => env('NETGESCON_DEFAULT_STABILE_ID'),
'default_gestione' => env('NETGESCON_DEFAULT_GESTIONE', 'ordinaria'),
'default_anno_gestione' => env('NETGESCON_DEFAULT_ANNO_GESTIONE'),
],
'deprecated_layouts' => [
'layouts.app-universal-v2',
'layouts.app',
'layouts.app-clean',
],
/*
|--------------------------------------------------------------------------
| API Configuration
|--------------------------------------------------------------------------
|
| Configurazione per le API REST di integrazione con gestionale esterno
|
*/
'api_key' => env('NETGESCON_API_KEY', 'default_key'),
'api_enabled' => env('NETGESCON_API_ENABLED', false),
'max_records_per_sync' => 1000,
'allowed_ips' => [
'127.0.0.1',
'192.168.0.0/24',
'10.0.0.0/8',
],
/*
|--------------------------------------------------------------------------
| Role-Based Access Configuration
|--------------------------------------------------------------------------
|
| Configurazione per gestire i permessi basati sui ruoli utente
|
*/
'user_roles' => [
'amministratore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['*'], // Accesso completo
'menus' => [
'dashboard',
'stabili',
'palazzine',
'unita-immobiliari',
'condomini',
'contabilita',
'assemblee',
'risorse-economiche',
'affitti',
'fiscale',
'comunicazioni',
'pratiche',
'consumi',
'tickets',
'superadmin', // Solo per amministratori principali
],
],
'collaboratore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['read', 'create', 'update'], // No delete
'menus' => [
'dashboard',
'stabili' => ['read', 'create', 'update'],
'palazzine' => ['read', 'create', 'update'],
'unita-immobiliari' => ['read', 'create', 'update'],
'condomini' => ['read'],
'contabilita' => ['read'],
'comunicazioni' => ['read', 'create'],
'tickets' => ['read', 'create', 'update'],
],
],
'operatore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['read', 'create'], // Solo lettura e inserimento
'menus' => [
'dashboard',
'stabili' => ['read'],
'palazzine' => ['read'],
'unita-immobiliari' => ['read'],
'tickets' => ['read', 'create'],
],
],
'condomino' => [
'layout' => 'condomino.layout', // Layout diverso per condomini
'permissions' => ['read'],
'menus' => [
'dashboard',
'my-unita' => ['read'],
'documenti' => ['read'],
'comunicazioni' => ['read'],
'contabilita' => ['read'], // Solo la sua quota
],
],
],
/*
|--------------------------------------------------------------------------
| Menu Visibility Rules
|--------------------------------------------------------------------------
|
| Regole per la visibilità dei menu basate sui ruoli
|
*/
'menu_rules' => [
'superadmin' => ['amministratore'],
'gestione-documenti' => ['amministratore', 'collaboratore'],
'contabilita-avanzata' => ['amministratore'],
'backup-ripristino' => ['amministratore'],
'configurazione-sistema' => ['amministratore'],
],
'google' => [
'drive_template_folders' => [
'bilanci',
'riscaldamento',
'visure_catastali',
'ricevute_incassi',
'passaggio_consegne',
'locali_condominiali',
'cassetto_fiscale',
'certificazione_unica',
'agenzia_entrate',
'fatture_xml',
'posta_e_comunicazioni',
'fatture_pdf',
'pec',
'verbali_assemblea',
'regolamento_condominio',
'tabelle_millesimali',
'fornitori',
'banca_cc',
'posta_cc',
'utenze',
'assicurazione',
'assemblee',
'codice_fiscale',
'scambio',
'zip',
'anagrafiche',
'bonifici',
'f_24',
'condomini',
'lavori_vari',
'informative',
'verifiche_periodiche',
],
'drive_template_year_root' => 'archivio_per_anno',
'drive_template_year_model' => '_anno_modello',
],
];