From 21d79d2a70b095545477472438d27a8827ee80b8 Mon Sep 17 00:00:00 2001
From: wayne <wayne8692wayne8692@gmail.com>
Date: 星期四, 10 二月 2022 14:01:00 +0800
Subject: [PATCH] [update] 嚴選搜尋新增匹配度分數

---
 pamapi/src/main/java/com/pollex/pam/repository/SatisfactionRepository.java |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/pamapi/src/main/java/com/pollex/pam/repository/SatisfactionRepository.java b/pamapi/src/main/java/com/pollex/pam/repository/SatisfactionRepository.java
index 7763c51..70db2fc 100644
--- a/pamapi/src/main/java/com/pollex/pam/repository/SatisfactionRepository.java
+++ b/pamapi/src/main/java/com/pollex/pam/repository/SatisfactionRepository.java
@@ -3,7 +3,11 @@
 import java.util.List;
 import java.util.Optional;
 
+import com.pollex.pam.enums.SatisfactionStatusEnum;
+import com.pollex.pam.enums.SatisfactionTypeEnum;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
 import com.pollex.pam.domain.Satisfaction;
@@ -11,9 +15,17 @@
 @Repository
 public interface SatisfactionRepository extends JpaRepository<Satisfaction, Long>{
 
-	List<Satisfaction> findByAgentNo(String agentNo);
+	List<Satisfaction> findByAgentNoAndType(String agentNo, SatisfactionTypeEnum type);
 
-	List<Satisfaction> findByCustomerId(Long customerId);
+	List<Satisfaction> findByCustomerIdAndType(Long customerId, SatisfactionTypeEnum type);
 
-	Optional<Satisfaction> findOneByAppointmentId(Long appointmentId);
+	Optional<Satisfaction> findOneByAppointmentIdAndType(Long appointmentId, SatisfactionTypeEnum type);
+
+    List<Satisfaction> findAllByStatusAndType(SatisfactionStatusEnum status, SatisfactionTypeEnum type);
+
+	@Query(value = "SELECT avg(score) FROM satisfaction where type='APPOINTMENT'"
+            + " and agent_no=:agent_no"
+			+ " and score is not null"
+			, nativeQuery = true)
+	Float getAgentScoreAvg(@Param("agent_no") String agentNo);
 }

--
Gitblit v1.8.0