netgescon-master/docs/02-architettura-laravel/02-unita-immobiliari/ANALISI-UNITA-IMMOBILIARI.md
Pikappa2 480e7eafbd 🎯 NETGESCON - Setup iniziale repository completo
📋 Commit iniziale con:
-  Documentazione unificata in docs/
-  Codice Laravel in netgescon-laravel/
-  Script automazione in scripts/
-  Configurazione sync rsync
-  Struttura organizzata e pulita

🔄 Versione: 2025.07.19-1644
🎯 Sistema pronto per Git distribuito
2025-07-19 16:44:47 +02:00

517 lines
16 KiB
Markdown

# NETGESCON - ANALISI UNITÀ IMMOBILIARI
## 📋 OVERVIEW
Le unità immobiliari sono i singoli locali/appartamenti che compongono uno stabile. Ogni unità ha caratteristiche proprie e può avere diversi utilizzi e tipologie di proprietà/inquilinato.
## 🏠 STRUTTURA DATI UNITÀ IMMOBILIARE
### Identificativi Base
- **ID Unità** (Primary Key, Auto-increment)
- **Stabile ID** (Foreign Key)
- **Codice Unità** (es: "A-1-3-05" = Palazzina A, Scala 1, Piano 3, Interno 05)
- **Denominazione** (es: "Appartamento 5 - Piano Terzo")
### Posizione Fisica
- **Palazzina** (A, B, C... o numerico 1, 2, 3...)
- **Scala** (1, 2, 3... o A, B, C...)
- **Piano** (-2, -1, 0, 1, 2, 3... dove 0=piano terra)
- **Interno** (numero interno/appartamento)
- **Posizione Dettagliata** (fronte strada, cortile interno, angolo, etc)
### Dati Catastali Specifici
- **Sezione Urbana**
- **Foglio**
- **Particella**
- **Subalterno** (UNIVOCO per ogni unità)
- **Categoria Catastale** (A/1, A/2, A/3, A/4, C/1, C/2, etc)
- **Classe**
- **Consistenza** (vani, mq, mc)
- **Rendita Catastale**
- **Superficie Commerciale** (mq)
- **Superficie Calpestabile** (mq)
### Tipologia e Utilizzo
- **Tipo Unità**
- Abitazione
- Studio professionale
- Attività commerciale
- Magazzino/Deposito
- Box/Garage
- Cantina
- Soffitta
- **Spazio Comune Redditizio** ⭐ (NOVITÀ)
- **Locale Tecnico** ⭐ (NOVITÀ)
- Altro
- **Utilizzo Attuale**
- Abitazione principale
- Abitazione secondaria
- Studio medico
- Studio legale
- Struttura ricettiva (B&B, Airbnb)
- Attività commerciale
- **Locale commerciale in affitto** ⭐ (NOVITÀ)
- **Sala eventi affittabile** ⭐ (NOVITÀ)
- **Parcheggio a pagamento** ⭐ (NOVITÀ)
- **Lavanderia comune** ⭐ (NOVITÀ)
- **Deposito attrezzature** ⭐ (NOVITÀ)
- Ufficio
- Magazzino
- Non utilizzato
### Autorizzazioni e Licenze
- **CIN** (Codice Identificativo Nazionale - strutture ricettive)
- **Licenza Commerciale** (se attività)
- **Autorizzazione Professionale** (studi medici/legali)
- **Cambio Destinazione d'Uso** (pratica comune)
- **Data Scadenza Autorizzazioni**
- **Note Autorizzazioni**
### Caratteristiche Strutturali
- **Numero Locali**
- **Numero Bagni**
- **Numero Camere da Letto**
- **Presenza Cucina** (abitabile/cucinotto/angolo cottura)
- **Balconi/Terrazze** (numero + mq totali)
- **Giardino Privato** (SI/NO + mq)
- **Posto Auto** (assegnato/proprietà/nessuno)
- **Cantina** (assegnata/proprietà/nessuna)
- **Soffitta** (assegnata/proprietà/nessuna)
### Impianti
- **Riscaldamento** (centralizzato/autonomo/assente)
- **Climatizzazione** (presente/assente)
- **Impianto Elettrico** (anno rifacimento/conformità)
- **Impianto Idraulico** (anno rifacimento/stato)
- **Impianto Gas** (presente/assente/certificazione)
- **Infissi** (tipologia/anno sostituzione)
## 👥 GESTIONE PROPRIETÀ E INQUILINATO
### Proprietari
- **Tipo Proprietà**
- Unico Proprietario
- Comproprietà (più proprietari)
- Nuda Proprietà + Usufrutto
- Società/Ente
- **Quota Proprietà** (%, se comproprietà)
- **Data Acquisto**
- **Provenienza** (acquisto, eredità, donazione, etc)
### Inquilini/Conduttori
- **Presenza Inquilino** (SI/NO)
- **Tipo Contratto**
- Abitazione (4+4 anni)
- Abitazione transitorio
- Commerciale (6+6 anni)
- Turistico breve
- Comodato gratuito
- Altro
- **Data Inizio Contratto**
- **Data Scadenza Contratto**
- **Canone Mensile**
- **Modalità Pagamento**
- **Deposito Cauzionale**
### Deleghe e Rappresentanze
- **Delega Amministratore** (chi può parlare per l'unità)
- **Delega Assemblea** (chi vota in assemblea)
- **Referente Principale** (persona di contatto)
- **Amministratore di Sostegno** (se presente)
## 💰 GESTIONE ECONOMICA UNITÀ
### Millesimi di Proprietà
- **Millesimi Generali** (quota su 1000 totali)
- **Millesimi Riscaldamento** (se centralizzato)
- **Millesimi Acqua** (se centralizzata)
- **Millesimi Ascensore** (se presente e utilizzabile)
- **Millesimi Scale** (per manutenzione scale specifiche)
- **Altri Millesimi Particolari**
### Divisione Spese
**REGOLA BASE**: Ogni voce di spesa può essere divisa diversamente tra Proprietario e Inquilino
#### Spese Ordinarie
- **Pulizia Scale**: 100% Proprietario / 0% Inquilino (default)
- **Energia Elettrica**: 100% Proprietario / 0% Inquilino
- **Manutenzione Ascensore**: 100% Proprietario / 0% Inquilino
- **Amministratore**: 100% Proprietario / 0% Inquilino
- **Assicurazione**: 100% Proprietario / 0% Inquilino
#### Spese Straordinarie
- **Rifacimento Tetto**: 100% Proprietario / 0% Inquilino
- **Rifacimento Facciate**: 100% Proprietario / 0% Inquilino
- **Sostituzione Ascensore**: 100% Proprietario / 0% Inquilino
#### Spese Miste (configurabili)
- **Portineria**: 70% Proprietario / 30% Inquilino (esempio)
- **Giardinaggio**: 80% Proprietario / 20% Inquilino (esempio)
#### Spese Particolari per Utilizzo
**Strutture Ricettive** (B&B, Airbnb):
- Maggiorazione del 50% su tutte le spese ordinarie
- Deposito cauzionale maggiorato
- Controlli periodici conformità
**Attività Commerciali**:
- Calcolo in base a orari apertura
- Maggiorazioni per utilizzo intensivo
- Spese pubblicitarie condominiali
### Rendite e Entrate
- **Canoni Pubblicità** (su tetto/facciate): 100% Proprietario
- **Affitti Antenne/Ripetitori**: 100% Proprietario
- **Rimborsi Assicurazioni**: ripartiti secondo evento
- **Bonus/Detrazioni Fiscali**: 100% Proprietario (salvo accordi)
## 🏗️ SCHEMA DATABASE (Preliminare)
```sql
-- Tabella principale unità immobiliari
CREATE TABLE unita_immobiliari (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
stabile_id BIGINT NOT NULL,
codice_unita VARCHAR(20) NOT NULL,
denominazione VARCHAR(255),
-- Posizione fisica
palazzina VARCHAR(10),
scala VARCHAR(10),
piano TINYINT,
interno VARCHAR(10),
posizione_dettagliata VARCHAR(255),
-- Dati catastali
sezione_urbana VARCHAR(10),
foglio VARCHAR(20),
particella VARCHAR(20),
subalterno VARCHAR(20) UNIQUE NOT NULL,
categoria_catastale VARCHAR(10),
classe VARCHAR(10),
consistenza DECIMAL(8,2),
rendita_catastale DECIMAL(10,2),
-- Superfici
superficie_commerciale DECIMAL(8,2),
superficie_calpestabile DECIMAL(8,2),
-- Tipologia
tipo_unita ENUM('abitazione','studio','commerciale','magazzino','box','cantina','soffitta','altro'),
utilizzo_attuale VARCHAR(255),
-- Caratteristiche
numero_locali TINYINT,
numero_bagni TINYINT,
numero_camere TINYINT,
ha_balcone BOOLEAN DEFAULT FALSE,
mq_balconi DECIMAL(6,2),
ha_giardino BOOLEAN DEFAULT FALSE,
mq_giardino DECIMAL(8,2),
-- Millesimi
millesimi_generali DECIMAL(6,3) NOT NULL,
millesimi_riscaldamento DECIMAL(6,3),
millesimi_acqua DECIMAL(6,3),
millesimi_ascensore DECIMAL(6,3),
-- Impianti e stato
riscaldamento ENUM('centralizzato','autonomo','assente'),
anno_ristrutturazione YEAR,
stato_conservazione ENUM('ottimo','buono','discreto','da_ristrutturare'),
-- Audit
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
created_by INT,
updated_by INT,
-- Vincoli e indici
FOREIGN KEY (stabile_id) REFERENCES stabili(id) ON DELETE CASCADE,
INDEX idx_stabile (stabile_id),
INDEX idx_subalterno (subalterno),
INDEX idx_posizione (stabile_id, palazzina, scala, piano, interno),
UNIQUE KEY unique_unita (stabile_id, palazzina, scala, piano, interno)
);
-- Tabella proprietari unità
CREATE TABLE proprieta_unita (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
unita_id BIGINT NOT NULL,
persona_id BIGINT NOT NULL, -- FK a anagrafica
tipo_proprieta ENUM('unico','comproprietario','nudo_proprietario','usufruttuario','societa'),
quota_proprieta DECIMAL(5,2) DEFAULT 100.00, -- % di proprietà
data_acquisizione DATE,
modalita_acquisizione ENUM('acquisto','eredita','donazione','altro'),
note TEXT,
attivo BOOLEAN DEFAULT TRUE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (unita_id) REFERENCES unita_immobiliari(id) ON DELETE CASCADE,
INDEX idx_unita (unita_id),
INDEX idx_persona (persona_id)
);
-- Tabella inquilini/conduttori
CREATE TABLE contratti_locazione (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
unita_id BIGINT NOT NULL,
persona_id BIGINT NOT NULL, -- FK a anagrafica
tipo_contratto ENUM('abitazione_ordinario','abitazione_transitorio','commerciale','turistico','comodato','altro'),
data_inizio DATE NOT NULL,
data_scadenza DATE,
canone_mensile DECIMAL(8,2),
deposito_cauzionale DECIMAL(8,2),
modalita_pagamento VARCHAR(255),
attivo BOOLEAN DEFAULT TRUE,
note TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (unita_id) REFERENCES unita_immobiliari(id) ON DELETE CASCADE,
INDEX idx_unita (unita_id),
INDEX idx_inquilino (persona_id),
INDEX idx_scadenza (data_scadenza)
);
-- Tabella divisione spese per unità
CREATE TABLE divisione_spese_unita (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
unita_id BIGINT NOT NULL,
tipo_spesa VARCHAR(100) NOT NULL, -- 'ordinaria_pulizia', 'straordinaria_tetto', etc
percentuale_proprietario DECIMAL(5,2) DEFAULT 100.00,
percentuale_inquilino DECIMAL(5,2) DEFAULT 0.00,
note VARCHAR(255),
FOREIGN KEY (unita_id) REFERENCES unita_immobiliari(id) ON DELETE CASCADE,
UNIQUE KEY unique_spesa_unita (unita_id, tipo_spesa),
INDEX idx_unita (unita_id)
);
-- Tabella autorizzazioni/licenze unità
CREATE TABLE autorizzazioni_unita (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
unita_id BIGINT NOT NULL,
tipo_autorizzazione ENUM('cin','licenza_commerciale','autorizzazione_sanitaria','cambio_destinazione','altro'),
codice_autorizzazione VARCHAR(100),
data_rilascio DATE,
data_scadenza DATE,
ente_rilascio VARCHAR(255),
stato ENUM('attiva','scaduta','sospesa','revocata'),
note TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (unita_id) REFERENCES unita_immobiliari(id) ON DELETE CASCADE,
INDEX idx_unita (unita_id),
INDEX idx_scadenza (data_scadenza),
INDEX idx_tipo (tipo_autorizzazione)
);
```
## 🔄 AUTOMATISMI E FUNZIONALITÀ
### Generazione Automatica da Stabile
Quando si crea uno stabile, per ogni unità generata automaticamente:
1. **Calcolo Codice Unità**: `{Palazzina}-{Scala}-{Piano}-{Interno}`
2. **Eredità Dati Catastali**: Sezione, Foglio, Particella dallo stabile
3. **Generazione Subalterno**: Progressivo o manuale
4. **Calcolo Millesimi**: Automatico se tutti uguali, manuale se diversi
5. **Posizionamento Fisico**: Coordinate nella struttura del building
### Calcoli Automatici Millesimi
```php
// Se tutti appartamenti uguali
$millesimi_per_unita = 1000 / $numero_totale_unita;
// Se in base a superficie
$millesimi_unita = ($superficie_unita / $superficie_totale_stabile) * 1000;
// Verifica totale = 1000
$controllo_somma = array_sum($millesimi_tutte_unita); // DEVE essere 1000
```
### Gestione Vicini per Problemi
```php
// Algoritmo identificazione unità sovrastante
function getUnitaSovrastante($unita) {
return UnitaImmobiliare::where('stabile_id', $unita->stabile_id)
->where('palazzina', $unita->palazzina)
->where('scala', $unita->scala)
->where('piano', $unita->piano + 1)
->where('interno', $unita->interno)
->first();
}
// Unità laterali stesso piano
function getUnitaLaterali($unita) {
return UnitaImmobiliare::where('stabile_id', $unita->stabile_id)
->where('palazzina', $unita->palazzina)
->where('scala', $unita->scala)
->where('piano', $unita->piano)
->where('interno', '!=', $unita->interno)
->get();
}
```
## 📊 REPORTISTICA E ANALISI
### Dashboard Unità
- **Occupazione**: % unità occupate vs libere
- **Tipologie Utilizzo**: grafico torta
- **Morosità**: unità con rate non pagate
- **Scadenze Contratti**: prossime 6 mesi
- **Autorizzazioni in Scadenza**: alert automatici
### Verifiche Conformità
- **Check Millesimi**: somma = 1000
- **Verifica Codici Catastali**: univocità subalterni
- **Controllo Quote Proprietà**: somma = 100% per unità
- **Audit Modifiche**: log di tutte le variazioni
## 🚀 FUNZIONALITÀ AVANZATE
### Integrazione con Catasto
- **Verifica automatica** dati catastali online
- **Aggiornamento rendite** catastali
- **Download visure** automatiche
- **Alert variazioni** catastali
### Gestione Smart
- **QR Code per unità**: accesso rapido a dati
- **App mobile proprietari**: controllo dati propri
- **Notifiche push**: scadenze, comunicazioni
- **Chat condominiale**: comunicazione tra unità
### Analytics Avanzate
- **Analisi consumi**: per tipologia utilizzo
- **Predizione morosità**: machine learning
- **Ottimizzazione spese**: suggerimenti automatici
- **Benchmark mercato**: confronto valori immobiliari
## 🏛️ SPAZI COMUNI COME UNITÀ IMMOBILIARI ⭐ NOVITÀ
### Concetto Innovativo
Gli **spazi comuni redditizi** vengono gestiti come vere e proprie unità immobiliari per:
- **Tracciamento separato dei ricavi**
- **Gestione fiscale specifica**
- **Ripartizione trasparente delle rendite**
- **Manutenzione dedicata**
- **Contratti d'affitto regolari**
### Tipologie Spazi Comuni Redditizi
#### Locali Commerciali di Proprietà Condominiale
- **Negozi piano terra**
- Superficie commerciale
- Vetrine su strada
- Accesso indipendente
- Utenze separate
- **Uffici/Studi**
- Superficie ufficio
- Accessi dedicati
- Impianti autonomi
#### Spazi Eventi e Servizi
- **Sala Condominiale**
- Capienza persone
- Attrezzature incluse
- Tariffazione oraria/giornaliera
- Regolamento utilizzo
- **Terrazza/Giardino Comune**
- Superficie utilizzabile
- Capienza eventi
- Attrezzature fisse
- Limitazioni orarie
#### Servizi a Pagamento
- **Lavanderia Comune**
- Numero postazioni
- Attrezzature (lavatrici, asciugatrici)
- Tariffazione per utilizzo
- Manutenzione programmata
- **Parcheggi Visitatori Premium**
- Posti auto numerati
- Tariffazione oraria/giornaliera
- Sistema di controllo accessi
- Videosorveglianza
### Gestione Economica Spazi Comuni
#### Ricavi e Contratti
- **Contratti di Locazione**
- Durata contratto
- Canone mensile
- Clausole di adeguamento ISTAT
- Spese accessorie a carico inquilino
- **Tariffari Servizi**
- Costi orari/giornalieri
- Sconti per condomini
- Pacchetti promozionali
- Penali per danni
#### Divisione Spese e Ricavi
- **Algoritmo Ripartizione Ricavi**
- Detrazione spese di gestione
- Accantonamento manutenzione (%)
- Distribuzione residuo per millesimi
- Opzione reinvestimento miglioramenti
- **Spese Specifiche**
- Manutenzione dedicata
- Utenze separate (quando possibile)
- Assicurazioni specifiche
- Tasse e imposte
#### Reporting Fiscale
- **Dichiarazioni Redditi**
- Redditi da locazione
- Cedolare secca (se applicabile)
- Detrazioni spese manutenzione
- **IVA su Servizi**
- Regime forfettario
- Fatturazione elettronica
- Registri IVA
### Locali Tecnici Come Unità Speciali
#### Categorizzazione
- **Centrale Termica**
- Superficie e volume
- Potenza impianti
- Certificazioni sicurezza
- Schedule manutenzione
- **Locale Contatori**
- Numero utenze gestite
- Tipologie (gas, acqua, elettrico)
- Accessibilità enti
- **Locale Pompe/Autoclave**
- Potenza impianti
- Certificazioni
- Manutenzione programmata
#### Gestione Accessi e Sicurezza
- **Chiavi e Autorizzazioni**
- Amministratore (accesso completo)
- Ditte manutenzione (accesso programmato)
- Condomini (accesso limitato e accompagnato)
- Vigili del Fuoco (accesso emergenza)
- **Registro Accessi**
- Data e ora accesso
- Persona autorizzata
- Motivo intervento
- Durata permanenza
- Note anomalie
---
**Data Analisi:** 14/07/2025
**Stato:** BOZZA - In Definizione
**Prossimo Step:** Integrazione con Anagrafica + Design API