diff --git a/README.md b/README.md index b418d4f..252e934 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,23 @@ +# API +Для работы с тестовой базой данных для задания собрано минимальное API. БД SQLite, работает без ORM через библиотеку Microsoft.Data.Sqlite. +Приложение собрано в Docker-образ и развернуто по адресу + ## База данных -### Таблица со списком категорий +- Таблица со списком категорий ```sql CREATE TABLE categories( category_id INT NOT NULL PRIMARY KEY, category_name VARCHAR(10) ); ``` -### Таблица со списком продуктов +- Таблица со списком продуктов ```sql CREATE TABLE products( product_id INT NOT NULL PRIMARY KEY, product_name VARCHAR(10) ); ``` -### Таблица товара с категориями +- Таблица товара с категориями ```sql CREATE TABLE grocery_store( product_id INT, @@ -22,7 +26,7 @@ CREATE TABLE grocery_store( FOREIGN KEY (category_id) REFERENCES categories (category_id) ); ``` -## Выбор всех пар "Имя продукта - Имя категории" (основное задание) +## Выбор пар "Имя продукта - Имя категории" Запрос ```sql SELECT product_name AS product, category_name AS category FROM products @@ -30,22 +34,56 @@ LEFT JOIN grocery_store ON grocery_store.product_id = products.product_id LEFT JOIN categories ON grocery_store.category_id = categories.category_id ORDER BY product; ``` - - ```ps Invoke-RestMethod https://mindbox.cebotari.ru/item -Method GET ``` +``` +productName categoryName +----------- ------------ +Apple Red +Apple Green +Cucumber Green +Eggplant +Olives Black +Tomato Red +``` +## Дополнительно реализовано +- Вывод списка продуктов +```ps +Invoke-RestMethod https://mindbox.cebotari.ru/product -Method GET +``` +``` +id name +-- ---- + 1 Apple + 2 Cucumber + 3 Tomato + 4 Eggplant + 5 Olives +``` +- Добавление нового продукта +```ps +Invoke-RestMethod https://mindbox.cebotari.ru/product -Method POST -Body (@{Id=5; Name="Olives"} | ConvertTo-Json) -ContentType "application/json" +``` -## Дополнительно реализованы -### Добавление новой категории +- Вывод списка категорий +```ps +Invoke-RestMethod https://mindbox.cebotari.ru/category -Method GET +``` +``` +id name +-- ---- + 1 Red + 2 Green + 3 Yellow + 4 Magenta + 5 Black + ``` +- Добавление новой категории ```ps Invoke-RestMethod https://mindbox.cebotari.ru/category -Method POST -Body (@{Id=5; Name="Black"} | ConvertTo-Json) -ContentType "application/json" ``` -### Добавление нового продукта +- Добавление нового товара ```ps -Invoke-RestMethod http://mindbox.cebotari.ru/product -Method POST -Body (@{Id=5; Name="Olives"} | ConvertTo-Json) -ContentType "application/json" -``` -### Добавление новой нового товара -```ps -Invoke-RestMethod -Uri "http://mindbox.cebotari.ru/item?productId=5&categoryId=5" -Method POST +Invoke-RestMethod -Uri "https://mindbox.cebotari.ru/item?productId=5&categoryId=5" -Method POST ``` \ No newline at end of file