Skip to content

Commit eff5040

Browse files
authored
Merge pull request #163 from Pinback-Team/feat/#162
feat: 유저 프로퍼티 조회 API 구현
2 parents 49943da + 53992ff commit eff5040

4 files changed

Lines changed: 33 additions & 0 deletions

File tree

api/src/main/java/com/pinback/api/user/controller/UserControllerV3.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.pinback.api.user.dto.request.UpdateUserJobRequest;
1010
import com.pinback.application.user.dto.response.UserHasJobInfoResponse;
1111
import com.pinback.application.user.dto.response.UserJobInfoResponse;
12+
import com.pinback.application.user.dto.response.UserPropertyResponse;
1213
import com.pinback.application.user.port.in.UserManagementPort;
1314
import com.pinback.domain.user.entity.User;
1415
import com.pinback.shared.annotation.CurrentUser;
@@ -42,4 +43,12 @@ public ResponseDto<UserHasJobInfoResponse> getUserJob(
4243
UserHasJobInfoResponse response = userManagementPort.getUserJobInfo(user);
4344
return ResponseDto.ok(response);
4445
}
46+
47+
@GetMapping("/properties")
48+
public ResponseDto<UserPropertyResponse> getUserProperty(
49+
@Parameter(hidden = true) @CurrentUser User user
50+
) {
51+
UserPropertyResponse response = userManagementPort.getUserProperty(user);
52+
return ResponseDto.ok(response);
53+
}
4554
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.pinback.application.user.dto.response;
2+
3+
import java.util.UUID;
4+
5+
public record UserPropertyResponse(
6+
UUID userId,
7+
String jobRole
8+
) {
9+
public static UserPropertyResponse of(UUID id, String jobRole) {
10+
return new UserPropertyResponse(id, jobRole);
11+
}
12+
}

application/src/main/java/com/pinback/application/user/port/in/UserManagementPort.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import com.pinback.application.user.dto.response.UserInfoResponse;
99
import com.pinback.application.user.dto.response.UserJobInfoResponse;
1010
import com.pinback.application.user.dto.response.UserProfileInfoResponse;
11+
import com.pinback.application.user.dto.response.UserPropertyResponse;
1112
import com.pinback.application.user.dto.response.UserRemindInfoResponse;
1213
import com.pinback.domain.user.entity.User;
1314

@@ -24,4 +25,6 @@ public interface UserManagementPort {
2425
UserJobInfoResponse updateUserJobInfo(User user, UpdateUserJobCommand command);
2526

2627
UserHasJobInfoResponse getUserJobInfo(User user);
28+
29+
UserPropertyResponse getUserProperty(User user);
2730
}

application/src/main/java/com/pinback/application/user/usecase/UserManagementUsecase.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import com.pinback.application.user.dto.response.UserInfoResponse;
1717
import com.pinback.application.user.dto.response.UserJobInfoResponse;
1818
import com.pinback.application.user.dto.response.UserProfileInfoResponse;
19+
import com.pinback.application.user.dto.response.UserPropertyResponse;
1920
import com.pinback.application.user.dto.response.UserRemindInfoResponse;
2021
import com.pinback.application.user.port.in.UserManagementPort;
2122
import com.pinback.application.user.port.out.AcornServicePort;
@@ -96,6 +97,14 @@ public UserHasJobInfoResponse getUserJobInfo(User user) {
9697

9798
}
9899

100+
@Override
101+
@Transactional(readOnly = true)
102+
public UserPropertyResponse getUserProperty(User user) {
103+
User getUser = userGetServicePort.findById(user.getId());
104+
105+
return UserPropertyResponse.of(getUser.getId(), getUser.getJob().getValue());
106+
}
107+
99108
private LocalDateTime getRemindDateTime(LocalDateTime now, LocalTime remindDefault) {
100109
LocalDateTime remindDate = now.plusDays(1L);
101110

0 commit comments

Comments
 (0)