package com.pollex.pam.web.rest; import com.pollex.pam.service.ConsultantService; import com.pollex.pam.service.dto.*; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping("/api/consultant") public class ConsultantResource { private final ConsultantService consultantService; public ConsultantResource(ConsultantService consultantService) { this.consultantService = consultantService; } @GetMapping("/favorite") public ResponseEntity> getMyConsultantList() { List myConsultants = consultantService.getMyConsultantList(); return new ResponseEntity<>(myConsultants, HttpStatus.OK); } @GetMapping("/recommend") public ResponseEntity> getRecommendConsultantList() { List recommendConsultantList = consultantService.getRecommendConsultantList(); return new ResponseEntity<>(recommendConsultantList, HttpStatus.OK); } @PostMapping("/favorite") public ResponseEntity addConsultantToCustomList(@RequestBody AddConsultantParam param) { consultantService.addConsultantToCustomList(param); return new ResponseEntity<>(HttpStatus.ACCEPTED); } @PostMapping("/strictQuery") public ResponseEntity> strictQueryConsultant(@RequestBody StrictQueryConsultantParam param) { List queryResult = consultantService.strictQueryConsultant(param); return new ResponseEntity<>(queryResult, HttpStatus.OK); } @PostMapping("/fastQuery") public ResponseEntity> fastQueryConsultant(@RequestBody FastQueryConsultantParam param) { List queryResult = consultantService.fastQueryConsultant(param); return new ResponseEntity<>(queryResult, HttpStatus.OK); } @GetMapping("/detail") public ResponseEntity getConsultantDetail(@RequestParam("agentNo") String agentNo) { ConsultantDetailDTO result = consultantService.getConsultantDetail(agentNo); return new ResponseEntity<>(result, HttpStatus.OK); } }