Ignore:
Timestamp:
01/19/25 23:18:37 (4 months ago)
Author:
Aleksandar Panovski <apano77@…>
Branches:
main
Children:
f5b256e
Parents:
db39d9e
Message:

Done with stupid timeslots

Location:
src/main/java/com/example/rezevirajmasa/demo/web/controller
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/main/java/com/example/rezevirajmasa/demo/web/controller/ReservationController.java

    rdb39d9e r8ca35dc  
    11package com.example.rezevirajmasa.demo.web.controller;
    22
     3import com.example.rezevirajmasa.demo.dto.SignUpDto;
     4import com.example.rezevirajmasa.demo.dto.UserDto;
     5import com.example.rezevirajmasa.demo.mappers.UserMapper;
    36import com.example.rezevirajmasa.demo.model.*;
    47import com.example.rezevirajmasa.demo.model.exceptions.ExpiredReservationException;
     
    1922public class ReservationController {
    2023    private final ReservationService reservationService;
    21     private final CustomerService customerService;
     24    private final UserService userService;
    2225    private final TableService tableService;
    2326    private final ReservationHistoryService reservationHistoryService;
    2427
    25     public ReservationController(ReservationService reservationService, CustomerService customerService, TableService tableService, ReservationHistoryService reservationHistoryService) {
     28    private final UserMapper userMapper;
     29
     30    public ReservationController(ReservationService reservationService, UserService userService, TableService tableService, ReservationHistoryService reservationHistoryService, UserMapper userMapper) {
    2631        this.reservationService = reservationService;
    27         this.customerService = customerService;
     32        this.userService = userService;
    2833        this.tableService = tableService;
    2934        this.reservationHistoryService = reservationHistoryService;
     35        this.userMapper = userMapper;
    3036    }
    3137
    3238    @GetMapping("/reservations")
    3339    public String showReservations(Model model, Authentication authentication) {
    34         Customer customer = customerService.findByEmail(authentication.getName());
    35         List<Reservation> reservationList;
    36         if(customer.getRole().equals(Role.ROLE_ADMIN)) {
    37             reservationList = reservationService.listAll();
    38         } else {
    39             reservationList = reservationService.findReservationByCustomer(customer);
    40         }
     40        UserDto userDto = userService.findByEmail(authentication.getName());
     41
     42        SignUpDto signUpDto = userMapper.toSignUpDto(userDto);
     43
     44        User user = userMapper.signUpToUser(signUpDto);
     45
     46        List<Reservation> reservationList = reservationService.findReservationByUser(user);
     47
    4148        model.addAttribute("bodyContent", "reservationList");
    4249        model.addAttribute("reservations", reservationList);
    4350        return "index";
    4451    }
     52
    4553
    4654    @GetMapping("/reservations/edit/{reservationId}")
     
    6270        Restaurant restaurant = table.getRestaurant();
    6371
    64         Customer customer = customerService.findByEmail(authentication.getName());
     72        UserDto userDto = userService.findByEmail(authentication.getName());
     73
     74        SignUpDto signUpDto = userMapper.toSignUpDto(userDto);
     75
     76        User user = userMapper.signUpToUser(signUpDto);
    6577
    6678        if(!table.isAvailable(reservationDateTime)) {
     
    6880        }
    6981        tableService.deleteTimeSlotsForReservation(tableNumber, reservationDateTime);
    70         reservationService.makeReservation(customer, table, restaurant, LocalDateTime.now(), reservationDateTime, partySize, specialRequests);
     82        reservationService.makeReservation(user, table, restaurant, LocalDateTime.now(), reservationDateTime, partySize, specialRequests);
    7183        return "redirect:/reservations";
    7284    }
  • src/main/java/com/example/rezevirajmasa/demo/web/controller/ReservationHistoryController.java

    rdb39d9e r8ca35dc  
    11package com.example.rezevirajmasa.demo.web.controller;
    22
     3import com.example.rezevirajmasa.demo.dto.SignUpDto;
     4import com.example.rezevirajmasa.demo.dto.UserDto;
     5import com.example.rezevirajmasa.demo.mappers.UserMapper;
    36import com.example.rezevirajmasa.demo.model.Customer;
    47import com.example.rezevirajmasa.demo.model.Restaurant;
    58import com.example.rezevirajmasa.demo.model.Role;
     9import com.example.rezevirajmasa.demo.model.User;
    610import com.example.rezevirajmasa.demo.service.CustomerService;
    711import com.example.rezevirajmasa.demo.service.ReservationHistoryService;
     12import com.example.rezevirajmasa.demo.service.UserService;
    813import org.springframework.security.core.Authentication;
    914import org.springframework.stereotype.Controller;
     
    1823public class ReservationHistoryController {
    1924    private final ReservationHistoryService reservationHistoryService;
    20     private final CustomerService customerService;
     25    private final UserService userService;
     26    private final UserMapper userMapper;
    2127
    22     public ReservationHistoryController(ReservationHistoryService reservationHistoryService, CustomerService customerService) {
     28    public ReservationHistoryController(ReservationHistoryService reservationHistoryService, UserService userService, UserMapper userMapper) {
    2329        this.reservationHistoryService = reservationHistoryService;
    24         this.customerService = customerService;
     30        this.userService = userService;
     31        this.userMapper = userMapper;
    2532    }
    2633
     
    2835    public String showPastReservations(Authentication authentication, Model model) {
    2936        List<Restaurant.ReservationHistory> reservationHistoryList;
    30         Customer customer = customerService.findByEmail(authentication.getName());
    31         if(customer.getRole().equals(Role.ROLE_ADMIN)) {
    32             reservationHistoryList = reservationHistoryService.findAll();
    33         } else {
    34             reservationHistoryList = reservationHistoryService.findByCustomer(customer);
    35         }
     37        UserDto userDto = userService.findByEmail(authentication.getName());
     38
     39        SignUpDto signUpDto = userMapper.toSignUpDto(userDto);
     40
     41        User user = userMapper.signUpToUser(signUpDto);
     42
     43        reservationHistoryList = reservationHistoryService.findByUser(user);
     44//        if(customer.getRole().equals(Role.ROLE_ADMIN)) {
     45//            reservationHistoryList = reservationHistoryService.findAll();
     46//        } else {
     47//            reservationHistoryList = reservationHistoryService.findByUser(User user);
     48//        }
    3649        model.addAttribute("historyReservations", reservationHistoryList);
    3750        model.addAttribute("bodyContent", "pastReservations");
Note: See TracChangeset for help on using the changeset viewer.