feat: nová stránka pro návrhy na vylepšení
CI / Generate TypeScript types (push) Successful in 10s
CI / Server unit tests (push) Successful in 21s
CI / Build server (push) Successful in 24s
CI / Build client (push) Successful in 38s
CI / Playwright E2E tests (push) Successful in 1m18s
CI / Build and push Docker image (push) Successful in 40s
CI / Notify (push) Successful in 2s
CI / Generate TypeScript types (push) Successful in 10s
CI / Server unit tests (push) Successful in 21s
CI / Build server (push) Successful in 24s
CI / Build client (push) Successful in 38s
CI / Playwright E2E tests (push) Successful in 1m18s
CI / Build and push Docker image (push) Successful in 40s
CI / Notify (push) Successful in 2s
This commit is contained in:
+9
-7
@@ -69,13 +69,15 @@ paths:
|
||||
/stats:
|
||||
$ref: "./paths/stats/stats.yml"
|
||||
|
||||
# Hlasování (/api/voting)
|
||||
/voting/getVotes:
|
||||
$ref: "./paths/voting/getVotes.yml"
|
||||
/voting/updateVote:
|
||||
$ref: "./paths/voting/updateVote.yml"
|
||||
/voting/stats:
|
||||
$ref: "./paths/voting/getVotingStats.yml"
|
||||
# Návrhy na vylepšení (/api/suggestions)
|
||||
/suggestions/list:
|
||||
$ref: "./paths/suggestions/list.yml"
|
||||
/suggestions/add:
|
||||
$ref: "./paths/suggestions/add.yml"
|
||||
/suggestions/vote:
|
||||
$ref: "./paths/suggestions/vote.yml"
|
||||
/suggestions/delete:
|
||||
$ref: "./paths/suggestions/delete.yml"
|
||||
|
||||
# Changelog (/api/changelogs)
|
||||
/changelogs:
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
post:
|
||||
operationId: addSuggestion
|
||||
summary: Přidá nový návrh na vylepšení. Autorovi se automaticky nastaví hlas pro.
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required:
|
||||
- title
|
||||
- description
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
description: Stručný jednořádkový název návrhu
|
||||
description:
|
||||
type: string
|
||||
description: Detailní popis navrhované úpravy
|
||||
responses:
|
||||
"200":
|
||||
description: Aktualizovaný seznam návrhů.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "../../schemas/_index.yml#/Suggestion"
|
||||
@@ -0,0 +1,26 @@
|
||||
post:
|
||||
operationId: deleteSuggestion
|
||||
summary: >-
|
||||
Smaže návrh včetně všech jeho hlasů. Smazat lze pouze vlastní návrh
|
||||
(validováno na serveru).
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Identifikátor návrhu ke smazání
|
||||
responses:
|
||||
"200":
|
||||
description: Aktualizovaný seznam návrhů.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "../../schemas/_index.yml#/Suggestion"
|
||||
@@ -0,0 +1,11 @@
|
||||
get:
|
||||
operationId: listSuggestions
|
||||
summary: Vrátí seznam návrhů na vylepšení seřazený sestupně dle počtu hlasů.
|
||||
responses:
|
||||
"200":
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "../../schemas/_index.yml#/Suggestion"
|
||||
@@ -0,0 +1,30 @@
|
||||
post:
|
||||
operationId: voteSuggestion
|
||||
summary: >-
|
||||
Přepne hlas přihlášeného uživatele u návrhu. Klik na již aktivní směr hlas
|
||||
zruší, opačný směr stávající hlas přepíše.
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- direction
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Identifikátor návrhu
|
||||
direction:
|
||||
description: Směr hlasu, na který uživatel klikl
|
||||
$ref: "../../schemas/_index.yml#/VoteDirection"
|
||||
responses:
|
||||
"200":
|
||||
description: Aktualizovaný seznam návrhů.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "../../schemas/_index.yml#/Suggestion"
|
||||
@@ -1,11 +0,0 @@
|
||||
get:
|
||||
operationId: getVotes
|
||||
summary: Vrátí statistiky hlasování o nových funkcích.
|
||||
responses:
|
||||
"200":
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: "../../schemas/_index.yml#/FeatureRequest"
|
||||
@@ -1,9 +0,0 @@
|
||||
get:
|
||||
operationId: getVotingStats
|
||||
summary: Vrátí agregované statistiky hlasování o nových funkcích.
|
||||
responses:
|
||||
"200":
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "../../schemas/_index.yml#/VotingStats"
|
||||
@@ -1,22 +0,0 @@
|
||||
post:
|
||||
operationId: updateVote
|
||||
summary: Aktualizuje hlasování uživatele o dané funkcionalitě.
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required:
|
||||
- option
|
||||
- active
|
||||
properties:
|
||||
option:
|
||||
description: Hlasovací možnost, kterou uživatel zvolil.
|
||||
$ref: "../../schemas/_index.yml#/FeatureRequest"
|
||||
active:
|
||||
type: boolean
|
||||
description: True, pokud uživatel hlasoval pro, jinak false.
|
||||
responses:
|
||||
"200":
|
||||
description: Hlasování bylo úspěšně aktualizováno.
|
||||
+39
-28
@@ -272,39 +272,50 @@ DepartureTime:
|
||||
- T12_45
|
||||
- T13_00
|
||||
|
||||
# --- HLASOVÁNÍ ---
|
||||
FeatureRequest:
|
||||
# --- NÁVRHY NA VYLEPŠENÍ ---
|
||||
VoteDirection:
|
||||
description: Směr hlasu uživatele u návrhu
|
||||
type: string
|
||||
enum:
|
||||
- Možnost označovat si jídla jako oblíbená (taková jídla by se uživateli následně zvýrazňovala)
|
||||
- Možnost úhrady v podniku za všechny jednou osobou a následné generování QR ostatním
|
||||
- Zrušení \"užívejte víkend\", místo toho umožnit zpětně náhled na uplynulý týden
|
||||
- Umožnění zobrazení vygenerovaného QR kódu i po následující dny (dokud ho uživatel ručně \"nezavře\", např. tlačítkem \"Zaplatil jsem\")
|
||||
- Zobrazování náhledů (fotografií) pizz v rámci Pizza day
|
||||
- Statistiky (nejoblíbenější podnik, nejpopulárnější jídla, nejobjednávanější pizzy, nejčastější uživatelé, ...)
|
||||
- Vylepšení responzivního designu
|
||||
- Zvýšení zabezpečení aplikace
|
||||
- Zvýšená ochrana proti chybám uživatele (potvrzovací dialogy, překliky, ...)
|
||||
- Celkové vylepšení UI/UX
|
||||
- Zlepšení dokumentace/postupů pro ostatní vývojáře
|
||||
- up
|
||||
- down
|
||||
x-enum-varnames:
|
||||
- FAVORITES
|
||||
- SINGLE_PAYMENT
|
||||
- NO_WEEKENDS
|
||||
- QR_FOREVER
|
||||
- PIZZA_PICTURES
|
||||
- STATISTICS
|
||||
- RESPONSIVITY
|
||||
- SECURITY
|
||||
- SAFETY
|
||||
- UI
|
||||
- DEVELOPMENT
|
||||
- UP
|
||||
- DOWN
|
||||
|
||||
VotingStats:
|
||||
description: Statistiky hlasování - klíčem je název funkce, hodnotou počet hlasů
|
||||
Suggestion:
|
||||
description: Návrh na vylepšení aplikace tak, jak je posílán klientovi.
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: integer
|
||||
additionalProperties: false
|
||||
required:
|
||||
- id
|
||||
- author
|
||||
- title
|
||||
- description
|
||||
- voteScore
|
||||
- isMine
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Jednoznačný identifikátor návrhu
|
||||
author:
|
||||
type: string
|
||||
description: Login uživatele, který návrh vytvořil
|
||||
title:
|
||||
type: string
|
||||
description: Stručný jednořádkový název návrhu
|
||||
description:
|
||||
type: string
|
||||
description: Detailní popis navrhované úpravy
|
||||
voteScore:
|
||||
type: integer
|
||||
description: Skóre návrhu = počet hlasů pro mínus počet hlasů proti
|
||||
myVote:
|
||||
description: Hlas přihlášeného uživatele (chybí, pokud nehlasoval)
|
||||
$ref: "#/VoteDirection"
|
||||
isMine:
|
||||
type: boolean
|
||||
description: True, pokud návrh vytvořil přihlášený uživatel
|
||||
|
||||
# --- EASTER EGGS ---
|
||||
EasterEgg:
|
||||
|
||||
Reference in New Issue
Block a user