Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.41 KB | None | 0 0
  1. package rva.ctrls;
  2.  
  3. import java.util.Collection;
  4.  
  5. import javax.transaction.Transactional;
  6.  
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.http.HttpStatus;
  9. import org.springframework.http.ResponseEntity;
  10. import org.springframework.jdbc.core.JdbcTemplate;
  11. import org.springframework.web.bind.annotation.CrossOrigin;
  12. import org.springframework.web.bind.annotation.DeleteMapping;
  13. import org.springframework.web.bind.annotation.GetMapping;
  14. import org.springframework.web.bind.annotation.PathVariable;
  15. import org.springframework.web.bind.annotation.PostMapping;
  16. import org.springframework.web.bind.annotation.PutMapping;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import org.springframework.web.bind.annotation.RestController;
  19.  
  20. import io.swagger.annotations.Api;
  21. import io.swagger.annotations.ApiOperation;
  22. import rva.jpa.Obrazovanje;
  23. import rva.jpa.Radnik;
  24. import rva.jpa.Sektor;
  25. import rva.reps.ObrazovanjeRepository;
  26.  
  27. @Api(tags = {"Obrazovanje CRUD operacije"})
  28. @CrossOrigin(origins="*",allowedHeaders="*")
  29. @RestController
  30. public class ObrazovanjeRestController {
  31.  
  32. @Autowired
  33. private ObrazovanjeRepository obrazovanjeRepository;
  34.  
  35. @Autowired
  36. private JdbcTemplate jdbcTemplate;
  37.  
  38. @ApiOperation(value = "Vraća kolekciju svih obrazovanja iz baze podataka")
  39. @GetMapping("obrazovanje")
  40. public Collection<Obrazovanje> getObrazovanja() {
  41. return obrazovanjeRepository.findAll();
  42. }
  43.  
  44. @ApiOperation(value = "Vraća jedan zapis obrazovanja iz baze podataka čija je id vrednost prosleđena kao path varijabla")
  45. @GetMapping("obrazovanje/{id}")
  46. public Obrazovanje getObrazovanje(@PathVariable("id") Integer id) {
  47. return obrazovanjeRepository.getOne(id);
  48. }
  49.  
  50. @ApiOperation(value = "Vraća kolekciju svih obrazovanja iz baze podataka koji u nazivu sadrže string prosleđen kao path varijabla")
  51. @GetMapping("obrazovanjeNaziv/{naziv}")
  52. public Collection<Obrazovanje> getSektorBy(@PathVariable ("naziv") String naziv){
  53. return obrazovanjeRepository.findByNazivContainingIgnoreCase(naziv);
  54. }
  55.  
  56. @CrossOrigin
  57. @ApiOperation(value = "Briše obrazovanje iz baze podataka čija je id vrednost prosleđena kao path varijabla")
  58. @DeleteMapping("obrazovanje/{id}")
  59. public ResponseEntity<Obrazovanje> deleteObrazovanje(@PathVariable ("id") Integer id){
  60. if(!obrazovanjeRepository.existsById(id))
  61. {
  62. return new ResponseEntity<>(HttpStatus.NO_CONTENT);
  63. }
  64. obrazovanjeRepository.deleteById(id);
  65. jdbcTemplate.execute("delete from radnik where obrazovanje = " + id);
  66. return new ResponseEntity<>(HttpStatus.OK);
  67. }
  68.  
  69. @ApiOperation(value = "Dodaje obrazovanje u bazu podataka")
  70. @CrossOrigin
  71. @PostMapping("obrazovanje")
  72. public ResponseEntity<Obrazovanje> insertObrazovanje(@RequestBody Obrazovanje obrazovanje) {
  73. if (!obrazovanjeRepository.existsById(obrazovanje.getId())) {
  74. obrazovanjeRepository.save(obrazovanje);
  75. return new ResponseEntity<>(HttpStatus.OK);
  76. }
  77. return new ResponseEntity<>(HttpStatus.CONFLICT);
  78. }
  79.  
  80. @ApiOperation(value = "Apdejtuje obrazovanje u bazi podataka")
  81. @CrossOrigin
  82. @PutMapping("obrazovanje")
  83. public ResponseEntity<Obrazovanje> updateObrazovanje(@RequestBody Obrazovanje obrazovanje) {
  84. if (!obrazovanjeRepository.existsById(obrazovanje.getId()))
  85. return new ResponseEntity<>(HttpStatus.NO_CONTENT);
  86. obrazovanjeRepository.save(obrazovanje);
  87. return new ResponseEntity<>(HttpStatus.OK);
  88. }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement