feat: předělání historie a profilu

This commit is contained in:
Ondřej Anděl committed 2026-10-07 14:48:21 +02:00
1 parent 9e72f431a1
commit 8fa7f601f2
97 files changed
+7502 -1034

No files matched your search

+28
View File
@@ -0,0 +1,28 @@
post:
operationId: saveWeight
summary: Zapíše vážení k zvolenému dni.
requestBody:
required: true
content:
application/json:
schema:
type: object
required: [date]
properties:
date:
type: string
format: date
weightGrams:
description: Hmotnost v gramech. Bez hodnoty (nebo 0) se vážení dne smaže.
type: integer
responses:
"200":
description: Aktualizovaný přehled dne
content:
application/json:
schema:
$ref: "../../schemas/_index.yml#/DayOverview"
"400":
description: Neplatná data
"401":
description: Neautentizovaný uživatel
+14
View File
@@ -0,0 +1,14 @@
get:
operationId: getWeights
summary: Vrátí všechna vážení přihlášeného uživatele seřazená podle data.
responses:
"200":
description: Vážení od nejstaršího
content:
application/json:
schema:
type: array
items:
$ref: "../../schemas/_index.yml#/WeightEntry"
"401":
description: Neautentizovaný uživatel
+5 -5
View File
@@ -1,6 +1,6 @@
post:
operationId: applyMealTemplate
summary: Založí jídlo ze šablony do zvoleného dne.
summary: Založí jednu porci receptu jako jídlo do zvoleného dne.
requestBody:
required: true
content:
@@ -10,18 +10,18 @@ post:
required: [id, date]
properties:
id:
description: Identifikátor šablony
description: Identifikátor receptu
type: string
date:
description: Den, do kterého se jídlo založí
type: string
format: date
mealType:
description: Chod. Bez něj se použije chod ze šablony, jinak oběd.
description: Chod. Bez něj se použije chod receptu, jinak oběd.
allOf:
- $ref: "../../schemas/_index.yml#/MealType"
multiplier:
description: Násobek porce, třeba 2 za dvě stejné sušenky. Bez něj 1.
description: Násobek porce, třeba 2 za dvě porce. Bez něj 1.
type: number
responses:
"200":
@@ -35,4 +35,4 @@ post:
"401":
description: Neautentizovaný uživatel
"404":
description: Šablona neexistuje
description: Recept neexistuje
+2 -2
View File
@@ -1,6 +1,6 @@
post:
operationId: deleteMealTemplate
summary: Smaže šablonu jídla.
summary: Smaže recept.
requestBody:
required: true
content:
@@ -13,7 +13,7 @@ post:
type: string
responses:
"200":
description: Aktualizovaný seznam šablon
description: Aktualizovaný seznam receptů
content:
application/json:
schema:
-33
View File
@@ -1,33 +0,0 @@
post:
operationId: createMealTemplateFromMeal
summary: Vytvoří šablonu jídla z existujícího záznamu v přehledu dne.
requestBody:
required: true
content:
application/json:
schema:
type: object
required: [id, date]
properties:
id:
description: Identifikátor jídla, ze kterého se šablona vytvoří
type: string
date:
description: Den, ve kterém jídlo je
type: string
format: date
responses:
"200":
description: Aktualizovaný seznam šablon
content:
application/json:
schema:
type: array
items:
$ref: "../../schemas/_index.yml#/MealTemplate"
"400":
description: Neplatná data
"401":
description: Neautentizovaný uživatel
"404":
description: Jídlo neexistuje
+2 -2
View File
@@ -1,9 +1,9 @@
get:
operationId: getMealTemplates
summary: Vrátí šablony jídel přihlášeného uživatele.
summary: Vrátí recepty přihlášeného uživatele.
responses:
"200":
description: Šablony seřazené podle názvu
description: Recepty seřazené podle názvu
content:
application/json:
schema:
+2 -2
View File
@@ -1,6 +1,6 @@
post:
operationId: saveMealTemplate
summary: Založí novou šablonu jídla, nebo upraví existující.
summary: Založí nový recept, nebo upraví existující.
requestBody:
required: true
content:
@@ -9,7 +9,7 @@ post:
$ref: "../../schemas/_index.yml#/MealTemplateInput"
responses:
"200":
description: Aktualizovaný seznam šablon
description: Aktualizovaný seznam receptů
content:
application/json:
schema:
+39
View File
@@ -0,0 +1,39 @@
post:
operationId: fillSameNameMeals
summary: |
Doplní energii a živiny jídla do ostatních jídel stejného názvu, která je nemají.
description: |
Typicky po doplnění kalorií jednomu naimportovanému jídlu — ostatní jídla
téhož jména mají stejné složení. Jídla, která energii nebo živiny už mají,
se nemění. S `dryRun` jen spočítá, kterých jídel by se to týkalo.
requestBody:
required: true
content:
application/json:
schema:
type: object
required: [id, date]
properties:
id:
description: Identifikátor jídla, ze kterého se hodnoty převezmou
type: string
date:
description: Datum jídla (YYYY-MM-DD)
type: string
format: date
dryRun:
description: Jen spočítat, nic neměnit
type: boolean
responses:
"200":
description: Jídla, kterých se doplnění týká
content:
application/json:
schema:
$ref: "../../schemas/_index.yml#/FillSameNameResult"
"400":
description: Neplatná data
"401":
description: Neautentizovaný uživatel
"404":
description: Jídlo neexistuje
+17
View File
@@ -0,0 +1,17 @@
get:
operationId: getMealHistory
summary: Vrátí jídla z historie přihlášeného uživatele, každý název jednou.
description: |
Slouží k našeptávání při zakládání jídla. Seřazeno od nejčastěji jedených,
při shodě od naposledy jedených.
responses:
"200":
description: Jídla z historie
content:
application/json:
schema:
type: array
items:
$ref: "../../schemas/_index.yml#/MealSuggestion"
"401":
description: Neautentizovaný uživatel
+17
View File
@@ -0,0 +1,17 @@
get:
operationId: getMealSources
summary: Vrátí zdroje jídel (podniky, obchody), které uživatel už použil.
description: |
Slouží jako nabídka při zadávání zdroje. Každý zdroj je jednou, seřazené
od nejčastěji použitých; zápis je z posledního použití.
responses:
"200":
description: Použité zdroje
content:
application/json:
schema:
type: array
items:
type: string
"401":
description: Neautentizovaný uživatel
+21
View File
@@ -0,0 +1,21 @@
post:
operationId: saveGoals
summary: Uloží cíle uživatele — tempo změny hmotnosti, cílovou hmotnost a bílkoviny.
description: Nevyplněné hodnoty se odstraní.
requestBody:
required: true
content:
application/json:
schema:
$ref: "../../schemas/_index.yml#/Goals"
responses:
"200":
description: Aktualizované nastavení
content:
application/json:
schema:
$ref: "../../schemas/_index.yml#/UserSettings"
"400":
description: Neplatná data
"401":
description: Neautentizovaný uživatel