1 | package project.fmo.app.projcetfmo.Service.impl;
|
---|
2 |
|
---|
3 | import org.springframework.data.domain.Page;
|
---|
4 | import org.springframework.data.domain.Pageable;
|
---|
5 | import org.springframework.stereotype.Service;
|
---|
6 | import project.fmo.app.projcetfmo.Model.AdminKorisnik;
|
---|
7 | import project.fmo.app.projcetfmo.Model.Produkt;
|
---|
8 | import project.fmo.app.projcetfmo.Repository.AdminRepository;
|
---|
9 | import project.fmo.app.projcetfmo.Repository.ProduktRepository;
|
---|
10 | import project.fmo.app.projcetfmo.Service.ProduktService;
|
---|
11 |
|
---|
12 |
|
---|
13 | import java.util.List;
|
---|
14 | import java.util.Optional;
|
---|
15 | import java.util.Random;
|
---|
16 |
|
---|
17 | @Service
|
---|
18 | public class ProduktServiceImpl implements ProduktService {
|
---|
19 |
|
---|
20 | private final ProduktRepository produktRepository;
|
---|
21 | private final AdminRepository adminRepository;
|
---|
22 |
|
---|
23 | public ProduktServiceImpl(ProduktRepository produktRepository, AdminRepository adminRepository) {
|
---|
24 | this.produktRepository = produktRepository;
|
---|
25 | this.adminRepository = adminRepository;
|
---|
26 | }
|
---|
27 |
|
---|
28 | @Override
|
---|
29 | public Optional<Produkt> findById(Integer id) {
|
---|
30 | return produktRepository.findById(id);
|
---|
31 | }
|
---|
32 |
|
---|
33 | @Override
|
---|
34 | public List<Produkt> findAll() {
|
---|
35 | return produktRepository.findAll();
|
---|
36 | }
|
---|
37 |
|
---|
38 | @Override
|
---|
39 | public Produkt save(String ime, String opis) {
|
---|
40 | List<AdminKorisnik> list = adminRepository.findAll();
|
---|
41 | Random rand = new Random();
|
---|
42 | int randomIndex = rand.nextInt(list.size());
|
---|
43 | AdminKorisnik a = list.get(randomIndex);
|
---|
44 | if (a == null){
|
---|
45 | throw new RuntimeException();
|
---|
46 | }
|
---|
47 | Produkt p = new Produkt(ime, opis, a);
|
---|
48 | produktRepository.save(p);
|
---|
49 | return p;
|
---|
50 | }
|
---|
51 |
|
---|
52 | @Override
|
---|
53 | public Produkt edit(Integer id, String ime, String opis) {
|
---|
54 | Produkt p = produktRepository.findById(id).orElse(null);
|
---|
55 | if (p == null ){
|
---|
56 | throw new RuntimeException();
|
---|
57 | }
|
---|
58 | p.setIme(ime);
|
---|
59 | p.setOpis(opis);
|
---|
60 | produktRepository.save(p);
|
---|
61 | return p;
|
---|
62 | }
|
---|
63 |
|
---|
64 | @Override
|
---|
65 | public void deleteById(Integer id) {
|
---|
66 | produktRepository.deleteById(id);
|
---|
67 | }
|
---|
68 |
|
---|
69 | @Override
|
---|
70 | public List<Object> statistics1() {
|
---|
71 | return produktRepository.statistics1();
|
---|
72 | }
|
---|
73 | }
|
---|