From ae35a740ccef0b5ca62dde4d397cd2fbffc398cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=95=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=91=D0=B0=D0=BA=D0=B0?= =?UTF-8?q?=D0=BB=D1=8C=D1=81=D0=BA=D0=B0=D1=8F?= Date: Wed, 22 May 2024 21:35:11 +0400 Subject: [PATCH] =?UTF-8?q?=D0=BD=D1=83...=20=D0=BC=D1=83=D1=82=D1=83?= =?UTF-8?q?=D0=B7=D1=8E=20=D0=BA=D0=B0=D1=82=D0=B5=D0=B3=D0=BE=D1=80=D0=B8?= =?UTF-8?q?=D0=B8,=20=D0=BF=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D1=8F?= =?UTF-8?q?=D1=8E=20=D0=BA=D0=BE=D0=BD=D1=82=D1=80=D0=BE=D0=BB=D0=BB=D0=B5?= =?UTF-8?q?=D1=80,=20=D1=87=D1=82=D0=BE-=D1=82=D0=BE=20=D1=81=20=D1=8D?= =?UTF-8?q?=D0=B4=D0=B8=D1=82=D0=BE=D0=BC=20=D0=BD=D0=B5=20=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B0=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/build.gradle | 1 + .../example/backend/BackendApplication.java | 10 +- .../categories/api/CategorieController.java | 49 +++++++-- .../resources/templates/categorie-edit.html | 98 ++++++++++++++++++ .../main/resources/templates/categories.html | 42 ++++++-- data.mv.db | Bin 90112 -> 159744 bytes 6 files changed, 184 insertions(+), 16 deletions(-) create mode 100644 backend/src/main/resources/templates/categorie-edit.html diff --git a/backend/build.gradle b/backend/build.gradle index 3918860..0b03705 100644 --- a/backend/build.gradle +++ b/backend/build.gradle @@ -33,6 +33,7 @@ dependencies { implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6' testImplementation 'org.springframework.boot:spring-boot-starter-test' + testImplementation 'org.junit.jupiter:junit-jupiter:5.7.0' } tasks.named('test') { diff --git a/backend/src/main/java/com/example/backend/BackendApplication.java b/backend/src/main/java/com/example/backend/BackendApplication.java index 7200524..2f85ea0 100644 --- a/backend/src/main/java/com/example/backend/BackendApplication.java +++ b/backend/src/main/java/com/example/backend/BackendApplication.java @@ -6,6 +6,8 @@ import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; +import com.example.backend.categories.model.CategorieEntity; +import com.example.backend.categories.service.CategorieService; import com.example.backend.users.model.UserEntity; import com.example.backend.users.model.UserRole; import com.example.backend.users.service.UserService; @@ -17,9 +19,11 @@ public class BackendApplication implements CommandLineRunner { private final Logger _logger = LoggerFactory.getLogger(BackendApplication.class); private final UserService userService; + private final CategorieService categorieService; - public BackendApplication(UserService userService) { + public BackendApplication(UserService userService, CategorieService categorieService) { this.userService = userService; + this.categorieService = categorieService; } public static void main(String[] args) { @@ -39,6 +43,8 @@ public class BackendApplication implements CommandLineRunner { final var u6 = new UserEntity(null, "6", "1234"); final var u7 = new UserEntity(null, "7", "1234"); + final var cat1 = new CategorieEntity(null, "Драма", null); + admin.setRole(UserRole.ADMIN); vasya.setRole(UserRole.USER); @@ -60,6 +66,8 @@ public class BackendApplication implements CommandLineRunner { userService.create(u6); userService.create(u7); + categorieService.create(cat1); + _logger.info("Admin user added"); } diff --git a/backend/src/main/java/com/example/backend/categories/api/CategorieController.java b/backend/src/main/java/com/example/backend/categories/api/CategorieController.java index 909c201..b4c4c88 100644 --- a/backend/src/main/java/com/example/backend/categories/api/CategorieController.java +++ b/backend/src/main/java/com/example/backend/categories/api/CategorieController.java @@ -3,8 +3,12 @@ package com.example.backend.categories.api; import org.modelmapper.ModelMapper; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.example.backend.categories.model.CategorieEntity; +import com.example.backend.categories.repository.CategorieRepository; import com.example.backend.categories.service.CategorieService; import com.example.backend.core.configurations.Constants; @@ -14,6 +18,12 @@ import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; @Controller @RequestMapping(CategorieController.URL) @@ -26,11 +36,16 @@ public class CategorieController { private static final String CATEGORIE_EDIT_VIEW = "categorie-edit"; private final CategorieService categorieService; + public final CategorieRepository categorieRepository; private final ModelMapper modelMapper; - public CategorieController(CategorieService categorieService, ModelMapper modelMapper) { + private static String UPLOAD_DIR = System.getProperty("user.dir") + "/uploads"; + + public CategorieController(CategorieService categorieService, ModelMapper modelMapper, + CategorieRepository categorieRepository) { this.categorieService = categorieService; this.modelMapper = modelMapper; + this.categorieRepository = categorieRepository; } private CategorieDTO toDto(CategorieEntity entity) { @@ -44,7 +59,7 @@ public class CategorieController { @GetMapping() public String getAll(Model model) { model.addAttribute( - "items", + "categories", categorieService.getAll().stream() .map(this::toDto) .toList()); @@ -52,13 +67,29 @@ public class CategorieController { } @GetMapping("/edit/") - public String create(@ModelAttribute(name = CATEGORIE_ATTRIBUTE) @Valid CategorieDTO categorieDTO, - BindingResult bindingResult, - Model model) { - if (bindingResult.hasErrors()) - return CATEGORIE_EDIT_VIEW; - categorieService.create(toEntity(categorieDTO)); - return Constants.REDIRECT_VIEW + URL; + public String create(Model model) { + model.addAttribute(CATEGORIE_ATTRIBUTE, new CategorieDTO()); + return CATEGORIE_EDIT_VIEW; } + @PostMapping("/edit/") + public String create(@ModelAttribute(name = CATEGORIE_ATTRIBUTE) @Valid CategorieDTO categorieDTO, + BindingResult bindingResult, RedirectAttributes redirectAttributes, + @RequestParam("image") MultipartFile imageFile) { + try { + if (bindingResult.hasErrors()) { + return CATEGORIE_EDIT_VIEW; + } + CategorieEntity category = toEntity(categorieDTO); + if (!imageFile.isEmpty()) { + Path fileNameAndPath = Paths.get(UPLOAD_DIR, imageFile.getOriginalFilename()); + Files.write(fileNameAndPath, imageFile.getBytes()); + category.setImage("/uploads/" + imageFile.getOriginalFilename()); + } + categorieService.create(category); + } catch (IOException e) { + e.printStackTrace(); + } + return Constants.REDIRECT_VIEW + URL; + } } diff --git a/backend/src/main/resources/templates/categorie-edit.html b/backend/src/main/resources/templates/categorie-edit.html new file mode 100644 index 0000000..0f981be --- /dev/null +++ b/backend/src/main/resources/templates/categorie-edit.html @@ -0,0 +1,98 @@ + + + + + Создать категорию + + + +
+
+ + + + +
+ + +
+
+ + +
+ +
+
+ + + + +
+ Вернуться на категории +
+ + + + + + + + + + + + + + --> \ No newline at end of file diff --git a/backend/src/main/resources/templates/categories.html b/backend/src/main/resources/templates/categories.html index c01d0ca..1c7168f 100644 --- a/backend/src/main/resources/templates/categories.html +++ b/backend/src/main/resources/templates/categories.html @@ -3,16 +3,46 @@ Категории +
-
-
- - {categorie.name} -
-
+ +

Данные отсутствуют

+ +
+
+
+ +
+
+
+
+
+
+
+ Добавить категорию +
+
+
diff --git a/data.mv.db b/data.mv.db index dda847850b5d4b91643731d79f9f218af6b91fb9..c56ab135d92325950de75b13e4717cec412714b9 100644 GIT binary patch literal 159744 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 literal 90112 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 A