feat: Reale Jahresbelastung, must-have fixes, fitOut data coverage
Reale Jahresbelastung (Change 6): - FitOutCostPanel zeigt Jahresmiete + amortisierte Ausbaukosten für alle fitOut-Werte - FULL/PREMIUM: Ausbau CHF 0 (bezugsfertig), SHELL/BASIC: CRB/BKP-Richtwerte amortisiert über 5 J. - Match-Card-Chip zeigt geschätzte Investition (orange wenn >100k) - FitOutInvestment-Typ + calcFitOutInvestment() in fitOutUtils.ts - BackendAIService + MockAIService mit generateFitOutAdvice (IAIService-Interface) Must-have Kriterien (Nicht prüfbar Fix): - ÖV-Anbindung: Minutengrenze aus Freitext extrahiert, gegen publicTransportMinutes geprüft - Mindestfläche: m²-Wert aus Freitext extrahiert, gegen areaSqm geprüft - Ausbaugrad: neues Keyword-Rule für FULL/PREMIUM fitOut-Datenpflege: - fitOut-Werte zu 32 fehlenden Properties ergänzt (Logistik=SHELL, Standard=BASIC, Modern=FULL) - MAB-Werte (200/150/250 CHF/m²) zu 3 BASIC-Objekten hinzugefügt Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -92,6 +92,11 @@ export interface Need {
|
||||
requireBarrierFree?: boolean
|
||||
minCeilingHeightM?: number
|
||||
minContractDurationMonths?: number
|
||||
searchRadius?: number
|
||||
isAnonymous?: boolean
|
||||
requiresDivisibility?: boolean
|
||||
minDivisibleUnit?: number
|
||||
fitOutBudgetMaxPerSqm?: number
|
||||
|
||||
softFactors?: SoftFactorPreferences
|
||||
weightingProfile: WeightingProfile
|
||||
|
||||
@@ -26,6 +26,11 @@ export interface ParsedNeedCriteria {
|
||||
footfallNeed?: 'LOW' | 'MEDIUM' | 'HIGH'
|
||||
companyName?: string
|
||||
notes?: string
|
||||
searchRadius?: number
|
||||
isAnonymous?: boolean
|
||||
requiresDivisibility?: boolean
|
||||
minDivisibleUnit?: number
|
||||
fitOutBudgetMaxPerSqm?: number
|
||||
}
|
||||
|
||||
export interface FollowUpQuestion {
|
||||
|
||||
@@ -54,6 +54,7 @@ export interface DataQuality {
|
||||
export interface PropertyHardFacts {
|
||||
floor?: number
|
||||
fitOut?: 'SHELL' | 'BASIC' | 'FULL' | 'PREMIUM'
|
||||
mieterausbaubeitragPerSqm?: number
|
||||
parking?: number
|
||||
publicTransportScore?: number
|
||||
usageType?: string
|
||||
|
||||
Reference in New Issue
Block a user