source: src/main/java/com/example/skychasemk/services/ReviewService.java@ 57e58a3

Last change on this file since 57e58a3 was 57e58a3, checked in by ste08 <sjovanoska@…>, 4 months ago

Initial commit

  • Property mode set to 100644
File size: 1.6 KB
Line 
1package com.example.skychasemk.services;
2
3import com.example.skychasemk.dto.ReviewDTO;
4import com.example.skychasemk.model.Review;
5import com.example.skychasemk.repository.ReviewRepository;
6import org.springframework.beans.factory.annotation.Autowired;
7import org.springframework.stereotype.Service;
8
9import java.time.LocalDate;
10import java.util.List;
11import java.util.Optional;
12
13@Service
14public class ReviewService {
15
16 @Autowired
17 private ReviewRepository reviewRepository;
18
19 // Get all reviews
20 public List<Review> getAllReviews() {
21 return reviewRepository.findAll();
22 }
23
24 // Get review by ID
25 public Optional<Review> getReviewById(Integer reviewID) {
26 return reviewRepository.findById(reviewID);
27 }
28
29 public Review submitReview(ReviewDTO dto) {
30 Review review = new Review();
31 review.setUserID(dto.getUserID());
32 review.setTargetID(dto.getTargetID());
33 review.setReviewComment(dto.getReviewComment());
34 review.setRating(dto.getRating());
35 review.setDate(LocalDate.now());
36
37 return reviewRepository.save(review);
38 }
39
40 // Update an existing review
41 public Review updateReview(Integer reviewID, Review review) {
42 if (reviewRepository.existsById(reviewID)) {
43 review.setReviewID(reviewID);
44 return reviewRepository.save(review);
45 } else {
46 throw new RuntimeException("Review not found with id " + reviewID);
47 }
48 }
49
50 // Delete a review
51 public void deleteReview(Integer reviewID) {
52 reviewRepository.deleteById(reviewID);
53 }
54}
55
Note: See TracBrowser for help on using the repository browser.