From 0225bdb772d1334cc1aa7ab0fc3678df0864df6b Mon Sep 17 00:00:00 2001 From: AlisaLinUwU Date: Sun, 26 Jan 2025 10:42:28 +0500 Subject: Initialize --- .../barbershop/controller/HomeController.java | 91 ++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 src/main/java/com/mavlushechka/barbershop/controller/HomeController.java (limited to 'src/main/java/com/mavlushechka/barbershop/controller/HomeController.java') diff --git a/src/main/java/com/mavlushechka/barbershop/controller/HomeController.java b/src/main/java/com/mavlushechka/barbershop/controller/HomeController.java new file mode 100644 index 0000000..e3a96c8 --- /dev/null +++ b/src/main/java/com/mavlushechka/barbershop/controller/HomeController.java @@ -0,0 +1,91 @@ +package com.mavlushechka.barbershop.controller; + +import com.mavlushechka.barbershop.domain.*; +import com.mavlushechka.barbershop.repository.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.Base64; +import java.util.Date; +import java.util.List; +import java.util.Map; + +@Controller +public class HomeController { + @Autowired + private VisitorRepository visitorRepository; + @Autowired + private AppointmentRepository appointmentRepository; + @Autowired + private BarberRepository barberRepository; + @Autowired + private SlideRepository slideRepository; + @Autowired + private TestimonialRepository testimonialRepository; + @Autowired + private MessageRepository messageRepository; + + @GetMapping + public String home(Map model) { + List slides = slideRepository.findAll(); + List barbers = barberRepository.findAll(); + List testimonials = testimonialRepository.findAll(); + + for (Slide slide : slides) { + slide.setEncodedPhoto(Base64.getEncoder().encodeToString(slide.getPhoto().getData())); + } + for (Barber barber : barbers) { + barber.setEncodedPhoto(Base64.getEncoder().encodeToString(barber.getPhoto().getData())); + } + for (Testimonial testimonial : testimonials) { + testimonial.setEncodedPhoto(Base64.getEncoder().encodeToString(testimonial.getPhoto().getData())); + } + model.put("slides", slides); + model.put("barbers", barbers); + model.put("testimonials", testimonials); + visitorRepository.save(new Visitor(new Date())); + return "index"; + } + + @GetMapping("/services") + public String services(Map model) { + model.put("barbers", barberRepository.findAll()); + return "services"; + } + + @GetMapping("/about") + public String about(Map model) { + List barbers = barberRepository.findAll(); + List testimonials = testimonialRepository.findAll(); + + for (Barber barber : barbers) { + barber.setEncodedPhoto(Base64.getEncoder().encodeToString(barber.getPhoto().getData())); + } + for (Testimonial testimonial : testimonials) { + testimonial.setEncodedPhoto(Base64.getEncoder().encodeToString(testimonial.getPhoto().getData())); + } + model.put("barbers", barbers); + model.put("testimonials", testimonials); + return "about"; + } + + @GetMapping("/contact") + public String contact(Map model) { + model.put("barbers", barberRepository.findAll()); + return "contact"; + } + + @PostMapping("/save/appointment") + public String saveAppointment(Appointment appointment) { + appointmentRepository.save(appointment); + return "redirect:/"; + } + + @PostMapping("/save/message") + public String saveAppointment(Message message) { + messageRepository.save(message); + return "redirect:/"; + } +} -- cgit v1.2.3