Changeset 4894099 for ReserveNGo-backend
- Timestamp:
- 01/25/25 03:35:08 (3 months ago)
- Branches:
- master
- Children:
- 47890c4
- Parents:
- 17bf12d
- Location:
- ReserveNGo-backend
- Files:
-
- 4 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
ReserveNGo-backend/.gitignore
r17bf12d r4894099 15 15 16 16 ### IntelliJ IDEA ### 17 .idea 17 .idea/ 18 18 *.iws 19 19 *.iml -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/config/WebSecurityConfig.java
r17bf12d r4894099 42 42 .permitAll() 43 43 .requestMatchers("/api/customer/**").hasRole("CUSTOMER") 44 .requestMatchers("/api/admin/**").hasRole("ADMIN") 44 45 .anyRequest() 45 46 .authenticated() -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/Local.java
r17bf12d r4894099 69 69 private List<LocalWorker> workers; 70 70 71 public Local(String name) { 72 this.name = name; 73 } 74 75 public double calculateLocalAverageRating() { 76 if (ratings == null || ratings.isEmpty()) { 77 return 0.0; 78 } 79 double sum = 0.0; 80 for (Integer rating : ratings.values()) { 81 sum += rating; 82 } 83 return sum / ratings.size(); 84 } 85 71 86 72 87 public Long getId() { -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/model/Reservation.java
r17bf12d r4894099 42 42 @Enumerated(EnumType.STRING) 43 43 private ReservationStatus status; 44 45 public void setStatus(ReservationStatus status) { 46 this.status = status; 47 } 44 48 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/repository/ReservationRepository.java
r17bf12d r4894099 5 5 import org.springframework.stereotype.Repository; 6 6 7 import java.util.List; 8 7 9 @Repository 8 10 public interface ReservationRepository extends JpaRepository<Reservation, Long> { 11 List<Reservation> findAllByCustomerId(Long customerId); 9 12 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/AdminServiceImpl.java
r17bf12d r4894099 1 1 package mk.ukim.finki.it.reservengo.service.impl; 2 2 3 import mk.ukim.finki.it.reservengo.model.Local; 4 import mk.ukim.finki.it.reservengo.repository.LocalRepository; 3 5 import mk.ukim.finki.it.reservengo.service.intf.AdminService; 4 6 import org.springframework.stereotype.Service; … … 6 8 @Service 7 9 public class AdminServiceImpl implements AdminService { 10 11 private final LocalRepository localRepository; 12 13 public AdminServiceImpl(LocalRepository localRepository) { 14 this.localRepository = localRepository; 15 } 16 17 @Override 18 public void addLocal(String name) { 19 Local local = new Local(name); 20 localRepository.save(local); 21 } 22 23 @Override 24 public void deleteLocal(Long id) { 25 localRepository.deleteById(id); 26 } 8 27 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/AuthServiceImpl.java
r17bf12d r4894099 92 92 String jwt = jwtService.generateTokenNoClaims(user); 93 93 94 System.out.println(jwt);95 System.out.println(user);96 97 94 return new JWTAuthenticationResponse( 98 95 user.getId(), -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/LocalServiceImpl.java
r17bf12d r4894099 2 2 3 3 import mk.ukim.finki.it.reservengo.model.Local; 4 import mk.ukim.finki.it.reservengo.model.exceptions.LocalIdNotFoundException; 4 5 import mk.ukim.finki.it.reservengo.repository.LocalRepository; 5 6 import mk.ukim.finki.it.reservengo.service.intf.LocalService; … … 22 23 } 23 24 24 25 @Override 26 public Local getLocalById(Long id) { 27 return localRepository.findById(id) 28 .orElseThrow(() -> new LocalIdNotFoundException(id)); 29 } 30 25 31 26 32 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/impl/ReservationServiceImpl.java
r17bf12d r4894099 1 1 package mk.ukim.finki.it.reservengo.service.impl; 2 2 3 import mk.ukim.finki.it.reservengo.model.Reservation; 4 import mk.ukim.finki.it.reservengo.model.exceptions.ReservationIdNotFoundException; 5 import mk.ukim.finki.it.reservengo.repository.ReservationRepository; 3 6 import mk.ukim.finki.it.reservengo.service.intf.ReservationService; 4 7 import org.springframework.stereotype.Service; 5 8 9 import java.util.List; 10 11 6 12 @Service 7 13 public class ReservationServiceImpl implements ReservationService { 14 15 private final ReservationRepository reservationRepository; 16 17 public ReservationServiceImpl(ReservationRepository reservationRepository) { 18 this.reservationRepository = reservationRepository; 19 } 20 21 @Override 22 public Reservation getReservationById(Long id) { 23 return this.reservationRepository.findById(id).orElseThrow(() -> new ReservationIdNotFoundException(id)); 24 } 25 26 @Override 27 public List<Reservation> getCustomerReservations(Long id) { 28 return this.reservationRepository.findAllByCustomerId(id); 29 } 30 8 31 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/AdminService.java
r17bf12d r4894099 2 2 3 3 public interface AdminService { 4 5 void addLocal(String name); 6 7 void deleteLocal(Long id); 4 8 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/LocalService.java
r17bf12d r4894099 7 7 public interface LocalService { 8 8 List<Local> listAll(); 9 10 Local getLocalById(Long id); 9 11 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/service/intf/ReservationService.java
r17bf12d r4894099 1 1 package mk.ukim.finki.it.reservengo.service.intf; 2 2 3 import mk.ukim.finki.it.reservengo.model.Reservation; 4 5 import java.util.List; 6 3 7 public interface ReservationService { 8 Reservation getReservationById(Long id); 9 List<Reservation> getCustomerReservations(Long id); 4 10 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/CustomerController.java
r17bf12d r4894099 2 2 3 3 import mk.ukim.finki.it.reservengo.model.Customer; 4 import mk.ukim.finki.it.reservengo.model.Reservation; 4 5 import mk.ukim.finki.it.reservengo.model.User; 5 6 import mk.ukim.finki.it.reservengo.service.intf.CustomerService; 7 import mk.ukim.finki.it.reservengo.service.intf.ReservationService; 6 8 import org.springframework.http.ResponseEntity; 7 9 import org.springframework.security.core.annotation.AuthenticationPrincipal; 8 import org.springframework.web.bind.annotation.CrossOrigin; 9 import org.springframework.web.bind.annotation.GetMapping; 10 import org.springframework.web.bind.annotation.RequestMapping; 11 import org.springframework.web.bind.annotation.RestController; 10 import org.springframework.web.bind.annotation.*; 11 12 import java.util.List; 12 13 13 14 @RestController … … 17 18 18 19 private final CustomerService customerService; 20 private final ReservationService reservationService; 19 21 20 public CustomerController(CustomerService customerService ) {22 public CustomerController(CustomerService customerService, ReservationService reservationService) { 21 23 this.customerService = customerService; 24 this.reservationService = reservationService; 22 25 } 23 26 … … 33 36 return ResponseEntity.ok(userProfile); 34 37 } 38 39 40 @GetMapping("/reservations") 41 public ResponseEntity<?> getCustomerReservations(@AuthenticationPrincipal User user) { 42 List<Reservation> customerReservations = reservationService.getCustomerReservations(user.getId()); 43 return ResponseEntity.ok(customerReservations); 44 } 35 45 } -
ReserveNGo-backend/src/main/java/mk/ukim/finki/it/reservengo/web/LocalController.java
r17bf12d r4894099 1 1 package mk.ukim.finki.it.reservengo.web; 2 2 3 import mk.ukim.finki.it.reservengo.model.Local; 3 4 import mk.ukim.finki.it.reservengo.service.intf.LocalService; 4 5 import org.springframework.http.ResponseEntity; 5 import org.springframework.web.bind.annotation.CrossOrigin; 6 import org.springframework.web.bind.annotation.GetMapping; 7 import org.springframework.web.bind.annotation.RequestMapping; 8 import org.springframework.web.bind.annotation.RestController; 6 import org.springframework.web.bind.annotation.*; 9 7 10 8 @RestController 11 @RequestMapping("/api ")9 @RequestMapping("/api/locals") 12 10 @CrossOrigin("*") 13 11 public class LocalController { … … 19 17 } 20 18 21 @GetMapping ("/locals")22 public ResponseEntity<?> getLocals() {19 @GetMapping 20 public ResponseEntity<?> getLocals() { 23 21 return ResponseEntity.ok(localService.listAll()); 24 22 } 23 24 @GetMapping("/{id}") 25 public ResponseEntity<?> getLocalInformation(@PathVariable Long id) { 26 Local local = localService.getLocalById(id); 27 return ResponseEntity.ok(local); 28 } 29 30 25 31 }
Note:
See TracChangeset
for help on using the changeset viewer.