source: src/main/java/mk/ukim/finki/eglas/services/Impl/ObjectionServiceImpl.java@ ac151d1

main
Last change on this file since ac151d1 was ac151d1, checked in by David <darsov2@…>, 11 days ago

initial

  • Property mode set to 100644
File size: 2.5 KB
Line 
1package mk.ukim.finki.eglas.services.Impl;
2
3import mk.ukim.finki.eglas.model.*;
4import mk.ukim.finki.eglas.repository.ObjectionRepository;
5import mk.ukim.finki.eglas.repository.PartyRepository;
6import mk.ukim.finki.eglas.services.*;
7import org.springframework.stereotype.Service;
8
9import java.util.List;
10// Jovan
11
12@Service
13public class ObjectionServiceImpl implements ObjectionService {
14 private final ObjectionRepository objectionRepository;
15 private final PartyService partyService;
16 private final ElectionRealizationService electionRealizationService;
17 private final AddressService addressService;
18
19 ObjectionServiceImpl(ObjectionRepository objectionRepository, PartyService partyService, ElectionRealizationService electionRealizationService, AddressService addressService){
20 this.objectionRepository = objectionRepository;
21 this.partyService = partyService;
22 this.electionRealizationService = electionRealizationService;
23 this.addressService = addressService;
24 }
25
26 @Override
27 public List<Objection> findAll() {
28 return objectionRepository.findAll();
29 }
30
31 @Override
32 public Objection findById(Long id) {
33 return objectionRepository.findById(id).orElseThrow(() -> new RuntimeException("Objection not found"));
34 }
35
36 @Override
37 public Objection update(Long id, Long electionRealizationId, Long pollingStationId, String description) {
38 ElectionRealization electionRealization = electionRealizationService.findById(electionRealizationId);
39 PollingStation pollingStation = addressService.findPollingStationById(pollingStationId);
40 Objection objection = new Objection();
41 if(id != null)
42 {
43 objection = findById(id);
44 }
45
46 objection.setDescription(description);
47 objection.setElectionRealization(electionRealization);
48 objection.setPollingStation(pollingStation);
49 return objectionRepository.save(objection);
50 }
51
52 @Override
53 public Objection delete(Long id) {
54 Objection objection = findById(id);
55 objectionRepository.delete(objection);
56 return objection;
57 }
58
59 @Override
60 public Objection accept(Long id) {
61 Objection objection = findById(id);
62 objection.setStatus(2);
63 return objectionRepository.save(objection);
64 }
65
66 @Override
67 public Objection reject(Long id) {
68 Objection objection = findById(id);
69 objection.setStatus(3);
70 return objectionRepository.save(objection);
71 }
72}
Note: See TracBrowser for help on using the repository browser.