Skip to content

Commit dcbe2db

Browse files
authored
Refactor/user problem number (#185)
* refactor : 기본 언어가 저장되지 않은 유저에 대해 조회시 1번 언어로 자동 설정 및 조회되도록 설정 * refactor : 유저 정보 변경 시, 닉네임 중복 방지 * refactor : /api/users/daily-solved 앤드포인트에 문제 번호 리스트 포함 * refactor : 메일 서비스 undo * refactor :type
1 parent dc0d318 commit dcbe2db

File tree

17 files changed

+59
-18
lines changed

17 files changed

+59
-18
lines changed

.DS_Store

0 Bytes
Binary file not shown.

src/.DS_Store

0 Bytes
Binary file not shown.

src/main/.DS_Store

0 Bytes
Binary file not shown.

src/main/java/.DS_Store

0 Bytes
Binary file not shown.

src/main/java/org/.DS_Store

0 Bytes
Binary file not shown.

src/main/java/org/ezcode/codetest/application/usermanagement/user/service/UserService.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.ezcode.codetest.application.usermanagement.user.service;
22

3+
import java.time.LocalDate;
34
import java.time.LocalDateTime;
45
import java.time.temporal.ChronoUnit;
56
import java.util.List;
@@ -91,6 +92,12 @@ public UserInfoResponse getUserInfo(AuthUser authUser) {
9192
public UserInfoResponse modifyUserInfo(AuthUser authUser, ModifyUserInfoRequest request, MultipartFile image) {
9293
User user = userDomainService.getUserById(authUser.getId());
9394
Language findLangauge = languageDomainService.getLanguage(request.languageId());
95+
if (request.nickname() != null && !request.nickname().equals(user.getNickname())) {
96+
if (userDomainService.existsByNickname(request.nickname())) {
97+
log.info("중복 닉네임");
98+
throw new UserException(UserExceptionCode.ALREADY_EXIST_NICKNAME);
99+
}
100+
}
94101

95102
user.modifyUserInfo(
96103
request.nickname(),
Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
package org.ezcode.codetest.domain.submission.dto;
22

33
import java.time.LocalDate;
4+
import java.util.Set;
45

56
public record DailyCorrectCount(
67
LocalDate date,
7-
int count
8-
) {
9-
public DailyCorrectCount(java.sql.Date date, int count) {
10-
this(date.toLocalDate(), count);
11-
}
12-
}
8+
Long count,
9+
Set<Long> problemIds
10+
) { }

src/main/java/org/ezcode/codetest/domain/submission/service/SubmissionDomainService.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.ezcode.codetest.domain.submission.service;
22

3+
import java.time.LocalDate;
34
import java.time.LocalDateTime;
45
import java.util.List;
56
import java.util.Optional;
@@ -120,4 +121,5 @@ private void modifyUserProblemResult(UserProblemResult userProblemResult, boolea
120121
public int findSubmissionCountByUserId(Long userId) {
121122
return submissionRepository.findSubmissionCountByUserId(userId);
122123
}
124+
123125
}

src/main/java/org/ezcode/codetest/domain/user/exception/code/UserExceptionCode.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@ public enum UserExceptionCode implements ResponseCode {
1515
NO_GITHUB_INFO(false, HttpStatus.BAD_REQUEST, "깃허브 정보가 없습니다."),
1616
NO_GITHUB_REPO(false, HttpStatus.BAD_REQUEST, "해당하는 Repository를 찾을 수 없습니다."),
1717

18-
19-
;
18+
ALREADY_EXIST_NICKNAME(false, HttpStatus.BAD_REQUEST, "이미 존재하는 닉네임입니다");
2019
private final boolean success;
2120
private final HttpStatus status;
2221
private final String message;

src/main/java/org/ezcode/codetest/domain/user/repository/UserRepository.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,5 @@ public interface UserRepository {
2222

2323
void updateUserGithubAccessToken(User loginUser);
2424

25+
List<String> getUserNicknames();
2526
}

0 commit comments

Comments
 (0)