保誠-保戶業務員媒合平台
wayne
2021-11-12 a802b15b8f885041ea1b862326c91582794ab593
[update] #todo129741,取得顧問頭像api

修改4個檔案
新增11個檔案
43 ■■■■ 已變更過的檔案
pamapi/src/doc/顧問API/取得顧問頭像.txt 9 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/aop/logging/LoggingAspect.java 4 ●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/config/SecurityConfiguration.java 1 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/service/mapper/ConsultantMapper.java 8 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java 21 ●●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar1.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar10.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar2.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar3.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar4.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar5.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar6.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar7.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar8.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/main/resources/static/consultant/avatar9.jpg 修補檔 | 檢視 | 原始 | 究查 | 歷程
pamapi/src/doc/ÅU°ÝAPI/¨ú±oÅU°ÝÀY¹³.txt
¤ñ¹ï·sÀÉ®×
@@ -0,0 +1,9 @@
http get: http://localhost:8080/api/consultant/avatar/{fileName}
根據從顧問資料裡的img欄位的檔案名稱,取得顧問頭像的jpg檔案
example request:
http://localhost:8080/api/consultant/avatar/avatar1.jpg
response body: äºŒé€²åˆ¶æª”案
若該fileName不存在,會回404
pamapi/src/main/java/com/pollex/pam/aop/logging/LoggingAspect.java
@@ -100,7 +100,9 @@
        try {
            Object result = joinPoint.proceed();
            if (log.isDebugEnabled()) {
                log.debug("Exit: {}() with result = {}", joinPoint.getSignature().getName(), result);
                if(!(result instanceof byte[])){
                    log.debug("Exit: {}() with result = {}", joinPoint.getSignature().getName(), result);
                }
            }
            return result;
        } catch (IllegalArgumentException e) {
pamapi/src/main/java/com/pollex/pam/config/SecurityConfiguration.java
@@ -88,6 +88,7 @@
            .antMatchers("/api/consultant/detail").permitAll()
            .antMatchers("/api/consultant/fastQuery").permitAll()
            .antMatchers("/api/consultant/strictQuery").permitAll()
            .antMatchers("/api/consultant/avatar/**").permitAll()
            .antMatchers("/api/admin/**").hasAuthority(AuthoritiesConstants.ADMIN)
            .antMatchers("/api/**").authenticated()
            .antMatchers("/websocket/**").authenticated()
pamapi/src/main/java/com/pollex/pam/service/mapper/ConsultantMapper.java
@@ -2,7 +2,6 @@
import com.pollex.pam.domain.Consultant;
import com.pollex.pam.domain.CustomFavoriteConsultant;
import com.pollex.pam.enums.ContactStatusEnum;
import com.pollex.pam.service.dto.ConsultantDTO;
import com.pollex.pam.service.dto.ConsultantDetailDTO;
import org.apache.commons.lang3.StringUtils;
@@ -18,7 +17,6 @@
    private final static Character SPLIT_MASK = ',';
    // todo convert
    public ConsultantDTO toDto(Consultant source) {
        ConsultantDTO consultantDTO = new ConsultantDTO();
        consultantDTO.setAgentNo(source.getAgentNo());
@@ -26,9 +24,8 @@
        consultantDTO.setAvgScore(source.getAvgScore());
        consultantDTO.setSeniority(source.getSeniority());
        consultantDTO.setExpertise(splitStringWithChar(source.getExpertise()));
        consultantDTO.setImg(source.getPhotoPath());
        // todo
        consultantDTO.setImg("");
        consultantDTO.setContactStatus(null);
        consultantDTO.setUpdateTime(null);
@@ -60,8 +57,9 @@
        consultantDetailDTO.setSeniority(source.getSeniority());
        consultantDetailDTO.setConcept(source.getConcept());
        consultantDetailDTO.setAwards(source.getAward());
        consultantDetailDTO.setImage(source.getPhotoPath());
        consultantDetailDTO.setImage("");
        // todo æ±ºå®šåŒ¹é…ç¨‹åº¦
        consultantDetailDTO.setSuitability(50);
        consultantDetailDTO.setEvaluation(50);
        consultantDetailDTO.setExpertises(splitStringWithChar(source.getExpertise()));
pamapi/src/main/java/com/pollex/pam/web/rest/ConsultantResource.java
@@ -2,10 +2,17 @@
import com.pollex.pam.service.ConsultantService;
import com.pollex.pam.service.dto.*;
import org.apache.commons.compress.utils.IOUtils;
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
@@ -53,10 +60,20 @@
        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);
        }
    }
}
pamapi/src/main/resources/static/consultant/avatar1.jpg
pamapi/src/main/resources/static/consultant/avatar10.jpg
pamapi/src/main/resources/static/consultant/avatar2.jpg
pamapi/src/main/resources/static/consultant/avatar3.jpg
pamapi/src/main/resources/static/consultant/avatar4.jpg
pamapi/src/main/resources/static/consultant/avatar5.jpg
pamapi/src/main/resources/static/consultant/avatar6.jpg
pamapi/src/main/resources/static/consultant/avatar7.jpg
pamapi/src/main/resources/static/consultant/avatar8.jpg
pamapi/src/main/resources/static/consultant/avatar9.jpg