source: backend/web3-Ednevnik-Backend/src/main/java/com/nikola/web3ednevnikbackend/controller/AttendanceController.java

Last change on this file was 81cdf2d, checked in by Nikola Janev <nikolajanev57@…>, 9 days ago

initial commit

  • Property mode set to 100644
File size: 2.0 KB
Line 
1package com.nikola.web3ednevnikbackend.controller;
2
3import com.nikola.web3ednevnikbackend.dto.attendance.PrisustvoRequestDTO;
4import com.nikola.web3ednevnikbackend.dto.attendance.PrisustvoResponseDTO;
5
6import com.nikola.web3ednevnikbackend.service.attendance.PrisustvoService;
7import jakarta.validation.Valid;
8import org.springframework.http.HttpStatus;
9import org.springframework.http.ResponseEntity;
10import org.springframework.security.access.prepost.PreAuthorize;
11
12import org.springframework.web.bind.annotation.*;
13
14import java.util.List;
15import java.util.UUID;
16
17@RestController
18
19@RequestMapping("/api/prisustvo")
20public class AttendanceController {
21 private final PrisustvoService prisustvoService;
22
23 public AttendanceController(PrisustvoService prisustvoService) {
24 this.prisustvoService = prisustvoService;
25 }
26
27 @PreAuthorize("hasAnyRole('KLASEN_RAKOVODITEL','DIREKTOR_ADMIN', 'PREDMETEN_NASTAVNIK', 'RODITEL')")
28 @GetMapping
29 public ResponseEntity<List<PrisustvoResponseDTO>> getAllPrisustva(){
30 List<PrisustvoResponseDTO> prisustva =this.prisustvoService.getAllPrisustva();
31 return new ResponseEntity<>(prisustva, HttpStatus.OK);
32 }
33 @PreAuthorize("hasAnyRole('KLASEN_RAKOVODITEL','DIREKTOR_ADMIN', 'PREDMETEN_NASTAVNIK', 'RODITEL')")
34 @GetMapping("/{id}")
35 public ResponseEntity<PrisustvoResponseDTO> getPrisustvoById(@PathVariable UUID id){
36 PrisustvoResponseDTO prisustvo = this.prisustvoService.getPrisustvoById(id);
37 return new ResponseEntity<>(prisustvo, HttpStatus.OK);
38 }
39
40 // POST /api/attendance
41 @PreAuthorize("hasAnyRole('KLASEN_RAKOVODITEL', 'PREDMETEN_NASTAVNIK')")
42 @PostMapping
43 public ResponseEntity<PrisustvoResponseDTO> createPrisustvo(@Valid @RequestBody PrisustvoRequestDTO prisustvoRequestDTO) {
44 System.out.println(prisustvoRequestDTO.toString());
45 return new ResponseEntity<>( this.prisustvoService.createPrisustvo(prisustvoRequestDTO), HttpStatus.CREATED);
46 }
47
48}
Note: See TracBrowser for help on using the repository browser.