Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/InfobipConfig.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/InfobipConfig.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ 	(revision )
@@ -1,15 +1,0 @@
-package mk.ukim.finki.it.reservengo.config;
-
-import lombok.Data;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@ConfigurationProperties(prefix = "infobip")
-@Data
-public class InfobipConfig {
-    private String key;
-    private String base;
-    private String sender;
-
-}
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/TwilioConfig.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/TwilioConfig.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ 	(revision )
@@ -1,22 +1,0 @@
-package mk.ukim.finki.it.reservengo.config;
-
-import com.twilio.Twilio;
-import jakarta.annotation.PostConstruct;
-import lombok.Data;
-import org.springframework.boot.context.properties.ConfigurationProperties;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-@ConfigurationProperties(prefix = "twilio")
-@Data
-public class TwilioConfig {
-    private String sid;
-    private String token;
-    private String number;
-
-    @PostConstruct
-    public void init() {
-        Twilio.init(sid, token);
-    }
-}
-
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/WebSecurityConfig.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/WebSecurityConfig.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/WebSecurityConfig.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -57,6 +57,6 @@
                         .requestMatchers("/api/customer/**").hasRole("CUSTOMER")
                         .requestMatchers("/api/local-manager/**").hasRole("LOCAL_MANAGER")
+                        .requestMatchers("/api/local-worker/**").hasRole("LOCAL_WORKER")
                         .requestMatchers("/api/admin/**").hasRole("ADMIN")
-                        .requestMatchers("/api/local-worker/**").hasRole("LOCAL_WORKER")
                         .anyRequest()
                         .authenticated()
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DeleteReservationDTO.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DeleteReservationDTO.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/dto/reservationDTO/DeleteReservationDTO.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -0,0 +1,8 @@
+package mk.ukim.finki.it.reservengo.dto.reservationDTO;
+
+import java.util.List;
+
+public record DeleteReservationDTO(
+        List<Long> reservationIds
+) {
+}
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/exceptions/UnauthorizedException.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/exceptions/UnauthorizedException.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/exceptions/UnauthorizedException.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -5,7 +5,3 @@
         super("User with id " + id + " is not a worker");
     }
-
-  public UnauthorizedException(Long workerId,Long localId) {
-      super("User with id " + workerId + " is not a worker in local " + localId);
-  }
 }
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/CustomerServiceImpl.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -4,8 +4,5 @@
 import mk.ukim.finki.it.reservengo.dto.eventDTO.DisplayEventDTO;
 import mk.ukim.finki.it.reservengo.dto.localDTO.DisplayLocalDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.CreateReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.DisplayReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationInfoDTO;
+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.*;
@@ -230,11 +227,14 @@
 
     @Override
