From 0e73f60f5e9acede5438b0c38332183916f9d552 Mon Sep 17 00:00:00 2001 From: Jack <jack.su@pollex.com.tw> Date: 星期五, 03 十二月 2021 16:54:57 +0800 Subject: [PATCH] Merge branch 'master' of ssh://192.168.0.10:29418/pcalife/PAM --- pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java | 46 +++++++++++++++++++++++++++++++++++++--------- 1 files changed, 37 insertions(+), 9 deletions(-) diff --git a/pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java b/pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java index eb20daf..19f5000 100644 --- a/pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java +++ b/pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java @@ -2,25 +2,30 @@ import com.pollex.pam.service.ConsultantService; import com.pollex.pam.service.dto.*; +import org.apache.commons.compress.utils.IOUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.io.ClassPathResource; +import org.springframework.core.io.Resource; import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; import java.util.List; @RestController @RequestMapping("/api/consultant") public class ConsultantResource { - private final ConsultantService consultantService; - - public ConsultantResource(ConsultantService consultantService) { - this.consultantService = consultantService; - } + @Autowired + ConsultantService consultantService; @GetMapping("/favorite") - public ResponseEntity<List<ConsultantDTO>> getMyConsultantList() { - List<ConsultantDTO> myConsultants = consultantService.getMyConsultantList(); + public ResponseEntity<List<CustomerFavoriteConsultantDTO>> getMyConsultantList() { + List<CustomerFavoriteConsultantDTO> myConsultants = consultantService.getMyConsultantList(); return new ResponseEntity<>(myConsultants, HttpStatus.OK); } @@ -35,6 +40,13 @@ consultantService.addConsultantToCustomList(param); return new ResponseEntity<>(HttpStatus.ACCEPTED); } + + @DeleteMapping("/favorite/{agentNo}") + public ResponseEntity<Void> removeConsultantFromCustomList(@PathVariable String agentNo) { + consultantService.removeConsultantFromCustomList(agentNo); + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/strictQuery") public ResponseEntity<List<ConsultantDTO>> strictQueryConsultant(@RequestBody StrictQueryConsultantParam param) { @@ -53,10 +65,26 @@ ConsultantDetailDTO result = consultantService.getConsultantDetail(agentNo); return new ResponseEntity<>(result, HttpStatus.OK); } - + @GetMapping("/getMyAppointment") public List<AppointmentCustomerViewDTO> getMyAppointment() { return consultantService.getMyAppointment(); } - + + @GetMapping(value = "/avatar/{fileName}", produces = MediaType.IMAGE_JPEG_VALUE) + public ResponseEntity<byte[]> getAvatarImage(@PathVariable String fileName) throws IOException { + try { + Resource resource = new ClassPathResource("static/consultant/" + fileName); + InputStream in = resource.getInputStream(); + return new ResponseEntity<>(IOUtils.toByteArray(in), HttpStatus.OK); + } catch (FileNotFoundException e) { + return new ResponseEntity<>(HttpStatus.NOT_FOUND); + } + } + + @PostMapping("/record/allAppointmentsView") + public ResponseEntity<Void> recordAllAppointmentsView() { + consultantService.recordAllAppointmentsView(); + return ResponseEntity.noContent().build(); + } } -- Gitblit v1.8.0