From dbda3f175b7566e7b689b33bc46bfd200a887872 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D1=8F=D1=87=D0=B5=D1=81=D0=BB=D0=B0=D0=B2=20=D0=A2?= =?UTF-8?q?=D0=B8=D1=85=D0=BE=D0=BD=D0=BE=D0=B2?= Date: Sun, 27 Nov 2022 14:49:08 +0300 Subject: [PATCH] Init --- .../controller/StoreController.java | 26 +++++++++++++++++ .../ru/skypro/weblibrary/entity/Bukket.java | 25 ++++++++++++++++ .../weblibrary/service/StoreService.java | 9 ++++++ .../weblibrary/service/StoreServiceImpl.java | 29 +++++++++++++++++++ store-service.http | 9 ++++++ 5 files changed, 98 insertions(+) create mode 100644 src/main/java/ru/skypro/weblibrary/controller/StoreController.java create mode 100644 src/main/java/ru/skypro/weblibrary/entity/Bukket.java create mode 100644 src/main/java/ru/skypro/weblibrary/service/StoreService.java create mode 100644 src/main/java/ru/skypro/weblibrary/service/StoreServiceImpl.java create mode 100644 store-service.http diff --git a/src/main/java/ru/skypro/weblibrary/controller/StoreController.java b/src/main/java/ru/skypro/weblibrary/controller/StoreController.java new file mode 100644 index 0000000..62121b1 --- /dev/null +++ b/src/main/java/ru/skypro/weblibrary/controller/StoreController.java @@ -0,0 +1,26 @@ +package ru.skypro.weblibrary.controller; + +import org.springframework.web.bind.annotation.*; +import ru.skypro.weblibrary.service.StoreService; + +import java.util.List; + +@RestController +@RequestMapping("store/order") +public class StoreController { + + private final StoreService storeService; + + public StoreController(StoreService storeService) { + this.storeService = storeService; + } + + @GetMapping("get") + public List getOrder(){ + return storeService.getOrder(); + } + @PostMapping("add") + public String addOrder(@RequestBody List listId){ + return storeService.addOrder(listId); + } +} diff --git a/src/main/java/ru/skypro/weblibrary/entity/Bukket.java b/src/main/java/ru/skypro/weblibrary/entity/Bukket.java new file mode 100644 index 0000000..a5491ab --- /dev/null +++ b/src/main/java/ru/skypro/weblibrary/entity/Bukket.java @@ -0,0 +1,25 @@ +package ru.skypro.weblibrary.entity; + +import org.springframework.context.annotation.Bean; +import org.springframework.stereotype.Component; +import org.springframework.web.context.annotation.SessionScope; + +import java.util.List; + +@Component +@SessionScope +public class Bukket { + private List ids; + + public Bukket(List ids) { + this.ids = ids; + } + + public List getIds() { + return ids; + } + + public void addIds(List ids) { + this.ids.addAll(ids); + } +} diff --git a/src/main/java/ru/skypro/weblibrary/service/StoreService.java b/src/main/java/ru/skypro/weblibrary/service/StoreService.java new file mode 100644 index 0000000..0177dee --- /dev/null +++ b/src/main/java/ru/skypro/weblibrary/service/StoreService.java @@ -0,0 +1,9 @@ +package ru.skypro.weblibrary.service; + +import java.util.List; + +public interface StoreService { + List getOrder(); + + String addOrder(List listId); +} diff --git a/src/main/java/ru/skypro/weblibrary/service/StoreServiceImpl.java b/src/main/java/ru/skypro/weblibrary/service/StoreServiceImpl.java new file mode 100644 index 0000000..3fc7d36 --- /dev/null +++ b/src/main/java/ru/skypro/weblibrary/service/StoreServiceImpl.java @@ -0,0 +1,29 @@ +package ru.skypro.weblibrary.service; + +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Service; +import org.springframework.web.context.annotation.SessionScope; +import ru.skypro.weblibrary.entity.Bukket; + +import java.util.List; + +@Service +public class StoreServiceImpl implements StoreService { + + private final Bukket bukket; + + public StoreServiceImpl(Bukket bukket) { + this.bukket = bukket; + } + + @Override + public List getOrder() { + return this.bukket.getIds(); + } + + @Override + public String addOrder(List listId) { + this.bukket.addIds(listId); + return "done"; + } +} diff --git a/store-service.http b/store-service.http new file mode 100644 index 0000000..f91bede --- /dev/null +++ b/store-service.http @@ -0,0 +1,9 @@ +###Получение списка id товаров +GET http://localhost:8080/store/order/get +###Добавление списка id товаров +POST http://localhost:8080/store/order/add +Content-Type: application/json + +[ + 1,2,3,4 +] \ No newline at end of file