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 @@ -2,9 +2,9 @@

import com.example.solidconnection.custom.resolver.AuthorizedUser;
import com.example.solidconnection.score.dto.GpaScoreRequest;
import com.example.solidconnection.score.dto.GpaScoreStatusResponse;
import com.example.solidconnection.score.dto.GpaScoreStatusesResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreRequest;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusesResponse;
import com.example.solidconnection.score.service.ScoreService;
import com.example.solidconnection.siteuser.domain.SiteUser;
import jakarta.validation.Valid;
Expand Down Expand Up @@ -49,19 +49,19 @@ public ResponseEntity<Long> submitLanguageTestScore(

// 학점 상태를 확인하는 api
@GetMapping("/gpas")
public ResponseEntity<GpaScoreStatusResponse> getGpaScoreStatus(
public ResponseEntity<GpaScoreStatusesResponse> getGpaScoreStatus(
@AuthorizedUser SiteUser siteUser
) {
GpaScoreStatusResponse gpaScoreStatus = scoreService.getGpaScoreStatus(siteUser);
GpaScoreStatusesResponse gpaScoreStatus = scoreService.getGpaScoreStatus(siteUser);
return ResponseEntity.ok(gpaScoreStatus);
}

// 어학 성적 상태를 확인하는 api
@GetMapping("/language-tests")
public ResponseEntity<LanguageTestScoreStatusResponse> getLanguageTestScoreStatus(
public ResponseEntity<LanguageTestScoreStatusesResponse> getLanguageTestScoreStatus(
@AuthorizedUser SiteUser siteUser
) {
LanguageTestScoreStatusResponse languageTestScoreStatus = scoreService.getLanguageTestScoreStatus(siteUser);
LanguageTestScoreStatusesResponse languageTestScoreStatus = scoreService.getLanguageTestScoreStatus(siteUser);
return ResponseEntity.ok(languageTestScoreStatus);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.example.solidconnection.score.dto;

import com.example.solidconnection.application.domain.Gpa;

public record GpaResponse(
double gpa,
double gpaCriteria,
String gpaReportUrl
) {
public static GpaResponse from(Gpa gpa) {
return new GpaResponse(
gpa.getGpa(),
gpa.getGpaCriteria(),
gpa.getGpaReportUrl()
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import jakarta.validation.constraints.NotNull;

public record GpaScoreRequest(

@NotNull(message = "학점을 입력해주세요.")
Double gpa,

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,20 @@
package com.example.solidconnection.score.dto;

import java.util.List;
import com.example.solidconnection.score.domain.GpaScore;
import com.example.solidconnection.type.VerifyStatus;

public record GpaScoreStatusResponse(
List<GpaScoreStatus> gpaScoreStatusList
long id,
GpaResponse gpaResponse,
VerifyStatus verifyStatus,
String rejectedReason
) {
public static GpaScoreStatusResponse from(GpaScore gpaScore) {
return new GpaScoreStatusResponse(
gpaScore.getId(),
GpaResponse.from(gpaScore.getGpa()),
gpaScore.getVerifyStatus(),
gpaScore.getRejectedReason()
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.solidconnection.score.dto;

import java.util.List;

public record GpaScoreStatusesResponse(
List<GpaScoreStatusResponse> gpaScoreStatusResponseList
) {
public static GpaScoreStatusesResponse from(List<GpaScoreStatusResponse> gpaScoreStatusResponseList) {
return new GpaScoreStatusesResponse(gpaScoreStatusResponseList);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.example.solidconnection.score.dto;

import com.example.solidconnection.application.domain.LanguageTest;
import com.example.solidconnection.type.LanguageTestType;

public record LanguageTestResponse(
LanguageTestType languageTestType,
String languageTestScore,
String languageTestReportUrl
) {
public static LanguageTestResponse from(LanguageTest languageTest) {
return new LanguageTestResponse(
languageTest.getLanguageTestType(),
languageTest.getLanguageTestScore(),
languageTest.getLanguageTestReportUrl()
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import jakarta.validation.constraints.NotNull;

public record LanguageTestScoreRequest(

@NotNull(message = "어학 종류를 입력해주세요.")
LanguageTestType languageTestType,

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,8 +1,20 @@
package com.example.solidconnection.score.dto;

import java.util.List;
import com.example.solidconnection.score.domain.LanguageTestScore;
import com.example.solidconnection.type.VerifyStatus;

public record LanguageTestScoreStatusResponse(
List<LanguageTestScoreStatus> languageTestScoreStatusList
long id,
LanguageTestResponse languageTestResponse,
VerifyStatus verifyStatus,
String rejectedReason
) {
public static LanguageTestScoreStatusResponse from(LanguageTestScore languageTestScore) {
return new LanguageTestScoreStatusResponse(
languageTestScore.getId(),
LanguageTestResponse.from(languageTestScore.getLanguageTest()),
languageTestScore.getVerifyStatus(),
languageTestScore.getRejectedReason()
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.example.solidconnection.score.dto;

import java.util.List;

public record LanguageTestScoreStatusesResponse(
List<LanguageTestScoreStatusResponse> languageTestScoreStatusResponseList
) {
public static LanguageTestScoreStatusesResponse from(List<LanguageTestScoreStatusResponse> languageTestScoreStatusResponseList) {
return new LanguageTestScoreStatusesResponse(languageTestScoreStatusResponseList);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
import com.example.solidconnection.score.domain.GpaScore;
import com.example.solidconnection.score.domain.LanguageTestScore;
import com.example.solidconnection.score.dto.GpaScoreRequest;
import com.example.solidconnection.score.dto.GpaScoreStatus;
import com.example.solidconnection.score.dto.GpaScoreStatusResponse;
import com.example.solidconnection.score.dto.GpaScoreStatusesResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreRequest;
import com.example.solidconnection.score.dto.LanguageTestScoreStatus;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusesResponse;
import com.example.solidconnection.score.repository.GpaScoreRepository;
import com.example.solidconnection.score.repository.LanguageTestScoreRepository;
import com.example.solidconnection.siteuser.domain.SiteUser;
Expand Down Expand Up @@ -75,28 +75,28 @@ public Long submitLanguageTestScore(SiteUser siteUser, LanguageTestScoreRequest
}

@Transactional(readOnly = true)
public GpaScoreStatusResponse getGpaScoreStatus(SiteUser siteUser) {
public GpaScoreStatusesResponse getGpaScoreStatus(SiteUser siteUser) {
// todo: ditto
SiteUser siteUser1 = siteUserRepository.findById(siteUser.getId()).orElseThrow(() -> new CustomException(USER_NOT_FOUND));
List<GpaScoreStatus> gpaScoreStatusList =
List<GpaScoreStatusResponse> gpaScoreStatusResponseList =
Optional.ofNullable(siteUser1.getGpaScoreList())
.map(scores -> scores.stream()
.map(GpaScoreStatus::from)
.map(GpaScoreStatusResponse::from)
.collect(Collectors.toList()))
.orElse(Collections.emptyList());
return new GpaScoreStatusResponse(gpaScoreStatusList);
return GpaScoreStatusesResponse.from(gpaScoreStatusResponseList);
}

@Transactional(readOnly = true)
public LanguageTestScoreStatusResponse getLanguageTestScoreStatus(SiteUser siteUser) {
public LanguageTestScoreStatusesResponse getLanguageTestScoreStatus(SiteUser siteUser) {
// todo: ditto
SiteUser siteUser1 = siteUserRepository.findById(siteUser.getId()).orElseThrow(() -> new CustomException(USER_NOT_FOUND));
List<LanguageTestScoreStatus> languageTestScoreStatusList =
List<LanguageTestScoreStatusResponse> languageTestScoreStatusResponseList =
Optional.ofNullable(siteUser1.getLanguageTestScoreList())
.map(scores -> scores.stream()
.map(LanguageTestScoreStatus::from)
.map(LanguageTestScoreStatusResponse::from)
.collect(Collectors.toList()))
.orElse(Collections.emptyList());
return new LanguageTestScoreStatusResponse(languageTestScoreStatusList);
return LanguageTestScoreStatusesResponse.from(languageTestScoreStatusResponseList);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
import com.example.solidconnection.score.domain.GpaScore;
import com.example.solidconnection.score.domain.LanguageTestScore;
import com.example.solidconnection.score.dto.GpaScoreRequest;
import com.example.solidconnection.score.dto.GpaScoreStatus;
import com.example.solidconnection.score.dto.GpaScoreStatusResponse;
import com.example.solidconnection.score.dto.GpaScoreStatusesResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreRequest;
import com.example.solidconnection.score.dto.LanguageTestScoreStatus;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusResponse;
import com.example.solidconnection.score.dto.LanguageTestScoreStatusesResponse;
import com.example.solidconnection.score.repository.GpaScoreRepository;
import com.example.solidconnection.score.repository.LanguageTestScoreRepository;
import com.example.solidconnection.siteuser.domain.SiteUser;
Expand Down Expand Up @@ -63,15 +63,15 @@ class ScoreServiceTest extends BaseIntegrationTest {
);

// when
GpaScoreStatusResponse response = scoreService.getGpaScoreStatus(testUser);
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(testUser);

// then
assertThat(response.gpaScoreStatusList())
assertThat(response.gpaScoreStatusResponseList())
.hasSize(scores.size())
.containsExactlyInAnyOrder(
scores.stream()
.map(GpaScoreStatus::from)
.toArray(GpaScoreStatus[]::new)
.map(GpaScoreStatusResponse::from)
.toArray(GpaScoreStatusResponse[]::new)
);
}

Expand All @@ -81,10 +81,10 @@ class ScoreServiceTest extends BaseIntegrationTest {
SiteUser testUser = createSiteUser();

// when
GpaScoreStatusResponse response = scoreService.getGpaScoreStatus(testUser);
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(testUser);

// then
assertThat(response.gpaScoreStatusList()).isEmpty();
assertThat(response.gpaScoreStatusResponseList()).isEmpty();
}

@Test
Expand All @@ -98,15 +98,15 @@ class ScoreServiceTest extends BaseIntegrationTest {
siteUserRepository.save(testUser);

// when
LanguageTestScoreStatusResponse response = scoreService.getLanguageTestScoreStatus(testUser);
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(testUser);

// then
assertThat(response.languageTestScoreStatusList())
assertThat(response.languageTestScoreStatusResponseList())
.hasSize(scores.size())
.containsExactlyInAnyOrder(
scores.stream()
.map(LanguageTestScoreStatus::from)
.toArray(LanguageTestScoreStatus[]::new)
.map(LanguageTestScoreStatusResponse::from)
.toArray(LanguageTestScoreStatusResponse[]::new)
);
}

Expand All @@ -116,10 +116,10 @@ class ScoreServiceTest extends BaseIntegrationTest {
SiteUser testUser = createSiteUser();

// when
LanguageTestScoreStatusResponse response = scoreService.getLanguageTestScoreStatus(testUser);
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(testUser);

// then
assertThat(response.languageTestScoreStatusList()).isEmpty();
assertThat(response.languageTestScoreStatusResponseList()).isEmpty();
}

@Test
Expand Down