1 | package finki.paw5.service.implementation;
|
---|
2 |
|
---|
3 | import finki.paw5.model.entities.Adopter;
|
---|
4 | import finki.paw5.model.entities.Employee;
|
---|
5 | import finki.paw5.model.entities.Shelter;
|
---|
6 | import finki.paw5.model.entities.User;
|
---|
7 | import finki.paw5.model.enumerations.FreeTime;
|
---|
8 | import finki.paw5.model.enumerations.Funds;
|
---|
9 | import finki.paw5.model.enumerations.Housing;
|
---|
10 | import finki.paw5.model.enumerations.PhysicalActivity;
|
---|
11 | import finki.paw5.repository.AdopterRepository;
|
---|
12 | import finki.paw5.repository.EmployeeRepository;
|
---|
13 | import finki.paw5.repository.ShelterRepository;
|
---|
14 | import finki.paw5.repository.UserRepository;
|
---|
15 | import finki.paw5.service.AuthService;
|
---|
16 | import org.springframework.stereotype.Service;
|
---|
17 |
|
---|
18 | import java.time.LocalDate;
|
---|
19 |
|
---|
20 | @Service
|
---|
21 | public class AuthServiceImplementation implements AuthService {
|
---|
22 |
|
---|
23 | private final UserRepository userRepository;
|
---|
24 | private final AdopterRepository adopterRepository;
|
---|
25 | private final EmployeeRepository employeeRepository;
|
---|
26 | private final ShelterRepository shelterRepository;
|
---|
27 |
|
---|
28 | public AuthServiceImplementation(UserRepository userRepository, AdopterRepository adopterRepository, EmployeeRepository employeeRepository, ShelterRepository shelterRepository) {
|
---|
29 | this.userRepository = userRepository;
|
---|
30 | this.adopterRepository = adopterRepository;
|
---|
31 | this.employeeRepository = employeeRepository;
|
---|
32 | this.shelterRepository = shelterRepository;
|
---|
33 | }
|
---|
34 |
|
---|
35 | @Override
|
---|
36 | public User login(String email, String password) {
|
---|
37 |
|
---|
38 | if(userRepository.findByEmailAndPassword(email, password)!=null){
|
---|
39 | return userRepository.findByEmailAndPassword(email,password);
|
---|
40 | }
|
---|
41 | return null;
|
---|
42 | }
|
---|
43 |
|
---|
44 |
|
---|
45 | @Override
|
---|
46 | public Adopter registerAdopter(String name, String email, String password, String telephone, FreeTime freeTime, Funds funds, boolean hasOtherPets, boolean hasKids, Housing housing, PhysicalActivity physicalActivity, boolean willFoster) {
|
---|
47 | Adopter adopter = new Adopter(LocalDate.now(), name, email, password, telephone,freeTime,funds,hasOtherPets,hasKids,housing,physicalActivity,willFoster,false);
|
---|
48 | return adopterRepository.save(adopter);
|
---|
49 | }
|
---|
50 |
|
---|
51 | @Override
|
---|
52 | public Employee registerEmployee(String name, String email, String password, String telephone, String position, Integer shelterId) {
|
---|
53 | Shelter shelter = this.shelterRepository.findById(shelterId).get();
|
---|
54 | Employee employee = new Employee(LocalDate.now(),name, email,password,telephone,position,shelter,false);
|
---|
55 | return employeeRepository.save(employee);
|
---|
56 | }
|
---|
57 |
|
---|
58 | }
|
---|