From 35057ad6196505ab462d06aeb308f9d7e2a5211b Mon Sep 17 00:00:00 2001 From: wayne <wayne8692wayne8692@gmail.com> Date: 星期四, 10 二月 2022 16:55:58 +0800 Subject: [PATCH] [update] [todo 131518] 更新填寫滿意度問卷的方法,改帶滿意度問卷的id做填寫 --- pamapi/src/main/java/com/pollex/pam/service/SatisfactionService.java | 28 +++++++++++++--------------- 1 files changed, 13 insertions(+), 15 deletions(-) diff --git a/pamapi/src/main/java/com/pollex/pam/service/SatisfactionService.java b/pamapi/src/main/java/com/pollex/pam/service/SatisfactionService.java index 1d700eb..7b54398 100644 --- a/pamapi/src/main/java/com/pollex/pam/service/SatisfactionService.java +++ b/pamapi/src/main/java/com/pollex/pam/service/SatisfactionService.java @@ -59,19 +59,23 @@ public Satisfaction save(Satisfaction satisfaction) { satisfaction = satisfactionRepository.save(satisfaction); - consultantService.setConsultantAvgScore(satisfaction); + if(satisfaction.getType() == SatisfactionTypeEnum.APPOINTMENT) { + consultantService.setConsultantAvgScore(satisfaction); + } return satisfaction; } public Satisfaction scorefaction(SatisfactionCustomerScoreDTO scoreDTO) { - Optional<Satisfaction> satisfactionOP = getByAppointmentIdAndType(scoreDTO.getAppointmentId(), SatisfactionTypeEnum.APPOINTMENT); + Optional<Satisfaction> satisfactionOP = satisfactionRepository.findById(scoreDTO.getSatisfactionId()); Satisfaction satisfaction = satisfactionOP.orElseThrow(SatisfactionNotFoundException::new); satisfaction.setScore(scoreDTO.getScore()); satisfaction.setStatus(SatisfactionStatusEnum.FILLED); - satisfaction.setType(SatisfactionTypeEnum.APPOINTMENT); save(satisfaction); - personalNotificationService.createScorefactionToConsultant(satisfaction); - return satisfaction; + + if(satisfaction.getType() == SatisfactionTypeEnum.APPOINTMENT) { + personalNotificationService.createScorefactionToConsultant(satisfaction); + } + return satisfaction; } public Satisfaction createAppointmentSatisfaction(Appointment appointment) { @@ -128,15 +132,9 @@ Optional<Satisfaction> systemSatisfactionOptional = satisfactionRepository.findOneByAppointmentIdAndType(scoreDTO.getAppointmentId(), SatisfactionTypeEnum.SYSTEM); - if(systemSatisfactionOptional.isPresent()) { - Satisfaction satisfaction = systemSatisfactionOptional.get(); - satisfaction.setStatus(SatisfactionStatusEnum.FILLED); - satisfaction.setScore(scoreDTO.getScore()); - return satisfactionRepository.save(satisfaction); - } - else { - log.warn("not found the satisfaction record, so can't fill system satisfaction"); - return null; - } + Satisfaction satisfaction = systemSatisfactionOptional.orElseThrow(SatisfactionNotFoundException::new); + satisfaction.setStatus(SatisfactionStatusEnum.FILLED); + satisfaction.setScore(scoreDTO.getScore()); + return satisfactionRepository.save(satisfaction); } } -- Gitblit v1.8.0