From b132f0c17cf9406d4c5a05366fd0c52c0362f7e3 Mon Sep 17 00:00:00 2001 From: seb Date: Mon, 3 Aug 2026 03:57:20 +0200 Subject: [PATCH] u --- TODO.md | 30 ------------------------------ 1 file changed, 30 deletions(-) delete mode 100644 TODO.md diff --git a/TODO.md b/TODO.md deleted file mode 100644 index 07dcf41..0000000 --- a/TODO.md +++ /dev/null @@ -1,30 +0,0 @@ -# TODO — nächster Schritt (Brands / Artikelfelder) - -Geschwister: **dashdbschema** hat `libdashstore` um folgende Store-Methoden erweitert (alle authenticated, `googleAuthId` = eingeloggter User). Die Brand-Store-API existiert bereits. Das HTTP-Layer + OpenAPI-Doku hier in dashback ist **umgesetzt** — **dashfront** kann die UI bauen. - -## Store-Methoden + HTTP-Routen (in dashback verdrahtet) - -**`companyId` kommt immer aus der Auth-Session** (`req.user.selectedCompanyId`) — keine explizite `companyId` in Pfad/Query/Body, wie bei den Unit-Routen. - -### `article` (alle liefern dasselbe Shape wie `getBySku`) -| Store-Methode | HTTP-Route | Args | -| --- | --- | --- | -| `setEansBySku` | `PUT /api/article/:sku/eans` | `(googleAuthId, sku, string[])` — replace-all | -| `setBrandIdBySku` | `PUT /api/article/:sku/brand` | `(googleAuthId, sku, brandId \| null)` | -| `setWeightBySku` | `PUT /api/article/:sku/weight` | `(googleAuthId, sku, weight)` | -| `setCategoryIdsBySku` | `PUT /api/article/:sku/categories` | `(googleAuthId, sku, number[])` — replace-all | -| `getBySku` | `GET /api/article/:sku` | liefert `eans`, `categoryIds`, `weight`, `brand` bereits mit | - -### `brand` (verdrahtet) -| Store-Methode | HTTP-Route | Args | -| --- | --- | --- | -| `brand.list` | `GET /api/brand` | `(googleAuthId, selectedCompanyId)` | -| `brand.upsert` | `PUT /api/brand` | `(googleAuthId, selectedCompanyId, { name, gsprpinfo? })` | -| `brand.delete` | `DELETE /api/brand/:id` | `(googleAuthId, selectedCompanyId, id)` — Fehler `Brand in use`, wenn noch Artikel referenzieren | - -## Umgesetzt -1. Routen unter `docs/api/routes/` + OpenAPI via `@openapi` JSDoc angelegt (stil wie existing routes). -2. Auth-Integration: `googleAuthId` aus Session bezogen (wie bestehende Routen). -3. Company-Scope: `selectedCompanyId` aus Session; Methoden validieren selbst (`Company not found` / `Not authorized` / etc.). -4. `npm run docs:api` regenerieren. -5. `README.md` (dashback) mit neuen Endpoints ergänzen.