source: Git/src/main/java/com/wediscussmovies/project/service/impl/PersonServiceImpl.java@ 7bc8942

main
Last change on this file since 7bc8942 was 2a5d6a3, checked in by Petar Partaloski <ppartaloski@…>, 2 years ago

Controller, Repository and Service layer improvements, Entity updating

  • Property mode set to 100644
File size: 2.2 KB
Line 
1package com.wediscussmovies.project.service.impl;
2
3import com.wediscussmovies.project.model.Person;
4import com.wediscussmovies.project.model.PersonType;
5import com.wediscussmovies.project.repository.PersonRepository;
6import com.wediscussmovies.project.service.PersonService;
7import org.springframework.stereotype.Service;
8
9import java.util.List;
10import java.util.Optional;
11
12@Service
13public class PersonServiceImpl implements PersonService {
14 private final PersonRepository personRepository;
15
16 public PersonServiceImpl(PersonRepository personRepository) {
17 this.personRepository = personRepository;
18 }
19
20 @Override
21 public List<Person> findAllDirectors() {
22 return personRepository.findAllByPersonType(PersonType.D);
23 }
24
25 @Override
26 public Optional<Person> findActorById(Integer id) {
27 return personRepository.findPersonByPerson_idAndPersonType(id, PersonType.A);
28 }
29
30 @Override
31 public Optional<Person> findById(Integer person_id) {
32 return personRepository.findById(person_id);
33 }
34
35 @Override
36 public Optional<Person> findDirectorById(Integer id) {
37 return personRepository.findPersonByPerson_idAndPersonType(id, PersonType.D);
38 }
39
40 @Override
41 public List<Person> findAllActors() {
42 return personRepository.findAllByPersonType(PersonType.A);
43 }
44
45 @Override
46 public boolean save(Person person) {
47 Person p = personRepository.save(person);
48 if(p != null)
49 return true;
50 return false;
51 }
52
53 @Override
54 public List<Person> findActorsByNameLike(String name) {
55 return personRepository.findAllByPersonTypeAndNameLike(PersonType.A, name);
56 }
57
58 @Override
59 public List<Person> findActorsBySurnameLike(String surname) {
60 return personRepository.findAllByPersonTypeAndSurnameLike(PersonType.A, surname);
61 }
62
63 @Override
64 public List<Person> findDirectorsByNameLike(String name) {
65 return personRepository.findAllByPersonTypeAndNameLike(PersonType.D, name);
66 }
67
68 @Override
69 public List<Person> findDirectorsBySurnameLike(String surname) {
70 return personRepository.findAllByPersonTypeAndSurnameLike(PersonType.D, surname);
71 }
72}
Note: See TracBrowser for help on using the repository browser.