Skip to content

Commit

Permalink
[#112] 리팩토링
Browse files Browse the repository at this point in the history
로직 수정
  • Loading branch information
JAEHEE25 committed Nov 27, 2024
1 parent 611de0a commit 536e852
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
@EnableWebSecurity
public class SecurityConfig {
private static final String[] WHITELIST = new String[] {
"/",
APIConstants.API_PREFIX + "/auth/**",
APIConstants.API_PREFIX + "/test/**",
APIConstants.API_PREFIX + "/records/{recordId}",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public RecordCreateResponse createRecord(T recordRequest) throws IOException {
updateSolvedCount(user);
updateSuccessRate(user);
updateJoinedRoomsLastUpdatedAt(createdRecord, user);
// commitToGithub(createdRecord, user); //todo 등록 커밋 기능
commitToGithub(createdRecord, user);
}
return RecordCreateResponse.of(createdRecord);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,9 @@ public RecordModifyResponse modifyRecord(Long recordId, RecordModifyRequest requ
User user = userService.getUserById(AuthUtils.getCurrentUserId());
AuthUtils.checkOwnedEntity(record);

// deleteGithubContent(record, user); //todo 수정 커밋 기능
deleteGithubContent(record, user);
updateRecord(record, request);
// commitNewGithubContent(record, user);
commitNewGithubContent(record, user);
return RecordModifyResponse.of(record);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import java.util.List;

import io.driver.codrive.modules.room.domain.Room;
import io.driver.codrive.modules.user.domain.User;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;

Expand All @@ -14,16 +15,16 @@ public record JoinedRoomListResponse(
@Schema(description = "참여 중인 그룹 목록")
List<RoomItemResponse> joinedRooms
) {
public static JoinedRoomListResponse of(int totalPage, List<Room> joinedRooms) {
public static JoinedRoomListResponse of(int totalPage, List<Room> joinedRooms, User user) {
return JoinedRoomListResponse.builder()
.totalPage(totalPage)
.joinedRooms(RoomItemResponse.of(joinedRooms, true))
.joinedRooms(RoomItemResponse.of(joinedRooms, user))
.build();
}

public static JoinedRoomListResponse of(List<Room> joinedRooms) {
public static JoinedRoomListResponse of(List<Room> joinedRooms, User user) {
return JoinedRoomListResponse.builder()
.joinedRooms(RoomItemResponse.of(joinedRooms, true))
.joinedRooms(RoomItemResponse.of(joinedRooms, user))
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,13 @@ public JoinedRoomInfoResponse getJoinedRoomInfo(Long roomId) {
if (room.getOwner().equals(user)) {
password = room.getPassword();
}
int approvedCount = roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room, UserRequestStatus.JOINED);
int requestedCount = roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room, UserRequestStatus.REQUESTED) +
roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room, UserRequestStatus.WAITING);
return JoinedRoomInfoResponse.of(room, password, approvedCount, requestedCount, roomUserMappingService.getLanguageMemberCountResponse(room));
int approvedCount = roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room,
UserRequestStatus.JOINED);
int requestedCount =
roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room, UserRequestStatus.REQUESTED) +
roomRequestService.getRoomRequestCountByRoomAndRequestStatus(room, UserRequestStatus.WAITING);
return JoinedRoomInfoResponse.of(room, password, approvedCount, requestedCount,
roomUserMappingService.getLanguageMemberCountResponse(room));
}

@Transactional
Expand Down Expand Up @@ -164,26 +167,23 @@ public JoinedRoomTitleResponse getJoinedRoomTitle(Long userId) {
@Transactional
public JoinedRoomListResponse getJoinedRoomList(Long userId, SortType sortType, Integer page, String status) {
User user = userService.getUserById(userId);
User currentUser = userService.getUserById(AuthUtils.getCurrentUserId());
RoomStatus roomStatus = getRoomStatus(status);
if (page != null) {
Pageable pageable = PageRequest.of(page, ROOMS_SIZE);
Page<Room> rooms = roomUserMappingService.getJoinedRoomsByPage(user.getUserId(), roomStatus, sortType,
pageable);
return JoinedRoomListResponse.of(rooms.getTotalPages(), rooms.getContent());
return JoinedRoomListResponse.of(rooms.getTotalPages(), rooms.getContent(), currentUser);
}
return JoinedRoomListResponse.of(getJoinedRoomsByStatusAndSortExcludingOwn(roomStatus, user, sortType));
return JoinedRoomListResponse.of(getJoinedRoomsBySort(user, sortType), currentUser);
}

private List<Room> getJoinedRoomsByStatusAndSortExcludingOwn(RoomStatus roomStatus, User user, SortType sortType) {
private List<Room> getJoinedRoomsBySort(User user, SortType sortType) {
List<Room> rooms;
if (roomStatus == null) {
rooms = user.getJoinedRooms().stream().filter(room -> !room.getOwner().equals(user)).toList();
} else {
rooms = user.getJoinedRooms()
.stream()
.filter(room -> (room.getRoomStatus() == roomStatus) && !room.getOwner().equals(user))
.toList();
}
rooms = user.getJoinedRooms()
.stream()
.filter(room -> (room.getRoomStatus() == RoomStatus.ACTIVE))
.toList();
return rooms.stream().sorted(SortType.getJoinedRoomComparator(sortType)).collect(Collectors.toList());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ public UserRepositoryImpl() {
public List<User> getRandomUsersExcludingMeAndFollowings(Long userId) {
return from(user)
.leftJoin(follow).on(follow.following.userId.eq(user.userId).and(follow.follower.userId.eq(userId)))
.where(follow.followId.isNull(), user.userId.ne(userId))
.where(follow.followId.isNull(), user.userId.ne(userId), user.language.languageId.ne(1L))
.orderBy(Expressions.numberTemplate(Double.class, "function('RAND')").asc())
.limit(RANDOM_USER_LIMIT)
.fetch();
Expand Down

0 comments on commit 536e852

Please sign in to comment.