Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/LocalWorkerServiceImpl.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/LocalWorkerServiceImpl.java	(revision c12b19ceda30b5ac7865d35e8fbe42a2d9477119)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/LocalWorkerServiceImpl.java	(revision 98c38b68935b8b7986fba2b8450b7cff68a06bac)
@@ -9,5 +9,4 @@
 import mk.ukim.finki.it.reservengo.model.enumerations.Role;
 import mk.ukim.finki.it.reservengo.model.exceptions.*;
-import mk.ukim.finki.it.reservengo.repository.LocalRepository;
 import mk.ukim.finki.it.reservengo.repository.LocalWorkerRepository;
 import mk.ukim.finki.it.reservengo.repository.ReservationRepository;
@@ -23,11 +22,9 @@
     private final LocalWorkerRepository localWorkerRepository;
     private final UserService userService;
-    private final LocalRepository localRepository;
     private final ReservationRepository reservationRepository;
 
-    public LocalWorkerServiceImpl(LocalWorkerRepository localWorkerRepository, UserService userService, LocalRepository localRepository, ReservationRepository reservationRepository) {
+    public LocalWorkerServiceImpl(LocalWorkerRepository localWorkerRepository, UserService userService, ReservationRepository reservationRepository) {
         this.localWorkerRepository = localWorkerRepository;
         this.userService = userService;
-        this.localRepository = localRepository;
         this.reservationRepository = reservationRepository;
     }
@@ -75,36 +72,20 @@
 
     @Override
-    public List<DisplayLocalReservationDTO> viewLocalReservations(Long id,ReservationStatus status) {
-        Local local = localRepository.findById(id).orElseThrow(() -> new LocalIdNotFoundException(id));
+    public List<DisplayLocalReservationDTO> viewWorkerLocalReservations(Long workerUserId, ReservationStatus status) {
+        LocalWorker localWorker = validateWorker(workerUserId);
+        Local local = localWorker.getLocal();
 
-        List<Reservation> reservations;
+        List<Reservation> reservations =
+                (status != null)
+                        ? reservationRepository.findByLocalIdAndStatus(local.getId(), status)
+                        : reservationRepository.findByLocalId(local.getId());
 
-        if (status != null){
-            reservations = reservationRepository.findByLocalIdAndStatus(local.getId(),status);
-        } else {
-            reservations = reservationRepository.findByLocalId(local.getId());
-        }
         return DisplayLocalReservationDTO.from(reservations);
     }
 
     @Override
-    public void validateWorker(Long id, Long localId) {
-        LocalWorker worker = localWorkerRepository.findById(id).orElseThrow(() -> new WorkerIdNotFoundException(id));
-
-        if (worker.getUserRole() != Role.ROLE_LOCAL_WORKER) {
-            throw new UnauthorizedException(worker.getId());
-        }
-
-        if (!worker.getLocal().getId().equals(localId)) {
-            throw new UnauthorizedException(worker.getId(), localId);
-        }
-    }
-
-    @Override
-    public void acceptReservation(Long id, Long reservationId) {
-        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
-        Long localId = reservation.getLocal().getId();
-
-        validateWorker(id, localId);
+    public void acceptReservation(Long workerUserId, Long reservationId) {
+        LocalWorker worker = validateWorker(workerUserId);
+        Reservation reservation = getAuthorizedReservation(worker, reservationId);
 
         reservation.setStatus(ReservationStatus.ACCEPTED);
@@ -112,10 +93,9 @@
     }
 
+
     @Override
-    public void denyReservation(Long id, Long reservationId) {
-        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
-        Long localId = reservation.getLocal().getId();
-
-        validateWorker(id, localId);
+    public void denyReservation(Long workerUserId, Long reservationId) {
+        LocalWorker worker = validateWorker(workerUserId);
+        Reservation reservation = getAuthorizedReservation(worker, reservationId);
 
         reservation.setStatus(ReservationStatus.CANCELED);
@@ -125,11 +105,36 @@
     @Override
     public void finishReservation(Long id, Long reservationId) {
-        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
-        Long localId = reservation.getLocal().getId();
-
-        validateWorker(id, localId);
+        LocalWorker worker = validateWorker(id);
+        Reservation reservation = getAuthorizedReservation(worker, reservationId);
 
         reservation.setStatus(ReservationStatus.FINISHED);
         reservationRepository.save(reservation);
     }
+
+    private Reservation getAuthorizedReservation(LocalWorker worker, Long reservationId) {
+        Reservation reservation = reservationRepository.findById(reservationId)
+                .orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
+
+        if (!reservation.getLocal().getId().equals(worker.getLocal().getId())) {
+            throw new UnauthorizedException(worker.getId());
+        }
+
+        return reservation;
+    }
+
+
+    private LocalWorker validateWorker(Long workerUserId) {
+        LocalWorker worker = localWorkerRepository.findById(workerUserId)
+                .orElseThrow(() -> new WorkerIdNotFoundException(workerUserId));
+
+        if (worker.getUserRole() != Role.ROLE_LOCAL_WORKER) {
+            throw new UnauthorizedException(workerUserId);
+        }
+
+        if (worker.getLocal() == null) {
+            throw new WorkerNotAssignedException(workerUserId);
+        }
+
+        return worker;
+    }
 }
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/LocalWorkerService.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/LocalWorkerService.java	(revision c12b19ceda30b5ac7865d35e8fbe42a2d9477119)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/LocalWorkerService.java	(revision 98c38b68935b8b7986fba2b8450b7cff68a06bac)
@@ -22,7 +22,5 @@
     void updateLocalAssignment(LocalWorker worker, Local local);
 
-    List<DisplayLocalReservationDTO> viewLocalReservations(Long id, ReservationStatus status);
-
-    void validateWorker(Long id,Long localId);
+    List<DisplayLocalReservationDTO> viewWorkerLocalReservations(Long id, ReservationStatus status);
 
     void acceptReservation(Long id,Long reservationId);
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/LocalWorkerController.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/LocalWorkerController.java	(revision c12b19ceda30b5ac7865d35e8fbe42a2d9477119)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/LocalWorkerController.java	(revision 98c38b68935b8b7986fba2b8450b7cff68a06bac)
@@ -21,8 +21,7 @@
     }
 
-    @GetMapping("/{localId}/reservations")
-    public ResponseEntity<List<DisplayLocalReservationDTO>> viewLocalReservations(@PathVariable Long localId, @RequestParam(required = false) ReservationStatus status,@AuthenticationPrincipal User user) {
-        localWorkerService.validateWorker(user.getId(), localId);
-        List<DisplayLocalReservationDTO> reservations = localWorkerService.viewLocalReservations(localId,status);
+    @GetMapping("/reservations")
+    public ResponseEntity<List<DisplayLocalReservationDTO>> viewLocalReservations(@RequestParam(required = false) ReservationStatus status, @AuthenticationPrincipal User user) {
+        List<DisplayLocalReservationDTO> reservations = localWorkerService.viewWorkerLocalReservations(user.getId(), status);
         return new ResponseEntity<>(reservations, HttpStatus.OK);
     }
