保誠-保戶業務員媒合平台
[update] #todo 129741 快速與嚴選改post method,並將快速篩選的溝通方式改多選

修改5個檔案
30 ■■■■ 已變更過的檔案
pamapi/src/doc/顧問API/嚴選配對.txt 4 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/doc/顧問API/快速篩選.txt 2 ●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/service/ConsultantQuerySpec.java 8 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/service/dto/FastQueryConsultantParam.java 12 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java 4 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/doc/顧問API/嚴選配對.txt
@@ -1,7 +1,7 @@
http get: http://localhost:8080/api/consultant/strictQuery
http post: http://localhost:8080/api/consultant/strictQuery
request body:
{
{
    "gender":"female",
    "avgScore":5,
    "status": "online", // phase 1 disalbed
pamapi/src/doc/顧問API/快速篩選.txt
@@ -1,4 +1,4 @@
http get: http://localhost:8080/api/consultant/fastQuery
http post: http://localhost:8080/api/consultant/fastQuery
request body:
{
pamapi/src/main/java/com/pollex/pam/service/ConsultantQuerySpec.java
@@ -25,9 +25,9 @@
            public Predicate toPredicate(Root<Consultant> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
                Set<Predicate> set = new HashSet<>();
                if(StringUtils.isNotEmpty(param.getCommunicationStyle())) {
                    set.add(criteriaBuilder.like(root.get("concept"), "%" + param.getCommunicationStyle()));
                }
                param.getCommunicationStyles().forEach((communicationStyle) -> {
                    set.add(criteriaBuilder.like(root.get("concept"), "%" + param.getCommunicationStyles()));
                });
                if(Objects.nonNull(param.getGender())) {
                    set.add(criteriaBuilder.equal(root.get("gender"), param.getGender()));
@@ -39,7 +39,7 @@
                Predicate[] predicates = new Predicate[set.size()];
                predicates = set.toArray(predicates);
                return criteriaBuilder.and(predicates);
                return criteriaBuilder.or(predicates);
            }
        };
    }
pamapi/src/main/java/com/pollex/pam/service/dto/FastQueryConsultantParam.java
@@ -2,9 +2,11 @@
import com.pollex.pam.enums.GenderEnum;
import java.util.List;
public class FastQueryConsultantParam {
    private GenderEnum gender;
    private String communicationStyle;
    private List<String> communicationStyles;
    private Number avgScore;
    private String status;
@@ -16,12 +18,12 @@
        this.gender = gender;
    }
    public String getCommunicationStyle() {
        return communicationStyle;
    public List<String> getCommunicationStyles() {
        return communicationStyles;
    }
    public void setCommunicationStyle(String communicationStyle) {
        this.communicationStyle = communicationStyle;
    public void setCommunicationStyles(List<String> communicationStyles) {
        this.communicationStyles = communicationStyles;
    }
    public Number getAvgScore() {
pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java
@@ -36,13 +36,13 @@
        return new ResponseEntity<>(HttpStatus.ACCEPTED);
    }
    @GetMapping("/strictQuery")
    @PostMapping("/strictQuery")
    public ResponseEntity<List<ConsultantDTO>> strictQueryConsultant(@RequestBody StrictQueryConsultantParam param) {
        List<ConsultantDTO> queryResult = consultantService.strictQueryConsultant(param);
        return new ResponseEntity<>(queryResult, HttpStatus.OK);
    }
    @GetMapping("/fastQuery")
    @PostMapping("/fastQuery")
    public ResponseEntity<List<ConsultantDTO>> fastQueryConsultant(@RequestBody FastQueryConsultantParam param) {
        List<ConsultantDTO> queryResult = consultantService.fastQueryConsultant(param);
        return new ResponseEntity<>(queryResult, HttpStatus.OK);