Skip to content

Commit

Permalink
Merge pull request #78 from Team-Puzzling/refactor/#77-response-body-…
Browse files Browse the repository at this point in the history
…project-name

#77 [REFACTOR] response body에 project name 내려주도록 리팩토링
  • Loading branch information
Hong0329 authored Aug 9, 2023
2 parents 0806c2f + f10844a commit 5ff4f06
Show file tree
Hide file tree
Showing 15 changed files with 99 additions and 45 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@
@AllArgsConstructor
public class ProjectJoinResponseDto {
private Long projectId;
private String projectName;

public static ProjectJoinResponseDto of(Long projectId){
return new ProjectJoinResponseDto(projectId);
public static ProjectJoinResponseDto of(Long projectId, String projectName){
return new ProjectJoinResponseDto(projectId, projectName);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ProjectOwnPuzzleResponseDto {
private String projectName;
private ProjectMyPuzzleObjectDto myPuzzle;
private List<PuzzleObjectDto> userPuzzleBoard;
private int puzzleBoardCount;
private Boolean isReviewDay;
private Boolean hasTodayReview;

public static ProjectOwnPuzzleResponseDto of(ProjectMyPuzzleObjectDto projectMyPuzzleObjectDto, List<PuzzleObjectDto> userPuzzleBoard,
public static ProjectOwnPuzzleResponseDto of(String projectName, ProjectMyPuzzleObjectDto projectMyPuzzleObjectDto, List<PuzzleObjectDto> userPuzzleBoard,
int puzzleBoardCount, Boolean isReviewDay, Boolean hasTodayReview) {
return new ProjectOwnPuzzleResponseDto(projectMyPuzzleObjectDto, userPuzzleBoard, puzzleBoardCount, isReviewDay, hasTodayReview);
return new ProjectOwnPuzzleResponseDto(projectName, projectMyPuzzleObjectDto, userPuzzleBoard, puzzleBoardCount, isReviewDay, hasTodayReview);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,15 @@
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ProjectTeamPuzzleResponseDto {
private String projectName;
private ProjectMyPuzzleObjectDto myPuzzle;
private List<TeamPuzzleObjectDto> teamPuzzleBoard;
private int teamPuzzleBoardCount;
private Boolean isReviewDay;
private Boolean hasTodayReview;

public static ProjectTeamPuzzleResponseDto of (ProjectMyPuzzleObjectDto projectMyPuzzleObjectDto, List<TeamPuzzleObjectDto> teamPuzzleBoard,
public static ProjectTeamPuzzleResponseDto of (String projectName, ProjectMyPuzzleObjectDto projectMyPuzzleObjectDto, List<TeamPuzzleObjectDto> teamPuzzleBoard,
int teamPuzzleBoardCount, Boolean isReviewDay, Boolean hasTodayReview) {
return new ProjectTeamPuzzleResponseDto (projectMyPuzzleObjectDto, teamPuzzleBoard, teamPuzzleBoardCount, isReviewDay, hasTodayReview);
return new ProjectTeamPuzzleResponseDto (projectName, projectMyPuzzleObjectDto, teamPuzzleBoard, teamPuzzleBoardCount, isReviewDay, hasTodayReview);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,9 @@ public List<ProjectResponseDto> getProjectAll(Long memberId) {
@Override
@Transactional
public ProjectOwnPuzzleResponseDto getMyPuzzles(Long memberId, Long projectId, String today) {

Project project = findProjectById(projectId);

if (today.equals("") || today == null) {
throw new BadRequestException(ErrorStatus.VALIDATION_REQUEST_MISSING_EXCEPTION.getMessage());
}
Expand Down Expand Up @@ -110,7 +113,7 @@ public ProjectOwnPuzzleResponseDto getMyPuzzles(Long memberId, Long projectId, S
}
}

return ProjectOwnPuzzleResponseDto.of(mapperMyPuzzleObject(memberId, projectId), result,
return ProjectOwnPuzzleResponseDto.of(project.getName(), mapperMyPuzzleObject(memberId, projectId), result,
pageReviews.getTotalPages() - 1 < 0 ? 0 : pageReviews.getTotalPages() - 1 , isReviewDay, hasTodayReview);
}

Expand Down Expand Up @@ -181,7 +184,7 @@ public ProjectTeamPuzzleResponseDto getTeamPuzzles(Principal principal, Long pro
for (int i = lastPageValues.size() + 1; i <= pageSize ; i++) {
lastPageValues.add(TeamPuzzleObjectDto.of(null, null, ("puzzlee" + i)));
}
return ProjectTeamPuzzleResponseDto.of(ProjectMyPuzzleObjectDto.of(findProject.getName(), puzzleCount), lastPageValues,
return ProjectTeamPuzzleResponseDto.of(findProject.getName(), ProjectMyPuzzleObjectDto.of(findProject.getName(), puzzleCount), lastPageValues,
lastPageNumber < 0 ? 0 : lastPageNumber, isReviewDay, hasTodayReview);
}

Expand Down Expand Up @@ -252,7 +255,7 @@ public ProjectJoinResponseDto joinProject(Long memberId, ProjectJoinRequestDto p
.project(project)
.build();
userProjectRepository.save(userProject);
return new ProjectJoinResponseDto(projectJoinRequestDto.getProjectId());
return new ProjectJoinResponseDto(projectJoinRequestDto.getProjectId(), project.getName());
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.puzzling.puzzlingServer.api.review.dto.response;

import com.puzzling.puzzlingServer.api.review.domain.Review;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewDetailObjectDto;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
Expand All @@ -13,14 +13,10 @@
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ReviewDetailResponseDto {
private Long reviewId;
private String reviewDay;
private String reviewDate;
private Long reviewTemplateId;
private List<ReviewContentObjectDto> contents;
private String projectName;
private List<ReviewDetailObjectDto> reviews;

public static ReviewDetailResponseDto of (Long reviewId, String reviewDay, String reviewDate,
Long reviewTemplateId, List<ReviewContentObjectDto> contents) {
return new ReviewDetailResponseDto(reviewId, reviewDay, reviewDate, reviewTemplateId, contents);
public static ReviewDetailResponseDto of (String projectName, List<ReviewDetailObjectDto> reviews) {
return new ReviewDetailResponseDto(projectName, reviews);
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.puzzling.puzzlingServer.api.review.dto.response;

import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewTeamStatusObjectDto;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
Expand All @@ -12,13 +13,11 @@
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ReviewTeamStatusResponseDto {
private String reviewDay;
private String reviewDate;
private List<ReviewWriterObjectDto> reviewWriters;
private List<ReviewWriterObjectDto> nonReviewWriters;
private String projectName;
private List<ReviewTeamStatusObjectDto> memberReviews;

public static ReviewTeamStatusResponseDto of (String reviewDay, String reviewDate, List<ReviewWriterObjectDto> reviewWriters,
List<ReviewWriterObjectDto> nonReviewWriters) {
return new ReviewTeamStatusResponseDto(reviewDay, reviewDate, reviewWriters, nonReviewWriters);
public static ReviewTeamStatusResponseDto of (String projectName, List<ReviewTeamStatusObjectDto> memberReviews) {
return new ReviewTeamStatusResponseDto(projectName, memberReviews);
}

}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.puzzling.puzzlingServer.api.review.dto.response;
package com.puzzling.puzzlingServer.api.review.dto.response.objectDto;

import lombok.AllArgsConstructor;
import lombok.Getter;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.puzzling.puzzlingServer.api.review.dto.response.objectDto;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.List;

import static lombok.AccessLevel.PRIVATE;

@Getter
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ReviewDetailObjectDto {
private Long reviewId;
private String reviewDay;
private String reviewDate;
private Long reviewTemplateId;
private List<ReviewContentObjectDto> contents;

public static ReviewDetailObjectDto of (Long reviewId, String reviewDay, String reviewDate,
Long reviewTemplateId, List<ReviewContentObjectDto> contents) {
return new ReviewDetailObjectDto(reviewId, reviewDay, reviewDate, reviewTemplateId, contents);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.puzzling.puzzlingServer.api.review.dto.response.objectDto;

import com.puzzling.puzzlingServer.api.review.dto.response.ReviewWriterObjectDto;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.util.List;

import static lombok.AccessLevel.PRIVATE;

@Getter
@NoArgsConstructor(access = PRIVATE)
@AllArgsConstructor
public class ReviewTeamStatusObjectDto {
private String reviewDay;
private String reviewDate;
private List<ReviewWriterObjectDto> reviewWriters;
private List<ReviewWriterObjectDto> nonReviewWriters;

public static ReviewTeamStatusObjectDto of (String reviewDay, String reviewDate, List<ReviewWriterObjectDto> reviewWriters,
List<ReviewWriterObjectDto> nonReviewWriters) {
return new ReviewTeamStatusObjectDto(reviewDay, reviewDate, reviewWriters, nonReviewWriters);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
import com.puzzling.puzzlingServer.api.review.dto.request.ReviewAARRequestDto;

import com.puzzling.puzzlingServer.api.review.dto.request.ReviewTILRequestDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewDetailObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewTeamStatusObjectDto;
import com.puzzling.puzzlingServer.api.review.repository.ReviewRepository;
import com.puzzling.puzzlingServer.api.review.service.ReviewService;

Expand Down Expand Up @@ -212,13 +215,13 @@ public List<ReviewActionPlanResponseDto> getReviewActionPlans(Long memberId, Lon

@Override
@Transactional
public List<ReviewTeamStatusResponseDto> getTeamReviewStatus(Long projectId, String startDate, String endDate) {
public ReviewTeamStatusResponseDto getTeamReviewStatus(Long projectId, String startDate, String endDate) {

List<ReviewTeamStatusResponseDto> result = new ArrayList<>();
List<ReviewTeamStatusObjectDto> result = new ArrayList<>();

List<UserProject> userProjects = userProjectRepository.findAllByProjectId(projectId);

String reviewCycle = findProjectById(projectId).getReviewCycle();
Project project = findProjectById(projectId);
String reviewCycle = project.getReviewCycle();

List<String> reviewDates = generateReviewDates(startDate, endDate, reviewCycle);

Expand All @@ -237,18 +240,19 @@ public List<ReviewTeamStatusResponseDto> getTeamReviewStatus(Long projectId, Str
}
}

result.add(ReviewTeamStatusResponseDto.of(getDayOfWeek(reviewDate), reviewDate, reviewWriters.isEmpty() ? null : reviewWriters, nonReviewWriters.isEmpty() ? null : nonReviewWriters));
result.add(ReviewTeamStatusObjectDto.of(getDayOfWeek(reviewDate), reviewDate, reviewWriters.isEmpty() ? null : reviewWriters, nonReviewWriters.isEmpty() ? null : nonReviewWriters));

}
return result;
return ReviewTeamStatusResponseDto.of(project.getName(), result);
}

@Override
@Transactional
public List<ReviewDetailResponseDto> getMyReviewDetail(Long memberId, Long projectId, String startDate, String endDate) {
List<ReviewDetailResponseDto> result = new ArrayList<>();
public ReviewDetailResponseDto getMyReviewDetail(Long memberId, Long projectId, String startDate, String endDate) {
List<ReviewDetailObjectDto> result = new ArrayList<>();
findMemberById(memberId);
String reviewCycle = findProjectById(projectId).getReviewCycle();
Project project = findProjectById(projectId);
String reviewCycle = project.getReviewCycle();

List<String> reviewDates = generateReviewDates(startDate, endDate, reviewCycle);

Expand Down Expand Up @@ -280,14 +284,14 @@ public List<ReviewDetailResponseDto> getMyReviewDetail(Long memberId, Long proje
throw new BadRequestException("올바르지 않은 리뷰 템플릿 이름: " + reviewTemplateName);
}

result.add(ReviewDetailResponseDto.of(reviewValue.getId(), getDayOfWeek(reviewDate), reviewDate,
result.add(ReviewDetailObjectDto.of(reviewValue.getId(), getDayOfWeek(reviewDate), reviewDate,
reviewValue.getReviewTemplate().getId(), reviewContent));
} else {
result.add(ReviewDetailResponseDto.of(null, getDayOfWeek(reviewDate), reviewDate,
result.add(ReviewDetailObjectDto.of(null, getDayOfWeek(reviewDate), reviewDate,
null, null));
}
}
return result;
return ReviewDetailResponseDto.of(project.getName(), result);
}


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ public interface ReviewService {

List<ReviewActionPlanResponseDto> getReviewActionPlans(Long memberId, Long projectId);

List<ReviewTeamStatusResponseDto> getTeamReviewStatus(Long projectId, String startDate, String endDate);
ReviewTeamStatusResponseDto getTeamReviewStatus(Long projectId, String startDate, String endDate);

List<MyReviewProjectResponseDto> getMyReviewProjects(Long memberId, Long projectId);

List<ReviewDetailResponseDto> getMyReviewDetail(Long memberId, Long projectId, String startDate, String endDate);
ReviewDetailResponseDto getMyReviewDetail(Long memberId, Long projectId, String startDate, String endDate);

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.puzzling.puzzlingServer.api.template.strategy;

import com.puzzling.puzzlingServer.api.review.dto.response.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.template.domain.ReviewAAR;

import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.puzzling.puzzlingServer.api.template.strategy;

import com.puzzling.puzzlingServer.api.review.dto.response.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.template.domain.Review5F;

import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package com.puzzling.puzzlingServer.api.template.strategy;

import com.puzzling.puzzlingServer.api.review.domain.Review;
import com.puzzling.puzzlingServer.api.review.dto.response.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewContentObjectDto;

import java.util.List;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.puzzling.puzzlingServer.api.template.strategy;

import com.puzzling.puzzlingServer.api.review.dto.response.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.review.dto.response.objectDto.ReviewContentObjectDto;
import com.puzzling.puzzlingServer.api.template.domain.ReviewTIL;

import java.util.List;
Expand Down

0 comments on commit 5ff4f06

Please sign in to comment.