From a58b211caadfc04d5eb3e4d0a2609654975b5865 Mon Sep 17 00:00:00 2001 From: wayne <wayne8692wayne8692@gmail.com> Date: 星期一, 27 十二月 2021 11:24:46 +0800 Subject: [PATCH] [fix] 修正預約單細節API --- pamapi/src/main/java/com/pollex/pam/service/AppointmentService.java | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pamapi/src/main/java/com/pollex/pam/service/AppointmentService.java b/pamapi/src/main/java/com/pollex/pam/service/AppointmentService.java index 0730d6d..ec045e3 100644 --- a/pamapi/src/main/java/com/pollex/pam/service/AppointmentService.java +++ b/pamapi/src/main/java/com/pollex/pam/service/AppointmentService.java @@ -3,6 +3,7 @@ import java.time.Instant; import java.util.List; import java.util.Objects; +import java.util.Optional; import java.util.stream.Collectors; import com.pollex.pam.domain.Satisfaction; @@ -52,12 +53,12 @@ @Autowired SatisfactionService satisfactionService; - public void customerCreateAppointment(AppointmentCreateDTO appointmentCreateDTO) { + public Appointment customerCreateAppointment(AppointmentCreateDTO appointmentCreateDTO) { Appointment appointment = appointmentDTOMapper.toAppointment(appointmentCreateDTO); appointment.setStatus(AVAILABLE); appointment.setCustomerId(SecurityUtils.getCustomerDBId()); appointment.setCommunicateStatus(ContactStatusEnum.RESERVED); - appointmentRepository.save(appointment); + return appointmentRepository.save(appointment); } public void updateAppointment(AppointmentUpdateDTO updateAppointmentDTO) { @@ -72,6 +73,7 @@ appointment.setRequirement(updateAppointmentDTO.getRequirement()); appointment.setHopeContactTime(updateAppointmentDTO.getHopeContactTime()); appointment.setOtherRequirement(updateAppointmentDTO.getOtherRequirement()); + appointment.setLastModifiedDate(Instant.now()); appointmentRepository.save(appointment); } @@ -79,6 +81,7 @@ public void markAppointmentDeleted(Long appointmentId) { Appointment appointment = appointmentRepository.findById(appointmentId).get(); appointment.setStatus(DELETED); + appointment.setLastModifiedDate(Instant.now()); appointmentRepository.save(appointment); } @@ -87,11 +90,11 @@ } public Appointment markAsContacted(Long appointmentId) { - Appointment appointment = appointmentRepository.findById(appointmentId).get(); appointment.setCommunicateStatus(ContactStatusEnum.CONTACTED); appointment.setContactTime(Instant.now()); - return appointmentRepository.save(appointment); + appointment.setLastModifiedDate(Instant.now()); + return appointmentRepository.save(appointment); } public AppointmentCustomerViewDTO getAppointmentDetail(Long appointmentId) { @@ -127,6 +130,10 @@ .collect(Collectors.toList()); } + public Optional<Appointment> findLatestAppointmentByAgentNoAndCustomerId(String agentNo, Long customerId) { + return appointmentRepository.findTopByAgentNoAndCustomerIdOrderByAppointmentDateDesc(agentNo, customerId); + } + public void recordConsultantReadTime(Long appointmentId) { Appointment appointment = appointmentRepository.findById(appointmentId).get(); -- Gitblit v1.8.0