Class AppointmentController

java.lang.Object
xyz.nardone.agenda_fps.servizio.controllers.AppointmentController

@Controller @RequestMapping(path="/appointments") public class AppointmentController extends Object
Endpoints for managing appointments and related statistics.
  • Constructor Details

    • AppointmentController

      public AppointmentController()
  • Method Details

    • getAllAppointments

      @GetMapping(path="/all") @ResponseBody public Iterable<Appointment> getAllAppointments()
      Returns all appointments.
    • getAppointment

      @PostMapping(path="/get") @ResponseBody public AppointmentIds getAppointment(@RequestParam Integer appointmentId)
      Returns a single appointment as an ID-based DTO.
    • getBankerAppointmentsStatistics

      @PostMapping(path="banker_statistics") @ResponseBody public BankerAppointmentsStatistics getBankerAppointmentsStatistics(@RequestParam Integer id_banker)
      Returns aggregated statistics for a single banker.
    • deleteAppointmentById

      @DeleteMapping(path="/delete") @ResponseBody public Response deleteAppointmentById(@RequestParam Integer appointmentId)
      Deletes an appointment by ID.
    • deleteAllAppointments

      @DeleteMapping(path="/delete_all") @ResponseBody public Response deleteAllAppointments()
      Deletes all appointments.
    • updateAppointment

      @PutMapping(path="/update") @ResponseBody public Response updateAppointment(@RequestBody AppointmentIds appointmentIds)
      Updates an existing appointment.
    • addAppointment

      @PutMapping(path="/add") @ResponseBody public Response addAppointment(@RequestBody AppointmentIds a)
      Creates a new appointment.
    • getStatistics

      @PostMapping(path="/statistics") @ResponseBody public AppointmentsStatistics getStatistics(@RequestParam(required=false) Integer bankerId, @RequestParam(required=false) String startDate, @RequestParam(required=false) String endDate, @RequestParam(required=false) String esito)
      Returns aggregated statistics for optional filters (banker, date range, outcome).
    • filterAppointments

      @PostMapping(path="/filter") @ResponseBody public List<Appointment> filterAppointments(@RequestParam(required=false) Integer bankerId, @RequestParam(required=false) String startDate, @RequestParam(required=false) String endDate, @RequestParam(required=false) String esito)
      Returns appointments filtered by banker, date range, and outcome.