netgescon-master/app/Models/Soggetto.php
Pikappa2 cb49fbfe70 Implementato dark mode completo e salvataggio impostazioni utente
- Aggiunto dark mode completo alla sidebar con classi Tailwind
- Implementato sistema di salvataggio permanente delle impostazioni utente
- Creata tabella user_settings per gestire preferenze personalizzate
- Aggiunto model UserSetting con metodi helper get/set
- Esteso controller impostazioni per supportare salvataggio e temi predefiniti
- Applicato stesso tema anche al pannello amministratore
- Aggiornate route per gestione temi in admin e superadmin
- Integrato sistema impostazioni nel layout principale con variabili CSS
- Aggiornato AppServiceProvider con helper userSetting()
- Dark mode applicato a: sidebar, modali, footer, bottoni, hover states
- Temi predefiniti: Default, Dark, Ocean con preview tempo reale
- Compatibilità completa tra pannello admin e superadmin
2025-07-05 19:22:51 +02:00

68 lines
1.6 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Support\Str;
class Soggetto extends Model
{
use HasFactory;
protected $table = 'soggetti';
/**
* The attributes that are mass assignable.
*
* @var array<int, string>
*/
protected $fillable = [
'old_id',
'nome',
'cognome',
'ragione_sociale',
'codice_fiscale',
'partita_iva',
'email',
'telefono',
'indirizzo',
'cap',
'citta',
'provincia',
'tipo',
'codice_univoco',
];
/**
* The units that belong to the subject.
*/
public function ticketsRichiesti(): HasMany
{
return $this->hasMany(Ticket::class, 'soggetto_richiedente_id', 'id');
}
public function rateEmessaResponsabile(): HasMany
{
return $this->hasMany(RataEmessa::class, 'id_soggetto_responsabile', 'id');
}
public function proprieta() {
return $this->hasMany(Proprieta::class);
}
protected static function booted()
{
static::creating(function ($soggetto) {
if (empty($soggetto->codice_univoco)) {
do {
$code = Str::upper(Str::random(8));
} while (self::where('codice_univoco', $code)->exists());
$soggetto->codice_univoco = $code;
}
});
}
}