[0e4d807] | 1 | package com.example.baziproekt.service.impl;
|
---|
| 2 |
|
---|
| 3 | import com.example.baziproekt.model.Komentari.Komentari;
|
---|
| 4 | import com.example.baziproekt.model.Komentari.KomentariCompositeKey;
|
---|
| 5 | import com.example.baziproekt.model.Korisnici;
|
---|
| 6 | import com.example.baziproekt.model.Kupuvaci;
|
---|
| 7 | import com.example.baziproekt.model.Proizvodi;
|
---|
| 8 | import com.example.baziproekt.model.Roles;
|
---|
| 9 | import com.example.baziproekt.model.exceptions.InvalidUserCredentialsException;
|
---|
| 10 | import com.example.baziproekt.model.exceptions.UserNotFoundException;
|
---|
| 11 | import com.example.baziproekt.repository.KomentariRepository;
|
---|
| 12 | import com.example.baziproekt.service.KomentarNaProizvod;
|
---|
| 13 | import com.example.baziproekt.service.KorisniciService;
|
---|
| 14 | import com.example.baziproekt.service.ProizvodiService;
|
---|
| 15 | import org.springframework.stereotype.Service;
|
---|
| 16 |
|
---|
| 17 | import java.util.Collections;
|
---|
| 18 |
|
---|
| 19 | @Service
|
---|
| 20 | public class KomentarNaProizvodImpl implements KomentarNaProizvod {
|
---|
| 21 | private final KorisniciService service;
|
---|
| 22 | private final ProizvodiService serviceProduct;
|
---|
| 23 | private final KomentariRepository repository;
|
---|
| 24 |
|
---|
| 25 |
|
---|
| 26 | public KomentarNaProizvodImpl(KorisniciService service, ProizvodiService serviceProduct, KomentariRepository repository) {
|
---|
| 27 | this.service = service;
|
---|
| 28 | this.serviceProduct = serviceProduct;
|
---|
| 29 | this.repository = repository;
|
---|
| 30 | }
|
---|
| 31 |
|
---|
| 32 | @Override
|
---|
| 33 | public void create(Integer id,String name,String comment) {
|
---|
| 34 | Korisnici korisnici=service.findByIme(name);
|
---|
| 35 | if(korisnici==null)
|
---|
| 36 | {
|
---|
| 37 | throw new UserNotFoundException();
|
---|
| 38 | }
|
---|
| 39 | if(korisnici.getAuthorities().equals(Collections.singletonList(Roles.ROLES_KUPUVAC)))
|
---|
| 40 | {
|
---|
| 41 | Proizvodi proizvod=serviceProduct.findById(id);
|
---|
| 42 | KomentariCompositeKey key=new KomentariCompositeKey(proizvod, (Kupuvaci) korisnici);
|
---|
| 43 | repository.save(new Komentari(comment,key));
|
---|
| 44 | }
|
---|
| 45 |
|
---|
| 46 |
|
---|
| 47 |
|
---|
| 48 |
|
---|
| 49 | }
|
---|
| 50 | }
|
---|