mirror of
https://gitlab.com/etc404/software-engineering-project.git
synced 2026-05-10 20:52:58 +00:00
Update 13 files
- /src/main/java/com/example/demo/service/Impl/UserServiceImpl.java - /src/main/java/com/example/demo/service/Impl/RecipeServiceImpl.java - /src/main/java/com/example/demo/service/UserService.java - /src/main/java/com/example/demo/controller/SiteController.java - /src/main/java/com/example/demo/controller/RecipeUploadForm.java - /src/main/java/com/example/demo/controller/ProfileController.java - /src/main/java/com/example/demo/config/SecurityConfig.java - /src/main/java/com/example/demo/config/WebConfig.java - /src/main/resources/templates/explore.html - /src/main/resources/templates/view-recipe.html - /src/main/resources/templates/public-profile.html - /src/main/resources/templates/my-profile.html - /src/main/resources/templates/home.html
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
package com.example.demo.controller;
|
||||
|
||||
import java.security.Principal;
|
||||
import java.util.List;
|
||||
|
||||
import com.example.demo.service.RecipeService;
|
||||
import com.example.demo.dto.RecipeDto;
|
||||
import com.example.demo.service.RecipeService;
|
||||
import com.example.demo.service.UserService;
|
||||
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Controller;
|
||||
@@ -19,22 +21,29 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
public class SiteController {
|
||||
|
||||
private final RecipeService recipeService;
|
||||
private final UserService userService;
|
||||
|
||||
public SiteController(RecipeService recipeService) {
|
||||
public SiteController(RecipeService recipeService, UserService userService) {
|
||||
this.recipeService = recipeService;
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
@GetMapping("/")
|
||||
public String viewHomePage(Model model) {
|
||||
List<RecipeDto> recipes = recipeService.getAllRecipes();
|
||||
List<RecipeDto> newest = recipeService.getNewestRecipes(5);
|
||||
model.addAttribute("recipes", recipes);
|
||||
model.addAttribute("newestRecipes", newest);
|
||||
public String viewHomePage(Model model, Principal principal) {
|
||||
model.addAttribute("guest", principal == null);
|
||||
|
||||
if (principal == null) {
|
||||
model.addAttribute("recipes", List.of());
|
||||
} else {
|
||||
model.addAttribute("recipes", userService.getFavoriteRecipesByUsername(principal.getName()));
|
||||
}
|
||||
|
||||
return "home";
|
||||
}
|
||||
|
||||
@GetMapping("/login")
|
||||
public String viewLoginPage(Model model) {
|
||||
public String viewLoginPage(@RequestParam(required = false) String redirect, Model model) {
|
||||
model.addAttribute("redirect", redirect);
|
||||
return "login";
|
||||
}
|
||||
|
||||
@@ -76,12 +85,14 @@ public class SiteController {
|
||||
@RequestParam(required = false) List<Integer> prices,
|
||||
@RequestParam(required = false) List<Integer> cookTime,
|
||||
@RequestParam(required = false) List<Integer> prepTime,
|
||||
Model model
|
||||
Model model,
|
||||
Principal principal
|
||||
) {
|
||||
List<RecipeDto> recipes = recipeService.getRecipes(q, tags, prices, cookTime, prepTime);
|
||||
model.addAttribute("recipes", recipes);
|
||||
model.addAttribute("q", q);
|
||||
model.addAttribute("tags", tags);
|
||||
model.addAttribute("guest", principal == null);
|
||||
return "explore";
|
||||
}
|
||||
|
||||
@@ -91,4 +102,5 @@ public class SiteController {
|
||||
@RequestParam("image") MultipartFile image) {
|
||||
recipeService.updateRecipeImage(id, image);
|
||||
return ResponseEntity.ok().build();
|
||||
}}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user