https://github.com/streamlined2/nodejs-sample
https://github.com/streamlined2/nodejs-sample
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/streamlined2/nodejs-sample
- Owner: streamlined2
- License: unlicense
- Created: 2024-05-15T14:25:10.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-05-27T19:50:31.000Z (about 1 year ago)
- Last Synced: 2025-01-20T17:25:01.952Z (5 months ago)
- Language: TypeScript
- Size: 247 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
README
Завдання Блоку 4: NodeJS
Сутність 3 - період часу Period src/model/period.ts із атрибутами дати початку start і завершення періоду finish.
Сутність 1 - людина Person.Ендпойнт створення сутності періоду
POST /api/period
Приклад запиту
POST localhost:8888/api/period
{
"personId":6062,
"periodType":"Entrepreneurship",
"start":"2020-01-02",
"finish":"2023-01-02",
"remark":"Self-employed"
}
Адреса сервісу для перевірки існування сутності людини зберігається в Consul із ключем endpoint.person, у разі відсутності значення запит надсилається за адресою http://localhost:8080/api/person/
Ендпойнт запиту переліку сутностей періоду для зазначеної людини упорядкованих за зменшенням дати початку періода
GET /api/period/personId?from=start&size=amount
Приклад запиту
GET localhost:8888/api/period/6062?from=3&size=2
Ендпойнт запиту кількості сутностей періодів окремо для кожної людини
POST /api/period/_counts
Приклад запиту
POST localhost:8888/api/period/_counts
{
"personIds":[2,3,4,6,10,6062]
}
Приклад відповіді
{
"2": 1,
"3": 2,
"4": 1,
"6": 1,
"10": 14,
"6062": 6
}