Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/bootstrap/DataHolder.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/bootstrap/DataHolder.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/bootstrap/DataHolder.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -25,5 +25,4 @@
     public static List<Local> locals = new ArrayList<>();
     public static List<Event> events = new ArrayList<>();
-    private final TableRepository tableRepository;
 
 
@@ -36,6 +35,5 @@
     private final EventRepository eventRepository;
 
-    public DataHolder(TableRepository tableRepository, AdminRepository adminRepository, CustomerRepository customerRepository, LocalManagerRepository localManagerRepository, LocalRepository localRepository, LocalWorkerRepository localWorkerRepository, PasswordEncoder passwordEncoder, EventRepository eventRepository) {
-        this.tableRepository = tableRepository;
+    public DataHolder(AdminRepository adminRepository, CustomerRepository customerRepository, LocalManagerRepository localManagerRepository, LocalRepository localRepository, LocalWorkerRepository localWorkerRepository, PasswordEncoder passwordEncoder, EventRepository eventRepository) {
         this.adminRepository = adminRepository;
         this.customerRepository = customerRepository;
@@ -131,17 +129,6 @@
         }
         localRepository.saveAll(locals);
-        List<DiningTable> tables = new ArrayList<>();
-        int tableCounter = 1;
+
         for (Local local : locals) {
-            for (int j = 1; j <= 5; j++) {
-                DiningTable table = new DiningTable(
-                        tableCounter,
-                        2 + (j % 3),
-                        local
-                );
-                tables.add(table);
-                tableCounter++;
-            }
-            tableRepository.saveAll(tables);
             // Active event
             Event activeEvent = new Event(
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/CreateReservationDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/CreateReservationDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/CreateReservationDTO.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -4,9 +4,7 @@
 
 public record CreateReservationDTO(
-        Long localId,
         LocalDateTime timeOfReservation,
-        Long tableId,
-        Integer tableNumber,
-        Integer capacity
+        Integer capacity,
+        String description
 ) {
 }
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DisplayReservationDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DisplayReservationDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DisplayReservationDTO.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -12,6 +12,6 @@
         String localLogo,
         LocalDateTime timeOfReservation,
-        Integer tableNumber,
         Integer capacity,
+        String description,
         ReservationStatus status
 ) {
@@ -23,6 +23,6 @@
                 reservation.getLocal().getLogoUrl(),
                 reservation.getTimeOfReservation(),
-                reservation.getTable().getTableNumber(),
                 reservation.getTable().getCapacity(),
+                reservation.getTable().getDescription(),
                 reservation.getStatus()
         );
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/EditReservationDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/EditReservationDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/EditReservationDTO.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -6,5 +6,6 @@
 public record EditReservationDTO(
         LocalDateTime timeOfReservation,
-        Long tableId
-        ) {
+        Integer capacity,
+        String description
+) {
 }
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/EditReservationInfoDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/EditReservationInfoDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,30 +1,0 @@
-package mk.ukim.finki.it.reservengo.dto.reservationDTO;
-
-import mk.ukim.finki.it.reservengo.dto.tableDTO.TableInfoDTO;
-import mk.ukim.finki.it.reservengo.model.domain.Reservation;
-import mk.ukim.finki.it.reservengo.model.enumerations.ReservationStatus;
-
-import java.time.LocalDateTime;
-import java.util.List;
-
-public record EditReservationInfoDTO(
-        String localName,
-        String localLogo,
-        LocalDateTime currentTimeOfReservation,
-        Long currentTableId,
-        Integer currentTableNumber,
-        ReservationStatus currentReservationStatus,
-        List<TableInfoDTO> availableTables
-) {
-    public static EditReservationInfoDTO from(Reservation reservation, List<TableInfoDTO> availableTables) {
-        return new EditReservationInfoDTO(
-                reservation.getLocal().getName(),
-                reservation.getLocal().getLogoUrl(),
-                reservation.getTimeOfReservation(),
-                reservation.getTable().getId(),
-                reservation.getTable().getTableNumber(),
-                reservation.getStatus(),
-                availableTables
-        );
-    }
-}
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/tableDTO/TableInfoDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/tableDTO/TableInfoDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,8 +1,0 @@
-package mk.ukim.finki.it.reservengo.dto.tableDTO;
-
-public record TableInfoDTO(
-        Long id,
-        Integer tableNumber,
-        Integer capacity
-) {
-}
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/workerDTO/DisplayLocalReservationDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/workerDTO/DisplayLocalReservationDTO.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/workerDTO/DisplayLocalReservationDTO.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -12,5 +12,4 @@
         Long customerId,
         LocalDateTime timeOfReservation,
-        Integer tableNumber,
         Integer tableCapacity,
         ReservationStatus reservationStatus
@@ -22,5 +21,4 @@
                 reservation.getCustomer().getId(),
                 reservation.getTimeOfReservation(),
-                reservation.getTable().getTableNumber(),
                 reservation.getTable().getCapacity(),
                 reservation.getStatus()
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/DiningTable.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/DiningTable.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/DiningTable.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -5,24 +5,13 @@
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import lombok.NonNull;
 
-@Entity
+@Embeddable
 @AllArgsConstructor
 @NoArgsConstructor
 @Data
 public class DiningTable {
-    @Id
-    @GeneratedValue(strategy = GenerationType.IDENTITY)
-    private Long id;
-
-    private Integer tableNumber;
+    @NonNull
     private Integer capacity;
-
-    @ManyToOne
-    private Local local;
-
-    public DiningTable(Integer tableNumber, Integer capacity, Local local) {
-        this.tableNumber = tableNumber;
-        this.capacity = capacity;
-        this.local = local;
-    }
+    private String description;
 }
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/Reservation.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/Reservation.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/domain/Reservation.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -26,5 +26,5 @@
     private LocalDateTime timeOfReservation;
 
-    @ManyToOne
+    @Embedded
     private DiningTable table;
 
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/ReservationRepository.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/ReservationRepository.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/ReservationRepository.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -14,5 +14,4 @@
 @Repository
 public interface ReservationRepository extends JpaRepository<Reservation, Long> {
-    List<Reservation> findByTableIdAndTimeOfReservationAndStatusNot(Long tableId, LocalDateTime reservationTime, ReservationStatus reservationStatus);
 
     List<Reservation> findByLocalId(Long id);
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/TableRepository.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/TableRepository.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,10 +1,0 @@
-package mk.ukim.finki.it.reservengo.repository;
-
-import mk.ukim.finki.it.reservengo.model.domain.DiningTable;
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import java.util.List;
-
-public interface TableRepository extends JpaRepository<DiningTable, Long> {
-    List<DiningTable> findByLocalId(Long id);
-}
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/CustomerServiceImpl.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/CustomerServiceImpl.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/CustomerServiceImpl.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -5,5 +5,4 @@
 import mk.ukim.finki.it.reservengo.dto.localDTO.DisplayLocalDTO;
 import mk.ukim.finki.it.reservengo.dto.reservationDTO.*;
-import mk.ukim.finki.it.reservengo.dto.tableDTO.TableInfoDTO;
 import mk.ukim.finki.it.reservengo.model.domain.*;
 import mk.ukim.finki.it.reservengo.model.enumerations.ReservationStatus;
@@ -11,10 +10,8 @@
 import mk.ukim.finki.it.reservengo.repository.CustomerRepository;
 import mk.ukim.finki.it.reservengo.repository.ReservationRepository;
-import mk.ukim.finki.it.reservengo.repository.TableRepository;
 import mk.ukim.finki.it.reservengo.service.intf.*;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.time.LocalDateTime;
 import java.util.List;
 
@@ -26,8 +23,6 @@
     private final EventService eventService;
     private final ReservationRepository reservationRepository;
-    private final TableRepository tableRepository;
-    private final TableService tableService;
-
-    public CustomerServiceImpl(CustomerRepository customerRepository, LocalService localService, UserService userService, EventService eventService, ReservationRepository reservationRepository, TableRepository tableRepository, TableService tableService) {
+
+    public CustomerServiceImpl(CustomerRepository customerRepository, LocalService localService, UserService userService, EventService eventService, ReservationRepository reservationRepository) {
         this.customerRepository = customerRepository;
         this.localService = localService;
@@ -35,6 +30,4 @@
         this.eventService = eventService;
         this.reservationRepository = reservationRepository;
-        this.tableRepository = tableRepository;
-        this.tableService = tableService;
     }
 
@@ -159,16 +152,8 @@
         }
 
-        LocalDateTime newTime = editReservationDTO.timeOfReservation();
-        Long newTableId = editReservationDTO.tableId();
-
-        if (!tableService.isTableAvailable(newTableId, newTime)) {
-            throw new TableNotAvailableException(newTableId, newTime);
-        }
-
-        reservation.setTimeOfReservation(newTime);
-
-        DiningTable table = tableRepository.findById(newTableId).orElseThrow(() -> new TableIdNotFoundException(editReservationDTO.tableId()));
-
-        reservation.setTable(table);
+        reservation.setTimeOfReservation(editReservationDTO.timeOfReservation());
+
+        reservation.getTable().setCapacity(editReservationDTO.capacity());
+        reservation.getTable().setDescription(editReservationDTO.description());
         reservationRepository.save(reservation);
 
@@ -189,28 +174,10 @@
 
     @Override
-    public EditReservationInfoDTO getEditReservationInfo(Long id, Long reservationId) {
-        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
-
-        if (!reservation.getCustomer().getId().equals(id)) {
-            throw new UnauthorizedReservationAccessException(id, reservationId);
-        }
-
-        List<TableInfoDTO> availableTablesAtThatTime = tableService.getAvailableTables(reservation.getLocal().getId(), reservation.getTimeOfReservation());
-
-        return EditReservationInfoDTO.from(reservation, availableTablesAtThatTime);
-    }
-
-    @Override
     @Transactional
-    public DisplayReservationDTO makeReservation(Long id, CreateReservationDTO createReservationDTO) {
-        Customer customer = customerRepository.findById(id).orElseThrow(() -> new CustomerIdNotFoundException(id));
-        Local local = localService.findLocalById(createReservationDTO.localId());
-        Long tableId = createReservationDTO.tableId();
-
-        if (!tableService.isTableAvailable(tableId, createReservationDTO.timeOfReservation())) {
-            throw new TableNotAvailableException(tableId, createReservationDTO.timeOfReservation());
-        }
-
-        DiningTable table = tableRepository.findById(tableId).orElseThrow(() -> new TableIdNotFoundException(tableId));
+    public void makeReservation(Long id, Long localId, CreateReservationDTO createReservationDTO) {
+        Customer customer = customerRepository.findById(id).orElseThrow(() -> new CustomerIdNotFoundException(id));
+        Local local = localService.findLocalById(localId);
+
+        DiningTable diningTable = new DiningTable(createReservationDTO.capacity(), createReservationDTO.description());
 
         Reservation reservation = new Reservation();
@@ -218,10 +185,8 @@
         reservation.setLocal(local);
         reservation.setTimeOfReservation(createReservationDTO.timeOfReservation());
-        reservation.setTable(table);
+        reservation.setTable(diningTable);
         reservation.setStatus(ReservationStatus.PENDING);
 
         reservationRepository.save(reservation);
-
-        return DisplayReservationDTO.from(reservation);
     }
 
@@ -230,4 +195,5 @@
         Customer customer = customerRepository.findById(id).orElseThrow(() -> new CustomerIdNotFoundException(id));
         List<Reservation> reservations = reservationRepository.findAllById(deleteReservationDTO.reservationIds());
+
         for (Reservation reservation : reservations) {
             reservation.setStatus(ReservationStatus.CANCELED);
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/TableServiceImpl.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/TableServiceImpl.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,44 +1,0 @@
-package mk.ukim.finki.it.reservengo.service.impl;
-
-import mk.ukim.finki.it.reservengo.dto.tableDTO.TableInfoDTO;
-import mk.ukim.finki.it.reservengo.model.domain.DiningTable;
-import mk.ukim.finki.it.reservengo.model.enumerations.ReservationStatus;
-import mk.ukim.finki.it.reservengo.repository.ReservationRepository;
-import mk.ukim.finki.it.reservengo.repository.TableRepository;
-import mk.ukim.finki.it.reservengo.service.intf.TableService;
-import org.springframework.stereotype.Service;
-
-import java.time.LocalDateTime;
-import java.util.List;
-
-@Service
-public class TableServiceImpl implements TableService {
-
-    private final TableRepository tableRepository;
-    private final ReservationRepository reservationRepository;
-
-    public TableServiceImpl(TableRepository tableRepository, ReservationRepository reservationRepository) {
-        this.tableRepository = tableRepository;
-        this.reservationRepository = reservationRepository;
-    }
-
-    @Override
-    public List<TableInfoDTO> getAvailableTables(Long localId, LocalDateTime reservationTime) {
-        List<DiningTable> allTables = tableRepository.findByLocalId(localId);
-
-        return allTables.stream()
-                .filter(t -> isTableAvailable(t.getId(), reservationTime))
-                .map(t -> new TableInfoDTO(t.getId(), t.getTableNumber(), t.getCapacity()))
-                .toList();
-    }
-
-    @Override
-    public boolean isTableAvailable(Long tableId, LocalDateTime reservationTime) {
-        return reservationRepository
-                .findByTableIdAndTimeOfReservationAndStatusNot(
-                        tableId,
-                        reservationTime,
-                        ReservationStatus.CANCELED
-                ).isEmpty();
-    }
-}
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/CustomerService.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/CustomerService.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/CustomerService.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -39,7 +39,5 @@
     void cancelReservation(Long id, Long reservationId);
 
-    EditReservationInfoDTO getEditReservationInfo(Long id, Long reservationId);
-
-    DisplayReservationDTO makeReservation(Long id, CreateReservationDTO createReservationDTO);
+    void makeReservation(Long id, Long localId,CreateReservationDTO createReservationDTO);
 
     void deleteReservation(Long id, DeleteReservationDTO deleteReservationDTO);
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/TableService.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/TableService.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,12 +1,0 @@
-package mk.ukim.finki.it.reservengo.service.intf;
-
-import mk.ukim.finki.it.reservengo.dto.tableDTO.TableInfoDTO;
-
-import java.time.LocalDateTime;
-import java.util.List;
-
-
-public interface TableService {
-    List<TableInfoDTO> getAvailableTables(Long localId, LocalDateTime reservationTime);
-    boolean isTableAvailable(Long tableId, LocalDateTime reservationTime);
-}
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/CustomerController.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/CustomerController.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/CustomerController.java	(revision 10c66f20ff8b31e41036536605e760856650ed34)
@@ -98,10 +98,4 @@
     }
 
-    @GetMapping("/reservations/{reservationId}/edit-info")
-    public ResponseEntity<EditReservationInfoDTO> editReservationInfo(@AuthenticationPrincipal User user, @PathVariable Long reservationId) {
-        EditReservationInfoDTO editReservationInfoDTO = customerService.getEditReservationInfo(user.getId(), reservationId);
-        return new ResponseEntity<>(editReservationInfoDTO, HttpStatus.OK);
-    }
-
     @PutMapping("/reservations/{reservationId}/edit")
     public ResponseEntity<DisplayReservationDTO> editReservation(@AuthenticationPrincipal User user, @PathVariable Long reservationId, @RequestBody EditReservationDTO editReservationDTO) {
@@ -110,8 +104,8 @@
     }
 
-    @PostMapping("/reservations/create")
-    public ResponseEntity<DisplayReservationDTO> makeReservation(@AuthenticationPrincipal User user, @RequestBody CreateReservationDTO createReservationDTO) {
-        DisplayReservationDTO newReservation = customerService.makeReservation(user.getId(), createReservationDTO);
-        return new ResponseEntity<>(newReservation, HttpStatus.OK);
+    @PostMapping("/reservations/{localId}/create")
+    public ResponseEntity<Void> makeReservation(@AuthenticationPrincipal User user, @PathVariable Long localId, @RequestBody CreateReservationDTO createReservationDTO) {
+        customerService.makeReservation(user.getId(), localId, createReservationDTO);
+        return new ResponseEntity<>(HttpStatus.CREATED);
     }
 
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/TableController.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/TableController.java	(revision d58c684f148c47d9b9d06c56c1adb4a7eab29340)
+++ 	(revision )
@@ -1,35 +1,0 @@
-package mk.ukim.finki.it.reservengo.web.controller;
-
-import mk.ukim.finki.it.reservengo.dto.tableDTO.TableInfoDTO;
-import mk.ukim.finki.it.reservengo.service.intf.TableService;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.time.LocalDateTime;
-import java.util.List;
-
-@RestController
-@RequestMapping("/api/tables")
-public class TableController {
-    private final TableService tableService;
-
-    public TableController(TableService tableService) {
-        this.tableService = tableService;
-    }
-
-    @GetMapping
-    public ResponseEntity<List<TableInfoDTO>> getAvailableTables(
-            @RequestParam Long localId,
-            @RequestParam @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)
-            LocalDateTime reservationTime
-    ) {
-        List<TableInfoDTO> tables = tableService.getAvailableTables(localId, reservationTime);
-
-        return new ResponseEntity<>(tables, HttpStatus.OK);
-    }
-}
