Skip to content

Commit

Permalink
[MERGE] 최근 접수 주문번호에 이름 포함
Browse files Browse the repository at this point in the history
[FEAT] 최근 접수 주문번호에 이름 포함
  • Loading branch information
seokbeom00 authored Oct 4, 2024
2 parents 819728b + ac3e434 commit 651a1c0
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.rootandfruit.server.dto.OrderNumberResponseDto;
import com.rootandfruit.server.dto.OrderRequestDto;
import com.rootandfruit.server.dto.OrderResponseDto;
import com.rootandfruit.server.dto.RecentOrderResponseDto;
import com.rootandfruit.server.service.OrdersService;
import jakarta.validation.Valid;
import java.time.LocalDate;
Expand Down Expand Up @@ -75,7 +76,7 @@ public ResponseEntity<Void> orderCancel(
}

@GetMapping("order/recent")
public ResponseEntity<List<Integer>> getRecentOrderNumber() {
public ResponseEntity<List<RecentOrderResponseDto>> getRecentOrderNumber() {
return ResponseEntity.ok(ordersService.getRecentTen());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.rootandfruit.server.dto.OrderNumberResponseDto;
import com.rootandfruit.server.dto.OrderRequestDto;
import com.rootandfruit.server.dto.OrderResponseDto;
import com.rootandfruit.server.dto.RecentOrderResponseDto;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Schema;
Expand Down Expand Up @@ -115,5 +116,5 @@ ResponseEntity<Void> orderCancel(
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "주분번호 조회 성공")
})
ResponseEntity<List<Integer>> getRecentOrderNumber();
ResponseEntity<List<RecentOrderResponseDto>> getRecentOrderNumber();
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package com.rootandfruit.server.dto;

public record RecentOrderResponseDto(
Integer orderNumber,
String senderName
) {
public static RecentOrderResponseDto of(
final Integer orderNumber,
final String senderName
) {
return new RecentOrderResponseDto(
orderNumber, senderName
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.rootandfruit.server.domain.DeliveryStatus;
import com.rootandfruit.server.domain.Orders;
import com.rootandfruit.server.dto.RecentOrderResponseDto;
import com.rootandfruit.server.global.exception.CustomException;
import com.rootandfruit.server.global.exception.ErrorType;
import java.util.List;
Expand All @@ -21,11 +22,12 @@ default List<Orders> findByOrderNumberOrThrow(int orderNumber) {
return orders;
}

@Query("SELECT o.orderNumber FROM Orders o " +
@Query("SELECT new com.rootandfruit.server.dto.RecentOrderResponseDto(o.orderNumber, d.senderName) " +
"FROM Orders o " +
"JOIN o.deliveryInfo d " +
"WHERE d.deliveryStatus = :deliveryStatus " +
"ORDER BY o.createdAt DESC")
List<Integer> findDistinctOrderNumbersByDeliveryStatus(
List<RecentOrderResponseDto> findRecentOrdersByDeliveryStatus(
@Param("deliveryStatus") DeliveryStatus deliveryStatus,
Pageable pageable
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import com.rootandfruit.server.dto.OrderNumberResponseDto;
import com.rootandfruit.server.dto.OrderRequestDto;
import com.rootandfruit.server.dto.OrderResponseDto;
import com.rootandfruit.server.dto.RecentOrderResponseDto;
import com.rootandfruit.server.repository.DeliveryInfoRepository;
import com.rootandfruit.server.repository.MemberRepository;
import com.rootandfruit.server.repository.OrderMetaDataRepository;
Expand Down Expand Up @@ -174,10 +175,8 @@ public void cancel(int orderNumber) {
}

@Transactional(readOnly = true)
public List<Integer> getRecentTen() {
public List<RecentOrderResponseDto> getRecentTen() {
Pageable limitTen = PageRequest.of(0, 10);
List<Integer> orderNumbers = ordersRepository.findDistinctOrderNumbersByDeliveryStatus(DeliveryStatus.ORDER_ACCEPTED, limitTen);

return orderNumbers.stream().distinct().collect(Collectors.toList());
return ordersRepository.findRecentOrdersByDeliveryStatus(DeliveryStatus.ORDER_ACCEPTED, limitTen);
}
}

0 comments on commit 651a1c0

Please sign in to comment.