source: Git/src/main/java/com/wediscussmovies/project/service/impl/ReplyServiceImpl.java@ e0ef1b1

main
Last change on this file since e0ef1b1 was e0ef1b1, checked in by Test <matonikolov77@…>, 2 years ago

Added CRUD for movies,persons,discussion,replies,genres
Added ajaxcalls

  • Property mode set to 100644
File size: 2.7 KB
Line 
1package com.wediscussmovies.project.service.impl;
2
3import com.wediscussmovies.project.model.Discussion;
4import com.wediscussmovies.project.model.exception.DiscussionNotExistException;
5import com.wediscussmovies.project.model.exception.ReplyNotExistException;
6import com.wediscussmovies.project.model.primarykeys.ReplyPK;
7import com.wediscussmovies.project.repository.DiscussionRepository;
8import com.wediscussmovies.project.repository.ReplyRepository;
9import com.wediscussmovies.project.model.Reply;
10import com.wediscussmovies.project.model.User;
11import com.wediscussmovies.project.repository.UserRepository;
12import com.wediscussmovies.project.service.ReplyService;
13import org.springframework.stereotype.Service;
14
15import java.sql.Date;
16import java.time.LocalDate;
17import java.util.List;
18
19@Service
20public class ReplyServiceImpl implements ReplyService {
21
22 private final ReplyRepository replyRepository;
23 private final DiscussionRepository discussionRepository;
24
25 public ReplyServiceImpl(ReplyRepository replyRepository,
26 DiscussionRepository discussionRepository) {
27 this.replyRepository = replyRepository;
28 this.discussionRepository = discussionRepository;
29 }
30
31
32
33 @Override
34 public void save(Integer discussionId, String text,User user) {
35
36 Discussion discussion = this.discussionRepository.findById(discussionId).orElseThrow(() -> new DiscussionNotExistException(discussionId));
37
38 Date date = Date.valueOf(LocalDate.now());
39 this.replyRepository.insertInto(text,date,user.getUserId(),discussionId);
40
41 }
42
43 @Override
44 public void likeReply(Integer replyId, Integer userId) {
45 //da se implementira, promena vo baza
46 }
47
48 @Override
49 public void unlikeReply(Integer replyId, Integer userId) {
50 // da se implementira, promena vo baza
51 }
52
53 @Override
54 public List<Reply> findAllByDiscussion(Discussion discussion) {
55 return this.replyRepository.findAllByDiscussion(discussion);
56 }
57
58
59 @Override
60 public Reply edit(Integer replyId,Integer discussionId,String text) {
61 ReplyPK replyPK = new ReplyPK(discussionId,replyId);
62 Reply reply = this.replyRepository.findById(replyPK).orElseThrow();
63 reply.setText(text);
64 return this.replyRepository.save(reply);
65 }
66
67 @Override
68 public void delete(Integer discussionId, Integer replyId) {
69 this.replyRepository.deleteById(new ReplyPK(discussionId,replyId));
70 }
71
72 @Override
73 public Reply findById(Integer discussionId, Integer replyId) {
74 ReplyPK replyPK = new ReplyPK(discussionId,replyId);
75 return this.replyRepository.findById(replyPK).orElseThrow(() -> new ReplyNotExistException(replyPK));
76
77 }
78}
Note: See TracBrowser for help on using the repository browser.