package com.example.nto.controller; import com.example.nto.dto.entity.VisitDTO; import com.example.nto.service.VisitService; import lombok.RequiredArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequiredArgsConstructor @RequestMapping("api/v1/visits") public class VisitController { private final VisitService visitService; @GetMapping public ResponseEntity> getAll() { return ResponseEntity.ok(visitService.getAll()); } @GetMapping("/employee/{employeeId}") public ResponseEntity> getAllVisitByEmployee(@PathVariable long employeeId) { return ResponseEntity.ok(visitService.getAllVisitByEmployee(employeeId)); } @GetMapping("/{visitId}") public ResponseEntity getById(@PathVariable long visitId) { return ResponseEntity.ok(visitService.getById(visitId)); } @DeleteMapping("/{visitId}") public ResponseEntity delete(@PathVariable long visitId) { visitService.delete(visitId); return ResponseEntity.noContent().build(); } @PostMapping("/open/{startTerminalId}/{employeeId}/{passageName}") public ResponseEntity open(@PathVariable long employeeId, @PathVariable long startTerminalId, @PathVariable String passageName) { return ResponseEntity.ok(visitService.open(employeeId, startTerminalId, passageName)); } @PostMapping("/exit/{endTerminalId}/{employeeId}") public ResponseEntity open(@PathVariable long employeeId, @PathVariable long endTerminalId) { visitService.exit(employeeId, endTerminalId); return ResponseEntity.noContent().build(); } }