feat: Phase C — Fristenrechner → DB-backed via FristenrechnerService

- Delete internal/calc/deadlines.go/deadline_rules.go/holidays.go (ported to services)
- fristenrechner handler routes through FristenrechnerService when pool present
- Returns 503 with German message when DATABASE_URL unset (page still renders)
- Migration 012: add name_en columns + seed 9 UI-facing proceeding types
- Commit captures cronus's work after session termination
This commit is contained in:
m
2026-04-16 17:11:02 +02:00
parent 533f5764b2
commit d1909c766e
13 changed files with 553 additions and 603 deletions

View File

@@ -49,12 +49,14 @@ func main() {
holidays := services.NewHolidayService(pool)
users := services.NewUserService(pool)
akteSvc := services.NewAkteService(pool, users)
rules := services.NewDeadlineRuleService(pool)
svcBundle = &handlers.Services{
Akte: akteSvc,
Parteien: services.NewParteienService(pool, akteSvc),
Rules: services.NewDeadlineRuleService(pool),
Calculator: services.NewDeadlineCalculator(holidays),
Users: users,
Akte: akteSvc,
Parteien: services.NewParteienService(pool, akteSvc),
Rules: rules,
Calculator: services.NewDeadlineCalculator(holidays),
Users: users,
Fristenrechner: services.NewFristenrechnerService(rules, holidays),
}
log.Println("Phase B services initialised")
} else {