Navigation auf Plan-Ebene und gespeicherte Analysen (Roadmap-Redesign)
Deploy App / deploy (push) Successful in 1m45s
Deploy App / deploy (push) Successful in 1m45s
Sidebar zweistufig: pro Plan die Unterpunkte Szenarien / Effektive Werte / Analysen; Klick auf Plan-Name oeffnet ein Plan-Dashboard. Plan-Dashboard: Kennzahlen, gerechnete Werte ausdruecklich "laut Basisszenario", Ist-Abweichung falls erfasst. Szenario-Liste: Version, Elementzahl, Endvermoegen, Ruinalter + Aktionen Historie und Matrix. Baum in der Sidebar bleibt. Analysen: vier umklappende Kacheln (auch per Antippen). Grafiken oeffnen neu mit Auswahl EINER Grafik. Szenario-Vergleich zu den Grafiken, CSV-Export auf die Matrix. Gespeicherte Analysen: Grafik/MC/Einflussfaktoren als ZAHLEN einfrieren (read-only, nichts wird neu gerechnet) -- druckfaehig fuer den spaeteren PDF-Bericht, ohne finalWealthSorted. Einheitliche generische Ergebnisform. Neue Tabelle SavedAnalysis, Endpunkte /analyses und /dashboard, Module analyses.ts, Komponenten PlanViews/SavedAnalysisView/SaveAnalysisButton. Kein Eingriff in den Rechenkern. Spezifikation 0.24 (3.10 und 9.30 neu). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -35,6 +35,7 @@ model User {
|
||||
plans Plan[]
|
||||
versions ScenarioVersion[]
|
||||
actuals ActualsSet[]
|
||||
analyses SavedAnalysis[]
|
||||
}
|
||||
|
||||
enum HouseholdType {
|
||||
@@ -111,6 +112,36 @@ model Plan {
|
||||
scenarios Scenario[]
|
||||
actuals ActualsSet[]
|
||||
persons PlanPerson[]
|
||||
analyses SavedAnalysis[]
|
||||
}
|
||||
|
||||
// Eine festgehaltene Analyse (Roadmap Nr. 5 / Analysen-Ansicht). Haelt EINGABEN und ERGEBNIS
|
||||
// als Zahlen fest -- read-only, es wird nichts neu gerechnet. Zahlen statt Bild, damit der
|
||||
// spaetere PDF-Bericht daraus vektoriell zeichnen kann.
|
||||
model SavedAnalysis {
|
||||
id String @id @default(cuid())
|
||||
planId String
|
||||
plan Plan @relation(fields: [planId], references: [id], onDelete: Cascade)
|
||||
|
||||
name String
|
||||
type String // CHART | MONTE_CARLO | SENSITIVITY
|
||||
|
||||
// Denormalisierte Kerndaten fuer die Liste.
|
||||
scenarioName String?
|
||||
versionLabel String?
|
||||
metric String @default("nominal")
|
||||
source String @default("PLAN")
|
||||
summary String?
|
||||
|
||||
inputs Json @default("{}")
|
||||
result Json @default("{}")
|
||||
|
||||
createdById String
|
||||
createdBy User @relation(fields: [createdById], references: [id], onDelete: Cascade)
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
|
||||
@@index([planId, createdAt])
|
||||
}
|
||||
|
||||
// Ein erfasster Stand der WIRKLICHKEIT zu einem Stichtag (Roadmap Nr. 5).
|
||||
|
||||
Reference in New Issue
Block a user