Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package rva.ctrls;
- import java.util.Collection;
- import javax.transaction.Transactional;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.http.HttpStatus;
- import org.springframework.http.ResponseEntity;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.web.bind.annotation.CrossOrigin;
- import org.springframework.web.bind.annotation.DeleteMapping;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.PathVariable;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.PutMapping;
- import org.springframework.web.bind.annotation.RequestBody;
- import org.springframework.web.bind.annotation.RestController;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import rva.jpa.Obrazovanje;
- import rva.jpa.Radnik;
- import rva.jpa.Sektor;
- import rva.reps.ObrazovanjeRepository;
- @Api(tags = {"Obrazovanje CRUD operacije"})
- @CrossOrigin(origins="*",allowedHeaders="*")
- @RestController
- public class ObrazovanjeRestController {
- @Autowired
- private ObrazovanjeRepository obrazovanjeRepository;
- @Autowired
- private JdbcTemplate jdbcTemplate;
- @ApiOperation(value = "Vraća kolekciju svih obrazovanja iz baze podataka")
- @GetMapping("obrazovanje")
- public Collection<Obrazovanje> getObrazovanja() {
- return obrazovanjeRepository.findAll();
- }
- @ApiOperation(value = "Vraća jedan zapis obrazovanja iz baze podataka čija je id vrednost prosleđena kao path varijabla")
- @GetMapping("obrazovanje/{id}")
- public Obrazovanje getObrazovanje(@PathVariable("id") Integer id) {
- return obrazovanjeRepository.getOne(id);
- }
- @ApiOperation(value = "Vraća kolekciju svih obrazovanja iz baze podataka koji u nazivu sadrže string prosleđen kao path varijabla")
- @GetMapping("obrazovanjeNaziv/{naziv}")
- public Collection<Obrazovanje> getSektorBy(@PathVariable ("naziv") String naziv){
- return obrazovanjeRepository.findByNazivContainingIgnoreCase(naziv);
- }
- @CrossOrigin
- @ApiOperation(value = "Briše obrazovanje iz baze podataka čija je id vrednost prosleđena kao path varijabla")
- @DeleteMapping("obrazovanje/{id}")
- public ResponseEntity<Obrazovanje> deleteObrazovanje(@PathVariable ("id") Integer id){
- if(!obrazovanjeRepository.existsById(id))
- {
- return new ResponseEntity<>(HttpStatus.NO_CONTENT);
- }
- obrazovanjeRepository.deleteById(id);
- jdbcTemplate.execute("delete from radnik where obrazovanje = " + id);
- return new ResponseEntity<>(HttpStatus.OK);
- }
- @ApiOperation(value = "Dodaje obrazovanje u bazu podataka")
- @CrossOrigin
- @PostMapping("obrazovanje")
- public ResponseEntity<Obrazovanje> insertObrazovanje(@RequestBody Obrazovanje obrazovanje) {
- if (!obrazovanjeRepository.existsById(obrazovanje.getId())) {
- obrazovanjeRepository.save(obrazovanje);
- return new ResponseEntity<>(HttpStatus.OK);
- }
- return new ResponseEntity<>(HttpStatus.CONFLICT);
- }
- @ApiOperation(value = "Apdejtuje obrazovanje u bazi podataka")
- @CrossOrigin
- @PutMapping("obrazovanje")
- public ResponseEntity<Obrazovanje> updateObrazovanje(@RequestBody Obrazovanje obrazovanje) {
- if (!obrazovanjeRepository.existsById(obrazovanje.getId()))
- return new ResponseEntity<>(HttpStatus.NO_CONTENT);
- obrazovanjeRepository.save(obrazovanje);
- return new ResponseEntity<>(HttpStatus.OK);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement