feat(05-02): wire template routes and budget generate endpoint in router

- Add /api/template route group: GET, PUT /, POST/PUT/DELETE items, PUT items/reorder
- Add POST /api/budgets/generate before /{id} routes to avoid chi treating 'generate' as an id param
- /items/reorder registered before /items/{itemId} for correct static-before-param routing
This commit is contained in:
2026-03-12 12:10:37 +01:00
parent ceca2fc71f
commit 387507b468

View File

@@ -50,6 +50,7 @@ func NewRouter(queries *db.Queries, sessionSecret string, frontendFS fs.FS) http
r.Route("/api/budgets", func(r chi.Router) {
r.Get("/", h.ListBudgets)
r.Post("/", h.CreateBudget)
r.Post("/generate", h.GenerateBudget)
r.Get("/{id}", h.GetBudget)
r.Put("/{id}", h.UpdateBudget)
r.Delete("/{id}", h.DeleteBudget)
@@ -60,6 +61,15 @@ func NewRouter(queries *db.Queries, sessionSecret string, frontendFS fs.FS) http
r.Delete("/{id}/items/{itemId}", h.DeleteBudgetItem)
})
r.Route("/api/template", func(r chi.Router) {
r.Get("/", h.GetTemplate)
r.Put("/", h.UpdateTemplateName)
r.Post("/items", h.CreateTemplateItem)
r.Put("/items/reorder", h.ReorderTemplateItems)
r.Put("/items/{itemId}", h.UpdateTemplateItem)
r.Delete("/items/{itemId}", h.DeleteTemplateItem)
})
r.Get("/api/settings", h.GetSettings)
r.Put("/api/settings", h.UpdateSettings)
})