-    public void deleteReservation(Long id, Long reservationId) {
-        Customer customer = customerRepository.findById(id).orElseThrow(() -> new CustomerIdNotFoundException(id));
-        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
-        reservation.setStatus(ReservationStatus.CANCELED);
-        reservation.setCustomer(null);
-        customer.getReservations().remove(reservation);
-        reservationRepository.save(reservation);
+    public void deleteReservation(Long id, DeleteReservationDTO deleteReservationDTO) {
+        Customer customer = customerRepository.findById(id).orElseThrow(() -> new CustomerIdNotFoundException(id));
+        List<Reservation> reservations = reservationRepository.findAllById(deleteReservationDTO.reservationIds());
+        for (Reservation reservation : reservations) {
+            reservation.setStatus(ReservationStatus.CANCELED);
+            reservation.setCustomer(null);
+            customer.getReservations().remove(reservation);
+            reservationRepository.save(reservation);
+        }
+
         customerRepository.save(customer);
     }
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/EventServiceImpl.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/EventServiceImpl.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/EventServiceImpl.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -21,9 +21,4 @@
     public EventServiceImpl(EventRepository eventRepository) {
         this.eventRepository = eventRepository;
-    }
-
-    @Override
-    public List<Event> listAll() {
-        return eventRepository.findAll();
     }
 
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/LocalWorkerServiceImpl.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -2,4 +2,5 @@
 
 import jakarta.mail.MessagingException;
+import mk.ukim.finki.it.reservengo.dto.reservationDTO.DeleteReservationDTO;
 import mk.ukim.finki.it.reservengo.dto.workerDTO.DisplayLocalReservationDTO;
 import mk.ukim.finki.it.reservengo.model.domain.Local;
@@ -15,5 +16,4 @@
 import mk.ukim.finki.it.reservengo.service.intf.EmailService;
 import mk.ukim.finki.it.reservengo.service.intf.LocalWorkerService;
-import mk.ukim.finki.it.reservengo.service.intf.SmsService;
 import mk.ukim.finki.it.reservengo.service.intf.UserService;
 import org.springframework.stereotype.Service;
@@ -27,14 +27,12 @@
     private final UserService userService;
     private final ReservationRepository reservationRepository;
-    private final SmsService smsService;
     private final EmailService emailService;
     private final LocalRepository localRepository;
 
 
-    public LocalWorkerServiceImpl(LocalWorkerRepository localWorkerRepository, UserService userService, ReservationRepository reservationRepository, SmsService smsService, EmailService emailService, LocalRepository localRepository) {
+    public LocalWorkerServiceImpl(LocalWorkerRepository localWorkerRepository, UserService userService, ReservationRepository reservationRepository, EmailService emailService, LocalRepository localRepository) {
         this.localWorkerRepository = localWorkerRepository;
         this.userService = userService;
         this.reservationRepository = reservationRepository;
-        this.smsService = smsService;
         this.emailService = emailService;
         this.localRepository = localRepository;
@@ -103,9 +101,4 @@
         reservationRepository.save(reservation);
 
-//        smsService.sendSms(
-//                reservation.getCustomer().getPhoneNumber(),
-//                "Your reservation has been ACCEPTED."
-//        );
-
         emailService.sendReservationFeedbackEmail(reservation.getCustomer().getEmail(), ReservationStatus.ACCEPTED);
     }
@@ -118,9 +111,4 @@
         reservation.setStatus(ReservationStatus.CANCELED);
         reservationRepository.save(reservation);
-
-        smsService.sendSms(
-                reservation.getCustomer().getPhoneNumber(),
-                "Your reservation has been DECLINED."
-        );
 
         emailService.sendReservationFeedbackEmail(reservation.getCustomer().getEmail(), ReservationStatus.CANCELED);
@@ -137,18 +125,20 @@
 
     @Override
-    public void deleteReservation(Long id, Long reservationId) {
+    public void deleteReservation(Long id, DeleteReservationDTO deleteReservationDTO) {
         LocalWorker worker = localWorkerRepository.findById(id).orElseThrow(() -> new WorkerIdNotFoundException(id));
-        Reservation reservation = getAuthorizedReservation(worker, reservationId);
+        List<Reservation> reservations = getAuthorizedReservations(worker, deleteReservationDTO.reservationIds());
         Local local = worker.getLocal();
-        reservation.setStatus(ReservationStatus.CANCELED);
-        reservation.setLocal(null);
-        local.getReservations().remove(reservation);
-        reservationRepository.save(reservation);
+        for (Reservation reservation : reservations) {
+            reservation.setStatus(ReservationStatus.CANCELED);
+            reservation.setLocal(null);
+            local.getReservations().remove(reservation);
+            reservationRepository.save(reservation);
+        }
+
         localRepository.save(local);
     }
 
     private Reservation getAuthorizedReservation(LocalWorker worker, Long reservationId) {
-        Reservation reservation = reservationRepository.findById(reservationId)
-                .orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
+        Reservation reservation = reservationRepository.findById(reservationId).orElseThrow(() -> new ReservationIdNotFoundException(reservationId));
 
         if (!reservation.getLocal().getId().equals(worker.getLocal().getId())) {
@@ -159,4 +149,15 @@
     }
 
+    private List<Reservation> getAuthorizedReservations(LocalWorker worker, List<Long> reservationIds) {
+        List<Reservation> reservations = reservationRepository.findAllById(reservationIds);
+
+        for (Reservation reservation : reservations) {
+            if (!reservation.getLocal().getId().equals(worker.getLocal().getId())) {
+                throw new UnauthorizedException(worker.getId());
+            }
+        }
+
+        return reservations;
+    }
 
     private LocalWorker validateWorker(Long workerUserId) {
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/SmsServiceImpl.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/SmsServiceImpl.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ 	(revision )
@@ -1,73 +1,0 @@
-package mk.ukim.finki.it.reservengo.service.impl;
-
-//import com.twilio.rest.api.v2010.account.Message;
-//import com.twilio.type.PhoneNumber;
-//import mk.ukim.finki.it.reservengo.config.InfobipConfig;
-//import mk.ukim.finki.it.reservengo.config.TwilioConfig;
-//import mk.ukim.finki.it.reservengo.service.intf.SmsService;
-//import org.springframework.http.MediaType;
-//import org.springframework.stereotype.Service;
-//import org.springframework.web.client.RestTemplate;
-
-//import java.net.http.HttpHeaders;
-//import java.util.Map;
-
-import mk.ukim.finki.it.reservengo.config.InfobipConfig;
-import mk.ukim.finki.it.reservengo.service.intf.SmsService;
-import org.springframework.http.*;
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-
-import java.util.List;
-import java.util.Map;
-
-@Service
-public class SmsServiceImpl implements SmsService {
-    //    private final TwilioConfig config;
-//
-//    public SmsServiceImpl(TwilioConfig config) {
-//        this.config = config;
-//    }
-//
-//    public void sendSms(String to, String text) {
-//        Message.creator(
-//                new PhoneNumber(to),
-//                new PhoneNumber(config.getNumber()),
-//                text
-//        ).create();
-//    }
-    private final InfobipConfig config;
-    private final RestTemplate restTemplate = new RestTemplate();
-
-    public SmsServiceImpl(InfobipConfig config) {
-        this.config = config;
-    }
-
-    @Override
-    public void sendSms(String to, String text) {
-
-        String url = config.getBase() + "/sms/2/text/advanced";
-
-        HttpHeaders headers = new HttpHeaders();
-        headers.setContentType(MediaType.APPLICATION_JSON);
-        headers.set("Authorization", "App " + config.getKey());
-
-        Map<String, Object> body = Map.of(
-                "messages", List.of(
-                        Map.of(
-                                "from", config.getSender(),
-                                "destinations", List.of(
-                                        Map.of("to", to)
-                                ),
-                                "text", text
-                        )
-                )
-        );
-
-        HttpEntity<Map<String, Object>> entity =
-                new HttpEntity<>(body, headers);
-
-        restTemplate.postForEntity(url, entity, String.class);
-    }
-
-}
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/CustomerService.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -4,8 +4,5 @@
 import mk.ukim.finki.it.reservengo.dto.eventDTO.DisplayEventDTO;
 import mk.ukim.finki.it.reservengo.dto.localDTO.DisplayLocalDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.CreateReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.DisplayReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationInfoDTO;
+import mk.ukim.finki.it.reservengo.dto.reservationDTO.*;
 import mk.ukim.finki.it.reservengo.model.domain.Customer;
 
@@ -46,4 +43,4 @@
     DisplayReservationDTO makeReservation(Long id, CreateReservationDTO createReservationDTO);
 
-    void deleteReservation(Long id, Long reservationId);
+    void deleteReservation(Long id, DeleteReservationDTO deleteReservationDTO);
 }
Index: ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/EventService.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/EventService.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/EventService.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -8,9 +8,5 @@
 import org.springframework.data.domain.Page;
 
-import java.util.List;
-
 public interface EventService {
-    List<Event> listAll();
-
     Page<DisplayEventDTO> searchEvents(Local local, String name, EventType eventType, EventStatus eventStatus, int page, int size, String sortBy, String direction);
 
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/LocalWorkerService.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -2,4 +2,5 @@
 
 import jakarta.mail.MessagingException;
+import mk.ukim.finki.it.reservengo.dto.reservationDTO.DeleteReservationDTO;
 import mk.ukim.finki.it.reservengo.dto.workerDTO.DisplayLocalReservationDTO;
 import mk.ukim.finki.it.reservengo.model.domain.Local;
@@ -31,4 +32,4 @@
     void finishReservation(Long id, Long reservationId);
 
-    void deleteReservation(Long id, Long reservationId);
+    void deleteReservation(Long id, DeleteReservationDTO deleteReservationDTO);
 }
Index: serveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/SmsService.java
===================================================================
--- ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/SmsService.java	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ 	(revision )
@@ -1,5 +1,0 @@
-package mk.ukim.finki.it.reservengo.service.intf;
-
-public interface SmsService {
-    void sendSms(String phoneNumber, String message);
-}
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/CustomerController.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -4,8 +4,5 @@
 import mk.ukim.finki.it.reservengo.dto.eventDTO.DisplayEventDTO;
 import mk.ukim.finki.it.reservengo.dto.localDTO.DisplayLocalDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.CreateReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.DisplayReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationDTO;
-import mk.ukim.finki.it.reservengo.dto.reservationDTO.EditReservationInfoDTO;
+import mk.ukim.finki.it.reservengo.dto.reservationDTO.*;
 import mk.ukim.finki.it.reservengo.model.domain.User;
 import mk.ukim.finki.it.reservengo.service.intf.CustomerService;
@@ -113,5 +110,5 @@
     }
 
-    @PostMapping("/make-reservation")
+    @PostMapping("/reservations/create")
     public ResponseEntity<DisplayReservationDTO> makeReservation(@AuthenticationPrincipal User user, @RequestBody CreateReservationDTO createReservationDTO) {
         DisplayReservationDTO newReservation = customerService.makeReservation(user.getId(), createReservationDTO);
@@ -119,7 +116,7 @@
     }
 
-    @DeleteMapping("/reservations/{reservationId}/delete")
-    public ResponseEntity<Void> deleteReservation(@PathVariable Long reservationId, @AuthenticationPrincipal User user) {
-        customerService.deleteReservation(user.getId(), reservationId);
+    @DeleteMapping("/reservations/delete")
+    public ResponseEntity<Void> deleteReservation(@AuthenticationPrincipal User user, @RequestBody DeleteReservationDTO deleteReservationDTO) {
+        customerService.deleteReservation(user.getId(), deleteReservationDTO);
         return new ResponseEntity<>(HttpStatus.OK);
     }
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 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/controller/LocalWorkerController.java	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -2,4 +2,5 @@
 
 import jakarta.mail.MessagingException;
+import mk.ukim.finki.it.reservengo.dto.reservationDTO.DeleteReservationDTO;
 import mk.ukim.finki.it.reservengo.dto.workerDTO.DisplayLocalReservationDTO;
 import mk.ukim.finki.it.reservengo.model.domain.User;
@@ -48,7 +49,7 @@
     }
 
-    @DeleteMapping("/reservations/{reservationId}/delete")
-    public ResponseEntity<Void> deleteReservation(@PathVariable Long reservationId, @AuthenticationPrincipal User user) {
-        localWorkerService.deleteReservation(user.getId(), reservationId);
+    @DeleteMapping("/reservations/delete")
+    public ResponseEntity<Void> deleteReservation(@AuthenticationPrincipal User user, @RequestBody DeleteReservationDTO deleteReservationDTO) {
+        localWorkerService.deleteReservation(user.getId(), deleteReservationDTO);
         return new ResponseEntity<>(HttpStatus.OK);
     }
Index: ReserveNGo-backend/src/main/resources/application-dev.properties
===================================================================
--- ReserveNGo-backend/src/main/resources/application-dev.properties	(revision 11df4ccf3d079caf0b11c25fab553fa2fda96b05)
+++ ReserveNGo-backend/src/main/resources/application-dev.properties	(revision e610bbc13509102f5afe5abf415ea73b5ec8cdd7)
@@ -19,10 +19,2 @@
 spring.security.oauth2.client.registration.google.client-id=${CLIENT_ID}
 spring.security.oauth2.client.registration.google.client-secret=${CLIENT_SECRET}
-
-twilio.sid=${TWILIO_SID}
-twilio.token=${TWILIO_TOKEN}
-twilio.number=${TWILIO_NUMBER}
-
-infobip.key=${INFOBIP_API_KEY}
-infobip.base=${INFOBIP_BASE_URL}
-infobip.sender=${INFOBIP_SENDER}
