Changes in src/main/java/com/wediscussmovies/project/service/impl/DiscussionServiceImpl.java [c02189f:e0ef1b1] in Git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/com/wediscussmovies/project/service/impl/DiscussionServiceImpl.java
rc02189f re0ef1b1 5 5 import com.wediscussmovies.project.model.exception.PersonNotExistException; 6 6 import com.wediscussmovies.project.model.exception.UserNotExistException; 7 import com.wediscussmovies.project.model.primarykeys.DiscussionLikesPK; 8 import com.wediscussmovies.project.model.relation.DiscussionLikes; 9 import com.wediscussmovies.project.repository.*; 7 import com.wediscussmovies.project.repository.DiscussionRepository; 10 8 import com.wediscussmovies.project.model.Discussion; 11 9 import com.wediscussmovies.project.model.Movie; 12 10 import com.wediscussmovies.project.model.Person; 13 11 import com.wediscussmovies.project.model.User; 12 import com.wediscussmovies.project.repository.MovieRepository; 13 import com.wediscussmovies.project.repository.PersonRepository; 14 import com.wediscussmovies.project.repository.UserRepository; 14 15 import com.wediscussmovies.project.service.DiscussionService; 16 import com.wediscussmovies.project.service.MovieService; 17 import com.wediscussmovies.project.service.PersonService; 18 import com.wediscussmovies.project.service.UserService; 15 19 import org.springframework.stereotype.Service; 16 20 17 21 import java.sql.Date; 18 22 import java.time.LocalDate; 19 import java.util.ArrayList;20 23 import java.util.List; 21 24 … … 24 27 25 28 private final DiscussionRepository discussionRepository; 26 private final DiscussionLikesRepository discussionLikesRepository;27 29 private final UserRepository userRepository; 28 30 … … 30 32 private final PersonRepository personRepository; 31 33 32 public DiscussionServiceImpl(DiscussionRepository discussionRepository, DiscussionLikesRepository discussionLikesRepository,UserRepository userRepository,34 public DiscussionServiceImpl(DiscussionRepository discussionRepository, UserRepository userRepository, 33 35 MovieRepository movieRepository, PersonRepository personRepository) { 34 36 this.discussionRepository = discussionRepository; 35 this.discussionLikesRepository = discussionLikesRepository;36 37 this.userRepository = userRepository; 37 38 this.movieRepository = movieRepository; … … 93 94 @Override 94 95 public void likeDiscussion(Integer discussionId, Integer userId) { 95 Discussion discussion = discussionRepository.findById(discussionId).orElseThrow(() -> new DiscussionNotExistException(discussionId)); 96 User user = userRepository.findById(userId).orElseThrow(() -> new UserNotExistException(userId.toString())); 97 this.discussionLikesRepository.save(new DiscussionLikes(discussion, user)); 98 } 99 100 @Override 101 public List<Discussion> findLikedDiscussionsByUser(User user) { 102 List<DiscussionLikes> likes = discussionLikesRepository.findAllByUser(user); 103 List<Discussion> discussions = new ArrayList<>(); 104 for(DiscussionLikes dl: likes){ 105 discussions.add(dl.getDiscussion()); 106 } 107 return discussions; 96 //ova fali od dijagram 108 97 } 109 98 110 99 @Override 111 100 public void unlikeDiscussion(Integer discussionId, Integer userId) { 112 DiscussionLikesPK pk = new DiscussionLikesPK(discussionId, userId); 113 this.discussionLikesRepository.deleteById(pk); 101 // ova fali od dijagram 114 102 } 115 116 @Override117 public com.wediscussmovies.project.querymodels.DiscussionLikes findLikesForDiscussionWithId(int discussionId) {118 return discussionRepository.findAllWithLikes().stream().filter(d -> d.getDiscussionId().equals(discussionId)).findFirst().get();119 }120 121 103 122 104 @Override
Note:
See TracChangeset
for help on using the changeset viewer.