Skip to content

Commit

Permalink
[Feat/#14] 유저 조회에 프로필 사진 추가
Browse files Browse the repository at this point in the history
[Feat/#14] 유저 조회에 프로필 사진 추가
  • Loading branch information
tokyj515 authored Aug 19, 2023
2 parents b80a987 + a94a102 commit f250dae
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.semtleapp.semtleapp.semtleuser.entity.SemtleUser;
import com.semtleapp.semtleapp.semtleuser.entity.SemtleUserInfo;
import com.semtleapp.semtleapp.semtleuser.repository.SemtleUserInfoRepository;
import lombok.*;

public class SemtleUserRes {
Expand All @@ -18,15 +19,18 @@ public static class UserDetail {
private int grade;
private String studentId;
private String phone;
private SemtleUserInfoRepository.GetProfileImage profileImage;

public static UserDetail toDto(SemtleUser user, SemtleUserInfo userInfo){

public static UserDetail toDto(SemtleUser user, SemtleUserInfo userInfo, SemtleUserInfoRepository.GetProfileImage profileImage){
return UserDetail.builder()
.email(user.getEmail())
.name(userInfo.getName())
.nickname(userInfo.getNickname())
.grade(userInfo.getGrade())
.studentId(userInfo.getStudentId())
.phone(userInfo.getPhone())
.profileImage(profileImage)
.build();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
package com.semtleapp.semtleapp.semtleuser.repository;

import com.semtleapp.semtleapp.semtlestudy.repository.SemtleStudyPostRepository;
import com.semtleapp.semtleapp.semtleuser.entity.SemtleUser;
import com.semtleapp.semtleapp.semtleuser.entity.SemtleUserInfo;
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 java.util.List;
import java.util.Optional;

@Repository
public interface SemtleUserInfoRepository extends JpaRepository<SemtleUserInfo, Long> {

Optional<SemtleUserInfo> findBySemtleUser(SemtleUser semtleUser);

@Query(value = "select p.file_name as 'fileName', p.file_download_path as 'fileDownLoadPath' from photo p where p.target_id=:userId and p.type='USER'", nativeQuery = true)
GetProfileImage getProfileImage(@Param("userId") Long userId);

interface GetProfileImage {
String getFileName();
String getFileDownLoadPath();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -82,16 +82,18 @@ public SemtleUserRes.UserDetail signup(SemtleUserReq.SignupDto signupDto, Multip

//프로필 사진 업로드하기
fileUserService.saveFile(file, PhotoType.USER, userId);
SemtleUserInfoRepository.GetProfileImage profileImage = semtleUserInfoRepository.getProfileImage(userId);


return SemtleUserRes.UserDetail.toDto(user, userInfo);
return SemtleUserRes.UserDetail.toDto(user, userInfo, profileImage);
}

@Override
public SemtleUserRes.UserDetail nowUser(String email) {
SemtleUser user = semtleUserRepository.findByEmail(email).get();
SemtleUserInfo userInfo = semtleUserInfoRepository.findBySemtleUser(user).get();
return SemtleUserRes.UserDetail.toDto(user, userInfo);
SemtleUserInfoRepository.GetProfileImage profileImage = semtleUserInfoRepository.getProfileImage(user.getUserId());

return SemtleUserRes.UserDetail.toDto(user, userInfo, profileImage);
}


Expand Down

0 comments on commit f250dae

Please sign in to comment.