Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import java.io.IOException;
import java.time.LocalDate;
import java.util.List;
import java.util.Optional;
import lombok.RequiredArgsConstructor;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
Expand All @@ -37,9 +38,12 @@ public EnhanceItem findByUserAndItem(User user, Item item) {
.orElseThrow(() -> new GeneralException(ErrorCode.ENHANCE_ITEM_NOT_FOUND));
}

public Optional<EnhanceItem> findByUserAndItemInOptional(User user, Item item) {
return enhanceItemRepository.findByUserAndItem(user, item);
}

public EnhanceItem findByUserAndItemOrCreateEnhanceItem(User user, Item item) {
return enhanceItemRepository.findByUserAndItem(user, item)
// 없으면 새로운 Entity 생성
.orElseGet(() -> {
Integer lastRanking = enhanceItemRepository.countByItem(item) + 1;
EnhanceItem newEnhanceItem = EnhanceConverter.createEnhanceItem(user, item, lastRanking);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ public static ItemRankingResDto itemRankingResDto(Item item, Integer myRanking,
return ItemRankingResDto.builder()
.userRankingResDtoList(userRankingResDtoList)
.itemName(item.getName())
.myRanking(myRanking)
.myRanking(myRanking > 0 ? Integer.toString(myRanking) : "-")
.build();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package LuckyVicky.backend.ranking.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.xml.bind.annotation.XmlType.DEFAULT;
import java.time.LocalDate;
import java.util.List;
import lombok.AllArgsConstructor;
Expand Down Expand Up @@ -48,7 +47,7 @@ public static class ItemRankingResDto {
private String itemName;

@Schema(description = "사용자 랭킹")
private Integer myRanking;
private String myRanking;
}

// 주차별 랭킹 정보
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
import LuckyVicky.backend.ranking.dto.RankingResponseDto.UserRankingResDto;
import LuckyVicky.backend.ranking.dto.RankingResponseDto.WeekRankingResDto;
import LuckyVicky.backend.user.domain.User;
import jakarta.transaction.Transactional;
import java.time.LocalDate;
import java.time.temporal.WeekFields;
import java.util.List;
import java.util.Locale;
import java.time.LocalDate;
import java.util.Optional;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

Expand All @@ -44,14 +44,15 @@ public ItemRankingResDto getItemRankingResDto(User user, Item item) {
List<EnhanceItem> enhanceItemList =
enhanceItemRepository.findEnhanceItemsByItemOrderByEnhanceLevelAndReachedTime(item);

Integer myRanking = enhanceItemService.findByUserAndItemOrCreateEnhanceItem(user, item).getRanking();
Optional<EnhanceItem> enhanceItem = enhanceItemService.findByUserAndItemInOptional(user, item);
Integer myRanking = enhanceItem.map(EnhanceItem::getRanking).orElse(-1);

List<UserRankingResDto> userRankingResDtoList
= enhanceItemList.stream()
.map(RankingConverter::userRankingResDto)
.toList();

return RankingConverter.itemRankingResDto(item, myRanking ,userRankingResDtoList);
return RankingConverter.itemRankingResDto(item, myRanking, userRankingResDtoList);
}

public WeekRankingResDto getWeekRankingResDto(User user, List<Item> weekItemList, LocalDate date) {
Expand All @@ -67,15 +68,16 @@ public WeekRankingResDto getWeekRankingResDto(User user, List<Item> weekItemList
LocalDate enhanceStartDate = weekItemList.get(0).getEnhanceStartDate();
LocalDate enhanceEndDate = weekItemList.get(0).getEnhanceEndDate();

return RankingConverter.weekRankingResDto(enhanceMonthWeek, itemRankingResDtoList, enhanceStartDate, enhanceEndDate);
return RankingConverter.weekRankingResDto(enhanceMonthWeek, itemRankingResDtoList, enhanceStartDate,
enhanceEndDate);
}

public CurrentItemRankingResDto getCurrentItemRankingResDto(Item item, EnhanceItem enhanceItem) {
List<EnhanceItem> enhanceItemList =
enhanceItemRepository.findEnhanceItemsByItemOrderByEnhanceLevelAndReachedTime(item);

List<UserRankingResDto> userRankingResDtoList
= enhanceItemList.stream()
= enhanceItemList.stream()
.map(RankingConverter::userRankingResDto)
.toList();

Expand Down
8 changes: 4 additions & 4 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,12 +77,12 @@ spring:
properties:
hibernate:
dialect: org.hibernate.dialect.MySQLDialect
# format_sql: true
# show_sql: true
format_sql: true
show_sql: true
use_sql_comments: true
hbm2ddl:
auto: update
default_batch_fetch_size: 1000
#default_batch_fetch_size: 100

---

Expand All @@ -108,4 +108,4 @@ spring:
use_sql_comments: true
hbm2ddl:
auto: update
default_batch_fetch_size: 1000
default_batch_fetch_size: 100
Loading