package parkup.controllers; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import parkup.entities.ParkingZone; import parkup.services.ParkingZoneService; import java.util.List; @RestController public class ParkingZoneController { private final ParkingZoneService parkingZoneService; @Autowired public ParkingZoneController(ParkingZoneService parkingZoneService) { this.parkingZoneService = parkingZoneService; } @GetMapping({"/parkingZone"}) public List getAllParkingZone() { return parkingZoneService.getAllParkingZones(); } @GetMapping({"/parkingZone/{parkingZoneId}"}) public ParkingZone getParkingZone(@PathVariable int parkingZoneId) { ParkingZone parkingZone = parkingZoneService.findById(parkingZoneId); if (parkingZone != null) { return parkingZone; } else { throw new RuntimeException("ParkingZone not found"); } } @PostMapping({"/parkingZone"}) public void addParkingZone(@RequestBody ParkingZone parkingZone) { //System.out.println("???????"); parkingZoneService.addParkingZone(parkingZone); } @PutMapping({"/parkingZone/{parkingZoneId}"}) public void updateParkingZone(@PathVariable int parkingZoneId, @RequestBody ParkingZone parkingZone) { parkingZoneService.updateParkingZone(parkingZoneId, parkingZone.getPzName(), parkingZone.getPrice(), parkingZone.getCapacity(), parkingZone.getWorkHours(),parkingZone.getLocation()); } @DeleteMapping({"/parkingZone/{parkingZoneId}"}) public void deleteParkingZone(@PathVariable int parkingZoneId) { parkingZoneService.deleteParkingZone(parkingZoneId); } }