Class TracciabilitaController

java.lang.Object
it.unicam.cs.ids2425.FilieraAgricola.controller.TracciabilitaController

@RestController @RequestMapping("/api/tracciabilita") public class TracciabilitaController extends Object
  • Constructor Details

    • TracciabilitaController

      public TracciabilitaController()
  • Method Details

    • creaLotto

      @PostMapping("/lotti") @PreAuthorize("hasAnyRole(\'PRODUTTORE\', \'TRASFORMATORE\')") public org.springframework.http.ResponseEntity<ProductBatch> creaLotto(@RequestBody LottoCreateDTO request)
      API per creare un nuovo lotto (nodo del grafo).
    • getStoriaLotto

      @GetMapping("/lotti/{id}/storia") @PreAuthorize("permitAll()") public org.springframework.http.ResponseEntity<TraceabilityGraphDTO> getStoriaLotto(@PathVariable Long id)
      API pubblica per visualizzare la storia completa (grafo + fasi) di un lotto.
    • aggiungiFase

      @PostMapping("/lotti/{id}/fasi") @PreAuthorize("hasAnyRole(\'PRODUTTORE\', \'TRASFORMATORE\', \'DISTRIBUTORE\')") public org.springframework.http.ResponseEntity<StepResponseDTO> aggiungiFase(@PathVariable Long id, @RequestBody StepCreateDTO request)
      API per aggiungere una fase (step) a un lotto.
    • getFasiLotto

      @GetMapping("/lotti/{id}/fasi") @PreAuthorize("permitAll()") public org.springframework.http.ResponseEntity<List<StepResponseDTO>> getFasiLotto(@PathVariable Long id)
      API pubblica per visualizzare solo le fasi di un lotto (il "diario di bordo").