Skip to content

Commit 13450d8

Browse files
authored
Merge pull request #366 from TaskFlow-CLAP/CLAP-303
CLAP-303 회원 정보 수정 API 버그 수정
2 parents fa767d6 + 902e2d0 commit 13450d8

File tree

7 files changed

+14
-13
lines changed

7 files changed

+14
-13
lines changed

src/main/java/clap/server/adapter/inbound/web/dto/admin/response/MemberDetailsResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ public record MemberDetailsResponse(
99
@Schema(description = "회원 이름", example = "서주원")
1010
String name,
1111
@Schema(description = "회원 아이디", example = "siena.it")
12-
String nicknanme,
12+
String nickname,
1313
@Schema(description = "회원 이메일", example = "siena.it@gmail.com")
1414
String email,
1515
@Schema(description = "승인 권한 여부")

src/main/java/clap/server/adapter/inbound/web/dto/member/response/MemberDetailInfoResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public record MemberDetailInfoResponse(
88
@Schema(description = "회원 이름", example = "서주원")
99
String name,
1010
@Schema(description = "회원 아이디", example = "siena.it")
11-
String nicknanme,
11+
String nickname,
1212
@Schema(description = "회원 이메일", example = "siena.it@gmail.com")
1313
String email,
1414
@Schema(description = "승인 권한 여부")

src/main/java/clap/server/adapter/inbound/web/member/MemberInfoController.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@
88
import clap.server.application.port.inbound.member.MemberDetailInfoUsecase;
99
import clap.server.application.port.inbound.member.MemberProfileUsecase;
1010
import clap.server.common.annotation.architecture.WebAdapter;
11+
import clap.server.common.utils.FileTypeValidator;
12+
import clap.server.exception.ApplicationException;
13+
import clap.server.exception.code.FileErrorcode;
1114
import io.swagger.v3.oas.annotations.Operation;
1215
import io.swagger.v3.oas.annotations.tags.Tag;
1316
import lombok.RequiredArgsConstructor;
@@ -49,6 +52,9 @@ public void updateMemberDetailInfo(
4952
@RequestPart(name = "memberInfo") UpdateMemberInfoRequest request,
5053
@RequestPart(name = "profileImage", required = false) MultipartFile profileImage,
5154
@AuthenticationPrincipal SecurityUserDetails userInfo) throws IOException {
55+
if (profileImage !=null && !FileTypeValidator.validImageFile(profileImage.getInputStream())) {
56+
throw new ApplicationException(FileErrorcode.UNSUPPORTED_FILE_TYPE);
57+
}
5258
updateMemberInfoUsecase.updateMemberInfo(userInfo.getUserId(), request, profileImage);
5359
}
5460
}

src/main/java/clap/server/application/mapper/MemberResponseMapper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public static MemberDetailInfoResponse toMemberDetailInfoResponse(Member member)
2727
member.getImageUrl(),
2828
member.getMemberInfo().getName(),
2929
member.getMemberInfo().getNickname(),
30-
member.getImageUrl(),
30+
member.getMemberInfo().getEmail(),
3131
member.isReviewer(),
3232
member.getMemberInfo().getRole(),
3333
member.getMemberInfo().getDepartment().getName(),

src/main/java/clap/server/application/service/admin/SendInvitationService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public void sendInvitation(SendInvitationRequest request) {
3939
commandMemberPort.save(member);
4040

4141
// 회원 상태를 APPROVAL_REQUEST으로 변경
42-
member.changeStatusToAPPROVAL_REQUEST();
42+
member.changeToApproveRequested();
4343

4444
sendEmailPort.sendInvitationEmail(
4545
member.getMemberInfo().getEmail(),

src/main/java/clap/server/application/service/member/UpdateMemberInfoService.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,8 @@
66
import clap.server.application.port.outbound.member.CommandMemberPort;
77
import clap.server.application.port.outbound.s3.S3UploadPort;
88
import clap.server.common.annotation.architecture.ApplicationService;
9-
import clap.server.domain.policy.attachment.FilePathPolicy;
10-
import clap.server.common.utils.FileTypeValidator;
119
import clap.server.domain.model.member.Member;
12-
import clap.server.exception.ApplicationException;
13-
import clap.server.exception.code.FileErrorcode;
10+
import clap.server.domain.policy.attachment.FilePathPolicy;
1411
import lombok.RequiredArgsConstructor;
1512
import org.springframework.transaction.annotation.Transactional;
1613
import org.springframework.web.multipart.MultipartFile;
@@ -27,11 +24,8 @@ class UpdateMemberInfoService implements UpdateMemberInfoUsecase {
2724

2825
@Override
2926
public void updateMemberInfo(Long memberId, UpdateMemberInfoRequest request, MultipartFile profileImage) throws IOException {
30-
if (!FileTypeValidator.validImageFile(profileImage.getInputStream())) {
31-
throw new ApplicationException(FileErrorcode.UNSUPPORTED_FILE_TYPE);
32-
}
3327
Member member = memberService.findActiveMember(memberId);
34-
String profileImageUrl = s3UploadPort.uploadSingleFile(FilePathPolicy.MEMBER_IMAGE, profileImage);
28+
String profileImageUrl = profileImage != null ? s3UploadPort.uploadSingleFile(FilePathPolicy.MEMBER_IMAGE, profileImage) : null;
3529
member.updateMemberInfo(request.name(), request.agitNotification(), request.emailNotification(),
3630
request.kakaoWorkNotification(), profileImageUrl);
3731
commandMemberPort.save(member);

src/main/java/clap/server/domain/model/member/Member.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,10 @@ public boolean isReviewer() {
7575
return this.memberInfo != null && this.memberInfo.isReviewer();
7676
}
7777

78-
public void changeStatusToAPPROVAL_REQUEST() {
78+
public void changeToApproveRequested() {
7979
this.status = MemberStatus.APPROVAL_REQUEST;
8080
}
81+
8182
public void updateMemberInfo(String name, Boolean agitNotificationEnabled, Boolean emailNotificationEnabled, Boolean kakaoWorkNotificationEnabled, String imageUrl) {
8283
this.memberInfo.updateName(name);
8384
this.agitNotificationEnabled = agitNotificationEnabled;

0 commit comments

Comments
 (0)