Changes between Version 23 and Version 24 of UseCaseImplementations
- Timestamp:
- 02/13/25 10:08:19 (8 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UseCaseImplementations
v23 v24 11 11 * Контролер 12 12 Корисникот кликнува на копчето за потврда на закажување. Функцијата addEventListener реагира на клик на копчето "confirm-booking". 13 Се собираат податоци од формата (term, couponCode, medicalCondition) и се испраќаат податоци до серверот преку fetch. Серверот ги прима и го обработува барањето во контролерот (@!PostMapping("/book")). @ RequestBody ги прима податоците (term, couponCode, medicalCondition), а од @CookieValue го вчитува username од колачињата. Методот bookAppointment од сервисот requestService се повикува со добиените податоци.13 Се собираат податоци од формата (term, couponCode, medicalCondition) и се испраќаат податоци до серверот преку fetch. Серверот ги прима и го обработува барањето во контролерот (@!PostMapping("/book")). @!RequestBody ги прима податоците (term, couponCode, medicalCondition), а од @!CookieValue го вчитува username од колачињата. Методот bookAppointment од сервисот requestService се повикува со добиените податоци. 14 14 Ако серверот врати успешен одговор, корисникот добива порака "Appointment booked successfully!". 15 15 … … 40 40 41 41 * Контролер 42 Методот addAppointment обработува барање за додавање нов термин. appointmentService.createAppointment(dateTimeStr); го повикува сервисниот слој за додавање на нов термин во системот. Ако нема грешки, методот враќа ResponseEntity.ok(new ApiResponse("Appointment added successfully.")), што значи дека терминот е успешно додаден. Ако се фати исклучок, се враќа ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(newApiResponse("Failed to add appointment.")), означувајќи неуспешно додавање.42 Методот addAppointment обработува барање за додавање нов термин. appointmentService.createAppointment(dateTimeStr); го повикува сервисниот слој за додавање на нов термин во системот. Ако нема грешки, методот враќа !ResponseEntity.ok(new !ApiResponse("Appointment added successfully.")), што значи дека терминот е успешно додаден. Ако се фати исклучок, се враќа !ResponseEntity.status(!HttpStatus.INTERNAL_SERVER_ERROR).body(new !ApiResponse("Failed to add appointment.")), означувајќи неуспешно додавање. 43 43 44 44 [[Image(wiki:UseCaseImplementations:controller1.png)]] … … 60 60 61 61 * Контролер 62 Методот createAppointments служи за креирање повеќе термини во базата. Методот прима POST барање на патеката /create. Телото на барањето содржи листа од објекти AppointmentRequest. appointmentService.createAppointments(appointmentRequests); повикува сервисна метода што ги обработува и зачувува терминитe. Ако методата успее, се враќаResponseEntity.ok("Appointments created successfully").63 Ако се случи грешка, се враќа ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("Failed to create appointments").62 Методот createAppointments служи за креирање повеќе термини во базата. Методот прима POST барање на патеката /create. Телото на барањето содржи листа од објекти !AppointmentRequest. appointmentService.createAppointments(appointmentRequests); повикува сервисна метода што ги обработува и зачувува терминитe. Ако методата успее, се враќа !ResponseEntity.ok("Appointments created successfully"). 63 Ако се случи грешка, се враќа !ResponseEntity.status(!HttpStatus.INTERNAL_SERVER_ERROR).body("Failed to create appointments"). 64 64 65 65 [[Image(wiki:UseCaseImplementations:controller2.png)]] 66 66 67 67 * Сервис 68 Методот createAppointments е одговорен за креирање и зачувување на повеќе термини. Методот прима листа requests од тип AppointmentRequest.Се поминува низ секое барање и се формираLocalDateTime за секој термин, и после овие податоци се користат за креирање и пополнување на објект Appointment и со appointmentRepository.save(appointment); секој термин се зачувува во базата.68 Методот createAppointments е одговорен за креирање и зачувување на повеќе термини. Методот прима листа requests од тип !AppointmentRequest.Се поминува низ секое барање и се формира !LocalDateTime за секој термин, и после овие податоци се користат за креирање и пополнување на објект Appointment и со appointmentRepository.save(appointment); секој термин се зачувува во базата. 69 69 70 70