From 086646fd1c87099fe16e47ebd310b764c056b6fc Mon Sep 17 00:00:00 2001 From: batmanisko Date: Wed, 4 Feb 2026 17:28:52 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20p=C5=99id=C3=A1n=C3=AD=20nov=C3=BDch=20t?= =?UTF-8?q?yp=C5=AF=20do=20OpenAPI=20spec=20pro=20p=C5=99e=C5=BEit=C3=AD?= =?UTF-8?q?=20regenerace?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Typy PendingQr, NotificationSettings a nové endpointy (dismissQr, notifications/settings) byly přidány přímo do YAML specifikace místo ručních úprav generovaných souborů. --- types/api.yml | 6 ++++ types/paths/notifications/settings.yml | 26 ++++++++++++++++ types/paths/pizzaDay/dismissQr.yml | 17 ++++++++++ types/schemas/_index.yml | 43 ++++++++++++++++++++++++++ 4 files changed, 92 insertions(+) create mode 100644 types/paths/notifications/settings.yml create mode 100644 types/paths/pizzaDay/dismissQr.yml diff --git a/types/api.yml b/types/api.yml index 3c546d6..8f9df9a 100644 --- a/types/api.yml +++ b/types/api.yml @@ -50,6 +50,12 @@ paths: $ref: "./paths/pizzaDay/updatePizzaDayNote.yml" /pizzaDay/updatePizzaFee: $ref: "./paths/pizzaDay/updatePizzaFee.yml" + /pizzaDay/dismissQr: + $ref: "./paths/pizzaDay/dismissQr.yml" + + # Notifikace (/api/notifications) + /notifications/settings: + $ref: "./paths/notifications/settings.yml" # Easter eggy (/api/easterEggs) /easterEggs: diff --git a/types/paths/notifications/settings.yml b/types/paths/notifications/settings.yml new file mode 100644 index 0000000..a2f46b8 --- /dev/null +++ b/types/paths/notifications/settings.yml @@ -0,0 +1,26 @@ +get: + operationId: getNotificationSettings + summary: Vrátí nastavení notifikací pro přihlášeného uživatele. + responses: + "200": + description: Nastavení notifikací + content: + application/json: + schema: + $ref: "../../schemas/_index.yml#/NotificationSettings" +post: + operationId: updateNotificationSettings + summary: Uloží nastavení notifikací pro přihlášeného uživatele. + requestBody: + required: true + content: + application/json: + schema: + $ref: "../../schemas/_index.yml#/NotificationSettings" + responses: + "200": + description: Nastavení notifikací bylo uloženo. + content: + application/json: + schema: + $ref: "../../schemas/_index.yml#/NotificationSettings" diff --git a/types/paths/pizzaDay/dismissQr.yml b/types/paths/pizzaDay/dismissQr.yml new file mode 100644 index 0000000..ffa95bb --- /dev/null +++ b/types/paths/pizzaDay/dismissQr.yml @@ -0,0 +1,17 @@ +post: + operationId: dismissQr + summary: Označí QR kód pro daný den jako uhrazený (odstraní ho ze seznamu nevyřízených). + requestBody: + required: true + content: + application/json: + schema: + properties: + date: + description: Datum Pizza day, ke kterému se QR kód vztahuje + type: string + required: + - date + responses: + "200": + description: QR kód byl označen jako uhrazený. diff --git a/types/schemas/_index.yml b/types/schemas/_index.yml index 742a219..7e6990f 100644 --- a/types/schemas/_index.yml +++ b/types/schemas/_index.yml @@ -53,6 +53,11 @@ ClientData: description: Datum a čas poslední aktualizace pizz type: string format: date-time + pendingQrs: + description: Nevyřízené QR kódy pro platbu z předchozích pizza day + type: array + items: + $ref: "#/PendingQr" # --- OBĚDY --- UserLunchChoice: @@ -527,6 +532,24 @@ NotifikaceData: type: boolean ntfy: type: boolean +NotificationSettings: + description: Nastavení notifikací pro konkrétního uživatele + type: object + properties: + ntfyTopic: + description: Téma pro ntfy push notifikace + type: string + discordWebhookUrl: + description: URL webhooku Discord kanálu + type: string + teamsWebhookUrl: + description: URL webhooku MS Teams kanálu + type: string + enabledEvents: + description: Seznam událostí, o kterých chce být uživatel notifikován + type: array + items: + $ref: "#/UdalostEnum" GotifyServer: type: object required: @@ -539,3 +562,23 @@ GotifyServer: type: array items: type: string + +# --- NEVYŘÍZENÉ QR KÓDY --- +PendingQr: + description: Nevyřízený QR kód pro platbu z předchozího Pizza day + type: object + additionalProperties: false + required: + - date + - creator + - totalPrice + properties: + date: + description: Datum Pizza day, ke kterému se QR kód vztahuje + type: string + creator: + description: Jméno zakladatele Pizza day (objednávajícího) + type: string + totalPrice: + description: Celková cena objednávky v Kč + type: number