2828import org .springframework .stereotype .Service ;
2929import org .springframework .transaction .annotation .Transactional ;
3030
31+ import java .time .LocalDate ;
32+ import java .time .LocalDateTime ;
3133import java .util .Comparator ;
3234import java .util .List ;
3335import java .util .stream .Collectors ;
@@ -50,7 +52,6 @@ public DesignerMainResponse getDesignerMainInfo(final Long designerId, final int
5052
5153 Page <HairModelApplication > applicationPage = findApplicationsByPaging (page , size );
5254 long totalElements = applicationPage .getTotalElements ();
53-
5455 List <HairModelApplicationResponse > applicationResponsesList = applicationPage .stream ().map (this ::getApplicationResponse ).collect (Collectors .toList ());
5556
5657 return new DesignerMainResponse (
@@ -104,10 +105,11 @@ public ApplicationDto getApplicationDetailInfo(final Long applicationId) {
104105 hairModelApplication .getExpiredDate ().format (DateTimeFormatter .ofPattern (DATE_FORMAT )));
105106 }
106107
107- public ApplicationIdResponse checkValidApplicationStatus (final Long modelId ){
108+ public ApplicationIdResponse checkValidApplicationStatus (final Long modelId ) {
108109 HairModelApplication hairModelApplication = hairModelApplicationJpaRepository .findFirstByModelIdOrderByCreatedAtDesc (modelId ).orElseThrow (() -> new NotFoundException (ErrorCode .NOT_FOUND_APPLICATION_EXCEPTION ));
109110
110- if (hairModelApplication .isExpired ()) throw new NotFoundException (ErrorCode .NOT_FOUND_VALID_APPLICATION_EXCEPTION );
111+ if (hairModelApplication .isExpired ())
112+ throw new NotFoundException (ErrorCode .NOT_FOUND_VALID_APPLICATION_EXCEPTION );
111113
112114 return new ApplicationIdResponse (hairModelApplication .getId ());
113115 }
@@ -128,22 +130,24 @@ public DownloadUrlResponseDto getApplicationCaptureDownloadUrl(final Long applic
128130 return new DownloadUrlResponseDto (applicationDownloadUrl );
129131 }
130132
131- public boolean getApplicationExpiredStatus (final Long applicationId ){
133+ public boolean getApplicationExpiredStatus (final Long applicationId ) {
132134 final HairModelApplication hairModelApplication = hairModelApplicationJpaRepository .findById (applicationId )
133135 .orElseThrow (() -> new NotFoundException (ErrorCode .NOT_FOUND_APPLICATION_EXCEPTION ));
134136 return hairModelApplication .isExpired ();
135137 }
136138
137139 private Page <HairModelApplication > findApplicationsByPaging (final int page , final int size ) {
138- PageRequest pageRequest = PageRequest .of (page - 1 , size , Sort .by (Sort .Direction .DESC , "id " ));
140+ PageRequest pageRequest = PageRequest .of (page - 1 , size , Sort .by (Sort .Direction .DESC , "createdAt " ));
139141 Page <HairModelApplication > applicationPage = hairModelApplicationJpaRepository .findAll (pageRequest );
140142
143+ long nonExpiredCount = hairModelApplicationJpaRepository .countNonExpiredApplications (LocalDate .now ().minusDays (13 ).atStartOfDay (), LocalDate .now ().plusDays (1 ).atStartOfDay ());
144+
141145 Page <HairModelApplication > nonExpiredApplications = applicationPage
142146 .stream ()
143147 .filter (application -> !application .isExpired ())
144148 .collect (Collectors .collectingAndThen (
145149 Collectors .toList (),
146- list -> new PageImpl <>(list , pageRequest , list . size ())
150+ list -> new PageImpl <>(list , pageRequest , nonExpiredCount ) // 전체 개수 사용
147151 ));
148152
149153 return nonExpiredApplications ;
0 commit comments