Skip to content

Commit

Permalink
my-list 로직 개선
Browse files Browse the repository at this point in the history
  • Loading branch information
InBackSu committed Jan 2, 2024
1 parent 8dd1abb commit 2a16a5d
Show file tree
Hide file tree
Showing 5 changed files with 36 additions and 55 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package com.gapple.weeingback.domain.boardgame.domain;

import com.gapple.weeingback.domain.member.entity.Member;
import com.gapple.weeingback.domain.member.entity.NumberNameWithId;
import jakarta.persistence.*;
import lombok.*;
import org.hibernate.annotations.GenericGenerator;

import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

Expand All @@ -22,13 +20,13 @@ public class Boardgame {
@GenericGenerator(name="uuid2", strategy = "uuid2")
private UUID id;

@ManyToOne
@ManyToOne(fetch = FetchType.EAGER)
private Member creator;

@Column(nullable = false)
private Long maxOf;

@OneToMany
@OneToMany(fetch = FetchType.EAGER)
private List<Member> members;

public void addMember(Member member){
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.gapple.weeingback.domain.member.entity;
package com.gapple.weeingback.domain.boardgame.domain;

import lombok.*;

@Builder
@Getter @Setter
@NoArgsConstructor
@AllArgsConstructor
public class NumberNameWithId {
public class BoardgameMemberDto {
private Long grade;

private Long classroom;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.gapple.weeingback.domain.boardgame.domain;

import com.gapple.weeingback.domain.member.entity.NumberNameWithId;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
Expand All @@ -13,6 +12,6 @@
public class ToBoardgameDto {
private String id;
private Long maxOf;
private NumberNameWithId creator;
private List<NumberNameWithId> players;
private BoardgameMemberDto creator;
private List<BoardgameMemberDto> players;
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
package com.gapple.weeingback.domain.boardgame.service.implmentation;

import com.gapple.weeingback.domain.boardgame.domain.Boardgame;
import com.gapple.weeingback.domain.boardgame.domain.BoardgameMemberDto;
import com.gapple.weeingback.domain.boardgame.domain.ToBoardgameDto;
import com.gapple.weeingback.domain.boardgame.domain.dto.response.BoardgameShowResponse;
import com.gapple.weeingback.domain.boardgame.repository.BoardgameRepository;
import com.gapple.weeingback.domain.boardgame.service.BoardgameService;
import com.gapple.weeingback.domain.member.entity.Member;
import com.gapple.weeingback.domain.member.entity.NumberNameWithId;
import com.gapple.weeingback.domain.member.repository.MemberRepository;
import com.gapple.weeingback.global.exception.BoardgameNotFoundException;
import com.gapple.weeingback.global.exception.MemberNotFoundException;
import lombok.RequiredArgsConstructor;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
Expand All @@ -39,18 +38,6 @@ public void submitBoardgame(Long maxOf) {
boardgameRepository.save(boardgame);
}

@Override
public BoardgameShowResponse showAllBoardgame() {
List<Boardgame> boardgames = boardgameRepository.findAll();
List<ToBoardgameDto> boardgameDtos = new ArrayList<>();
boardgames.forEach(boardgame ->
boardgameDtos.add(toDto(boardgame))
);



return new BoardgameShowResponse(boardgameDtos);
}

@Override
@Transactional
Expand All @@ -69,44 +56,30 @@ public void joinBoardgame(UUID boardgameId) {
public void doneBoardgame(UUID boardgameId) {
boardgameRepository.deleteById(boardgameId);
}
@Override
public BoardgameShowResponse showAllBoardgame() {
List<Boardgame> boardgames = boardgameRepository.findAll();
List<ToBoardgameDto> boardgameDtos = new ArrayList<>();
boardgames.forEach(boardgame ->
boardgameDtos.add(toDto(boardgame))
);

public ToBoardgameDto toDto(Boardgame boardgame){
List<NumberNameWithId> players = new ArrayList<>();
List<Member> members = boardgame.getMembers();
Member creator = boardgame.getCreator();
return new BoardgameShowResponse(boardgameDtos);
}

members.forEach(m -> {
players.add(new NumberNameWithId(
m.getGrade(),
m.getClassroom(),
m.getNumber(),
m.getName(),
m.getId().toString()
));
});
public ToBoardgameDto toDto(Boardgame boardgame){
List<BoardgameMemberDto> players = new ArrayList<>();

boardgame.getMembers().forEach(member ->
players.add(new NumberNameWithId(
member.getGrade(),
member.getClassroom(),
member.getNumber(),
member.getName(),
member.getId().toString()
))
players.add(
Member.toBoardgameMemberDto(member)
)
);

return new ToBoardgameDto(
boardgame.getId().toString(),
boardgame.getMaxOf(),
new NumberNameWithId(
creator.getGrade(),
creator.getClassroom(),
creator.getNumber(),
creator.getName(),
creator.getId().toString()
),
Member.toBoardgameMemberDto(boardgame.getCreator()),
players);
}
}


}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.gapple.weeingback.domain.member.entity;

import com.gapple.weeingback.domain.boardgame.domain.Boardgame;
import com.gapple.weeingback.domain.boardgame.domain.BoardgameMemberDto;
import com.gapple.weeingback.domain.consulting.entity.Consulting;

import com.gapple.weeingback.domain.diary.entity.Diary;
Expand Down Expand Up @@ -45,11 +46,11 @@ public class Member implements GrantedAuthority {
@Column(columnDefinition = "VARCHAR(80)", nullable = false)
private String role;

@OneToMany
@OneToMany(fetch = FetchType.EAGER)
@JoinColumn(name = "consulting_id")
private List<Consulting> consulting;

@OneToMany
@OneToMany(fetch = FetchType.EAGER)
@JoinColumn(name = "diary_id")
private List<Diary> diaries;

Expand All @@ -66,4 +67,14 @@ public void addDiary(Diary diary){
public String getAuthority() {
return role;
}

public static BoardgameMemberDto toBoardgameMemberDto(Member member){
return new BoardgameMemberDto(
member.getGrade(),
member.getClassroom(),
member.getNumber(),
member.getName(),
member.getId().toString()
);
}
}

0 comments on commit 2a16a5d

Please sign in to comment.