Skip to content

Commit

Permalink
Merge pull request #75 from iTpple-S-POT/feature/#74-user-profile
Browse files Browse the repository at this point in the history
[feat] 다른 유저 프로필 조회 API 구현
  • Loading branch information
sominyun authored Jan 22, 2024
2 parents d269637 + cd57247 commit 193d3d5
Show file tree
Hide file tree
Showing 5 changed files with 56 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.com.itpple.spot.server.domain.user.dto.UserInfoDto;
import org.com.itpple.spot.server.domain.user.dto.UserProfileDto;
import org.com.itpple.spot.server.domain.user.dto.request.UpdateUserInfoRequest;
import org.com.itpple.spot.server.domain.user.dto.request.UserInfoRequest;
import org.com.itpple.spot.server.domain.user.dto.response.UserInfoResponse;
Expand Down Expand Up @@ -53,4 +54,10 @@ public ResponseEntity<UserInfoResponse> updateUserInfo(
Long userId = customUserDetails.getUserId();
return ResponseEntity.ok(userInfoService.updateUserInfo(userId, updateUserInfoRequest));
}

//다른 유저 프로필 조회
@GetMapping("/{userid}")
public ResponseEntity<UserProfileDto> getUserProfile(@PathVariable Long userid) {
return ResponseEntity.ok(userInfoService.getUserProfile(userid));
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package org.com.itpple.spot.server.domain.user.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import org.com.itpple.spot.server.domain.user.entity.User;
import org.com.itpple.spot.server.global.common.constant.Gender;
import org.com.itpple.spot.server.global.common.constant.Interest;
import org.com.itpple.spot.server.global.common.constant.Mbti;

import java.time.LocalDate;
import java.util.List;

@AllArgsConstructor
@Builder
@Getter
public class UserProfileDto {
private final Long id;
private final String loginType;
private final String profileImageUrl;
private final String name;
private final String nickname;
private final LocalDate birthDay;
private final Gender gender;
private final Mbti mbti;
private final List<Interest> interests;
public static UserProfileDto from(User user) {
return UserProfileDto.builder()
.id(user.getId())
.loginType(user.getLoginType())
.profileImageUrl(user.getProfileImageUrl())
.name(user.getName())
.nickname(user.getNickname())
.birthDay(user.getBirthDay())
.gender(user.getGender())
.mbti(user.getMbti())
.interests(user.getInterests())
.build();
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
public record UserInfoResponse(
Long id,
String loginType,
String role,
String profileImageUrl,
String name,
String nickname,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package org.com.itpple.spot.server.domain.user.service;

import org.com.itpple.spot.server.domain.user.dto.UserInfoDto;
import org.com.itpple.spot.server.domain.user.dto.UserProfileDto;
import org.com.itpple.spot.server.domain.user.dto.request.UpdateUserInfoRequest;
import org.com.itpple.spot.server.domain.user.dto.request.UserInfoRequest;
import org.com.itpple.spot.server.domain.user.dto.response.UserInfoResponse;
Expand All @@ -10,5 +11,6 @@ public interface UserInfoService {
void isAlreadyExistNickname(String nickname);
void validateNickname(String nickname);
UserInfoDto getUserInfo(Long userId);
UserProfileDto getUserProfile(Long userId);
UserInfoResponse updateUserInfo(Long userId, UpdateUserInfoRequest updateUserInfoRequest);
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.com.itpple.spot.server.domain.user.dto.UserInfoDto;
import org.com.itpple.spot.server.domain.user.dto.UserProfileDto;
import org.com.itpple.spot.server.domain.user.dto.request.UpdateUserInfoRequest;
import org.com.itpple.spot.server.global.common.constant.NickNameData;
import org.com.itpple.spot.server.global.common.constant.Status;
Expand Down Expand Up @@ -83,6 +84,11 @@ public UserInfoDto getUserInfo(Long userId) {
.orElseThrow(() -> new UserIdNotFoundException("PK = " + userId)));
}

public UserProfileDto getUserProfile(Long userId) {
return UserProfileDto.from(userRepository.findById(userId)
.orElseThrow(() -> new UserIdNotFoundException("PK = " + userId)));
}

@Transactional
public UserInfoResponse updateUserInfo(Long userId, UpdateUserInfoRequest userInfoRequest) {
User user = userRepository.findById(userId)
Expand Down

0 comments on commit 193d3d5

Please sign in to comment.