From d5f9ba0edf6e37f360eec65056552357fdf8a11c Mon Sep 17 00:00:00 2001 From: oleksandr-jr Date: Fri, 30 May 2025 19:44:02 +0200 Subject: [PATCH 1/3] Draft implementation of the Dashboard --- .../controller/web/DashboardController.java | 52 +++++++++ .../contactm/services/ContactService.java | 6 ++ .../templates/dashboard/contact-list.html | 53 +++++++++ .../templates/dashboard/dashboard.html | 52 +++++++++ .../templates/dashboard/sidebar.html | 101 ++++++++++++++++++ 5 files changed, 264 insertions(+) create mode 100644 src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java create mode 100644 src/main/resources/templates/dashboard/contact-list.html create mode 100644 src/main/resources/templates/dashboard/dashboard.html create mode 100644 src/main/resources/templates/dashboard/sidebar.html diff --git a/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java b/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java new file mode 100644 index 0000000..cf21772 --- /dev/null +++ b/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java @@ -0,0 +1,52 @@ +package ua.com.javarush.gnew.contactm.controller.web; + +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import ua.com.javarush.gnew.contactm.entity.AppUser; +import ua.com.javarush.gnew.contactm.entity.Contact; +import ua.com.javarush.gnew.contactm.services.ContactService; + +import java.util.List; + + +@Controller +@RequestMapping("/dashboard") +@RequiredArgsConstructor +public class DashboardController { + + private final ContactService contactService; + + @GetMapping + public String home(Model model) { + AppUser appUser = new AppUser(); + appUser.setUsername("testUser"); + appUser.setFirstName("Test"); + appUser.setLastName("User"); + appUser.setEmail(""); + + model.addAttribute("appUser", appUser); + + return "dashboard/dashboard"; + } + + + @GetMapping(value = "/contact/list") + public String contactList(Model model) { + AppUser appUser = new AppUser(); + appUser.setUsername("testUser"); + appUser.setFirstName("Test"); + appUser.setLastName("User"); + appUser.setEmail(""); + model.addAttribute("appUser", appUser); + + List all = contactService.findAll(); + model.addAttribute("tableName", "All contacts"); + model.addAttribute("contacts", all); + + return "dashboard/contact-list"; + } + +} diff --git a/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java b/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java index ddd8c35..1655f3a 100644 --- a/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java +++ b/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java @@ -7,6 +7,8 @@ import ua.com.javarush.gnew.contactm.mapper.ContactMapper; import ua.com.javarush.gnew.contactm.repository.ContactRepository; +import java.util.List; + @Service @RequiredArgsConstructor public class ContactService { @@ -29,4 +31,8 @@ public Contact findById(Long id) { public void delete(Long id) { contactRepository.deleteById(id); } + + public List findAll() { + return contactRepository.findAll(); + } } diff --git a/src/main/resources/templates/dashboard/contact-list.html b/src/main/resources/templates/dashboard/contact-list.html new file mode 100644 index 0000000..c04b542 --- /dev/null +++ b/src/main/resources/templates/dashboard/contact-list.html @@ -0,0 +1,53 @@ + + + + + + Contact Manager + + + + + +
+ +
+ +
+ + +
+
+ + +
+ + +
+ + +
+ + + + diff --git a/src/main/resources/templates/dashboard/dashboard.html b/src/main/resources/templates/dashboard/dashboard.html new file mode 100644 index 0000000..08eb82b --- /dev/null +++ b/src/main/resources/templates/dashboard/dashboard.html @@ -0,0 +1,52 @@ + + + + + + Contact Manager + + + + + +
+ +
+ +
+ + +
+ + +
+ + +
+ + +
+ + + + diff --git a/src/main/resources/templates/dashboard/sidebar.html b/src/main/resources/templates/dashboard/sidebar.html new file mode 100644 index 0000000..6e4a162 --- /dev/null +++ b/src/main/resources/templates/dashboard/sidebar.html @@ -0,0 +1,101 @@ + + + +
+ +
+ + From 9be08ce8617fce25460c6c977ba9e0ad0b7f0908 Mon Sep 17 00:00:00 2001 From: oleksandr-jr Date: Mon, 23 Jun 2025 16:40:08 +0200 Subject: [PATCH 2/3] Trigger Build From be01f02aef12a5c8e63f24eed410d1886a5575eb Mon Sep 17 00:00:00 2001 From: oleksandr-jr Date: Mon, 23 Jun 2025 16:42:09 +0200 Subject: [PATCH 3/3] Format the code --- .../gnew/contactm/controller/web/DashboardController.java | 6 +----- .../com/javarush/gnew/contactm/services/ContactService.java | 3 +-- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java b/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java index cf21772..886f2b1 100644 --- a/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java +++ b/src/main/java/ua/com/javarush/gnew/contactm/controller/web/DashboardController.java @@ -1,5 +1,6 @@ package ua.com.javarush.gnew.contactm.controller.web; +import java.util.List; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; @@ -9,9 +10,6 @@ import ua.com.javarush.gnew.contactm.entity.Contact; import ua.com.javarush.gnew.contactm.services.ContactService; -import java.util.List; - - @Controller @RequestMapping("/dashboard") @RequiredArgsConstructor @@ -32,7 +30,6 @@ public String home(Model model) { return "dashboard/dashboard"; } - @GetMapping(value = "/contact/list") public String contactList(Model model) { AppUser appUser = new AppUser(); @@ -48,5 +45,4 @@ public String contactList(Model model) { return "dashboard/contact-list"; } - } diff --git a/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java b/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java index 1655f3a..2c9b2af 100644 --- a/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java +++ b/src/main/java/ua/com/javarush/gnew/contactm/services/ContactService.java @@ -1,5 +1,6 @@ package ua.com.javarush.gnew.contactm.services; +import java.util.List; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import ua.com.javarush.gnew.contactm.DTOs.ContactDTO; @@ -7,8 +8,6 @@ import ua.com.javarush.gnew.contactm.mapper.ContactMapper; import ua.com.javarush.gnew.contactm.repository.ContactRepository; -import java.util.List; - @Service @RequiredArgsConstructor public class ContactService {