Skip to content

Commit 8994ac3

Browse files
authored
Merge pull request #44 from NET-ZERO-FitFit/develop
main <- develop (Order -> OrderHistory 네이밍 변경)
2 parents e62eaf8 + d580d06 commit 8994ac3

12 files changed

Lines changed: 121 additions & 129 deletions

src/main/java/fitfit/domain/member/mapping/OrderHistory.java

Lines changed: 0 additions & 4 deletions
This file was deleted.

src/main/java/fitfit/domain/order/controller/OrderRestController.java renamed to src/main/java/fitfit/domain/order/controller/OrderHistoryRestController.java

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package fitfit.domain.order.controller;
22

3-
import fitfit.domain.order.dto.OrderRequestDTO;
4-
import fitfit.domain.order.dto.OrderResponseDTO;
5-
import fitfit.domain.order.service.OrderCommandService;
6-
import fitfit.domain.order.service.OrderQueryService;
3+
import fitfit.domain.order.dto.OrderHistoryRequestDTO;
4+
import fitfit.domain.order.dto.OrderHistoryResponseDTO;
5+
import fitfit.domain.order.service.OrderHistoryCommandService;
6+
import fitfit.domain.order.service.OrderHistoryQueryService;
77
import fitfit.global.apiPayload.ApiResponse;
88
import fitfit.global.apiPayload.code.status.SuccessStatus;
99
import io.swagger.v3.oas.annotations.Operation;
@@ -19,11 +19,11 @@
1919
@RestController
2020
@RequestMapping("/api/orders")
2121
@RequiredArgsConstructor
22-
@Tag(name = "Order", description = "거래(주문) 프로세스 관련 API")
23-
public class OrderRestController {
22+
@Tag(name = "OrderHistory", description = "거래(주문) 프로세스 관련 API")
23+
public class OrderHistoryRestController {
2424

25-
private final OrderCommandService orderCommandService;
26-
private final OrderQueryService orderQueryService;
25+
private final OrderHistoryCommandService orderHistoryCommandService;
26+
private final OrderHistoryQueryService orderHistoryQueryService;
2727

2828
@PostMapping
2929
@Operation(
@@ -43,16 +43,16 @@ public class OrderRestController {
4343
"""
4444
)
4545
@ApiResponses({
46-
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "201", description = "주문 생성 성공 (채팅방 생성 완료)", content = @Content(schema = @Schema(implementation = OrderResponseDTO.CreateOrderResultDTO.class))),
46+
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "201", description = "주문 생성 성공 (채팅방 생성 완료)", content = @Content(schema = @Schema(implementation = OrderHistoryResponseDTO.CreateOrderHistoryResultDTO.class))),
4747
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "400", description = "자신의 상품은 구매할 수 없음 (ORDER4003)"),
4848
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "409", description = "이미 진행 중인 거래가 있음 (ORDER4002)")
4949
})
50-
public ApiResponse<OrderResponseDTO.CreateOrderResultDTO> createOrder(
50+
public ApiResponse<OrderHistoryResponseDTO.CreateOrderHistoryResultDTO> createOrderHistory(
5151
@Parameter(description = "Access Token", required = true)
5252
@RequestHeader("Authorization") String token,
53-
@RequestBody OrderRequestDTO.CreateOrderDTO request
53+
@RequestBody OrderHistoryRequestDTO.CreateOrderHistoryDTO request
5454
) {
55-
OrderResponseDTO.CreateOrderResultDTO result = orderCommandService.createOrder(token, request);
55+
OrderHistoryResponseDTO.CreateOrderHistoryResultDTO result = orderHistoryCommandService.createOrderHistory(token, request);
5656

5757
// 201 Created 상태코드로 응답
5858
return ApiResponse.of(SuccessStatus._OK, result);
@@ -80,11 +80,11 @@ public ApiResponse<OrderResponseDTO.CreateOrderResultDTO> createOrder(
8080
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "401", description = "판매자가 아님 (COMMON401)"),
8181
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "404", description = "주문을 찾을 수 없음 (ORDER4001)")
8282
})
83-
public ApiResponse<OrderResponseDTO.OrderStatusDTO> acceptOrder(
83+
public ApiResponse<OrderHistoryResponseDTO.OrderHistoryStatusDTO> acceptOrder(
8484
@RequestHeader("Authorization") String token,
8585
@Parameter(description = "수락할 주문 ID") @PathVariable(name = "orderId") Long orderId
8686
) {
87-
OrderResponseDTO.OrderStatusDTO result = orderCommandService.acceptOrder(token, orderId);
87+
OrderHistoryResponseDTO.OrderHistoryStatusDTO result = orderHistoryCommandService.acceptOrderHistory(token, orderId);
8888
return ApiResponse.of(SuccessStatus._OK, result);
8989
}
9090

@@ -108,12 +108,12 @@ public ApiResponse<OrderResponseDTO.OrderStatusDTO> acceptOrder(
108108
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "400", description = "포인트 부족 (MEMBER4002) 또는 이미 결제됨"),
109109
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "404", description = "주문 없음 (ORDER4001)")
110110
})
111-
public ApiResponse<OrderResponseDTO.OrderStatusDTO> payOrder(
111+
public ApiResponse<OrderHistoryResponseDTO.OrderHistoryStatusDTO> payOrder(
112112
@RequestHeader("Authorization") String token,
113113
@PathVariable(name = "orderId") Long orderId,
114-
@RequestBody OrderRequestDTO.PayOrderDTO request
114+
@RequestBody OrderHistoryRequestDTO.PayOrderHistoryDTO request
115115
) {
116-
OrderResponseDTO.OrderStatusDTO result = orderCommandService.payOrder(token, orderId, request);
116+
OrderHistoryResponseDTO.OrderHistoryStatusDTO result = orderHistoryCommandService.payOrderHistory(token, orderId, request);
117117
return ApiResponse.of(SuccessStatus._OK, result);
118118
}
119119

@@ -136,11 +136,11 @@ public ApiResponse<OrderResponseDTO.OrderStatusDTO> payOrder(
136136
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "200", description = "확인 처리 성공"),
137137
@io.swagger.v3.oas.annotations.responses.ApiResponse(responseCode = "400", description = "결제 안 됨 (ORDER400?)")
138138
})
139-
public ApiResponse<OrderResponseDTO.OrderStatusDTO> confirmOrder(
139+
public ApiResponse<OrderHistoryResponseDTO.OrderHistoryStatusDTO> confirmOrder(
140140
@RequestHeader("Authorization") String token,
141141
@PathVariable(name = "orderId") Long orderId
142142
) {
143-
OrderResponseDTO.OrderStatusDTO result = orderCommandService.confirmOrder(token, orderId);
143+
OrderHistoryResponseDTO.OrderHistoryStatusDTO result = orderHistoryCommandService.confirmOrderHistory(token, orderId);
144144
return ApiResponse.of(SuccessStatus._OK, result);
145145
}
146146

@@ -166,12 +166,12 @@ public ApiResponse<OrderResponseDTO.OrderStatusDTO> confirmOrder(
166166
- `COMPLETED`: **판매 완료** (거래 종료)
167167
"""
168168
)
169-
public ApiResponse<OrderResponseDTO.OrderHistoryListDTO> getOrderHistory(
169+
public ApiResponse<OrderHistoryResponseDTO.OrderHistoryListDTO> getOrderHistory(
170170
@RequestHeader("Authorization") String token,
171171
@RequestParam(name = "role") String role,
172172
@RequestParam(name = "state") String state
173173
) {
174-
OrderResponseDTO.OrderHistoryListDTO result = orderQueryService.getOrderHistory(token, role, state);
174+
OrderHistoryResponseDTO.OrderHistoryListDTO result = orderHistoryQueryService.getOrderHistory(token, role, state);
175175
return ApiResponse.of(SuccessStatus._OK, result);
176176
}
177177

@@ -198,7 +198,7 @@ public ApiResponse<String> cancelOrder(
198198
@RequestHeader("Authorization") String token,
199199
@PathVariable(name = "orderId") Long orderId
200200
) {
201-
orderCommandService.cancelOrder(token, orderId);
201+
orderHistoryCommandService.cancelOrderHistory(token, orderId);
202202
return ApiResponse.of(SuccessStatus._OK, "주문이 성공적으로 취소되었습니다.");
203203
}
204204

@@ -224,9 +224,9 @@ public ApiResponse<String> cancelOrder(
224224
public ApiResponse<Long> writeReview(
225225
@RequestHeader("Authorization") String token,
226226
@PathVariable(name = "orderId") Long orderId,
227-
@RequestBody @Valid OrderRequestDTO.ReviewDTO request
227+
@RequestBody @Valid OrderHistoryRequestDTO.ReviewDTO request
228228
) {
229-
Long resultId = orderCommandService.writeReview(token, orderId, request);
229+
Long resultId = orderHistoryCommandService.writeReview(token, orderId, request);
230230
return ApiResponse.of(SuccessStatus._OK, resultId);
231231
}
232232
}

src/main/java/fitfit/domain/order/converter/OrderConverter.java renamed to src/main/java/fitfit/domain/order/converter/OrderHistoryConverter.java

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@
22

33
import fitfit.domain.clothes.entity.Clothes;
44
import fitfit.domain.member.entity.Member;
5-
import fitfit.domain.order.dto.OrderResponseDTO;
5+
import fitfit.domain.order.dto.OrderHistoryResponseDTO;
66
import fitfit.domain.order.entity.OrderHistory;
77
import fitfit.domain.order.enums.OrderStatus;
88

99
import java.util.List;
1010

11-
public class OrderConverter {
11+
public class OrderHistoryConverter {
1212

1313
//DTO -> OrderEntity
14-
public static OrderHistory toOrderEntity(Member buyer, Clothes clothes, Long chatRoomId){
14+
public static OrderHistory toOrderHistory(Member buyer, Clothes clothes, Long chatRoomId){
1515
return OrderHistory.builder()
1616
.buyer(buyer)
1717
.seller(clothes.getSeller())
@@ -22,17 +22,17 @@ public static OrderHistory toOrderEntity(Member buyer, Clothes clothes, Long cha
2222
}
2323

2424
//Entity -> DTO
25-
public static OrderResponseDTO.CreateOrderResultDTO toCreateOrderResultDTO(OrderHistory order){
26-
return OrderResponseDTO.CreateOrderResultDTO.builder()
25+
public static OrderHistoryResponseDTO.CreateOrderHistoryResultDTO toCreateOrderHistoryResultDTO(OrderHistory order){
26+
return OrderHistoryResponseDTO.CreateOrderHistoryResultDTO.builder()
2727
.orderId(order.getId())
2828
.chatRoomId(order.getChatRoomId())
2929
.status(order.getStatus().toString())
3030
.build();
3131
}
3232

3333
//상태 변경 응답용
34-
public static OrderResponseDTO.OrderStatusDTO toStatusDTO(OrderHistory order){
35-
return OrderResponseDTO.OrderStatusDTO.builder()
34+
public static OrderHistoryResponseDTO.OrderHistoryStatusDTO toOrderHistoryStatusDTO(OrderHistory order){
35+
return OrderHistoryResponseDTO.OrderHistoryStatusDTO.builder()
3636
.orderId(order.getId())
3737
.status(order.getStatus().toString())
3838
.buyerConfirmed(order.getBuyerConfirmed())
@@ -42,7 +42,7 @@ public static OrderResponseDTO.OrderStatusDTO toStatusDTO(OrderHistory order){
4242
}
4343

4444
//Order -> DTO . 거래가 진행중(REQUESTED, MATCHED, PAID)이거나 완료된 경우
45-
public static OrderResponseDTO.OrderHistoryDTO toHistoryDTO(OrderHistory order, Member viewer){
45+
public static OrderHistoryResponseDTO.OrderHistoryDTO toHistoryDTO(OrderHistory order, Member viewer){
4646
//상대방 닉네임 구하기
4747
String partnerName = "";
4848
if(order.getBuyer().getId().equals(viewer.getId())){
@@ -55,7 +55,7 @@ public static OrderResponseDTO.OrderHistoryDTO toHistoryDTO(OrderHistory order,
5555
if (order.getClothes().getImages() != null && !order.getClothes().getImages().isEmpty()) {
5656
imageUrl = order.getClothes().getImages().get(0).getImageUrl();
5757
}
58-
return OrderResponseDTO.OrderHistoryDTO.builder()
58+
return OrderHistoryResponseDTO.OrderHistoryDTO.builder()
5959
.orderId(order.getId())
6060
.clothesId(order.getClothes().getId())
6161
.clothesTitle(order.getClothes().getTitle())
@@ -70,13 +70,13 @@ public static OrderResponseDTO.OrderHistoryDTO toHistoryDTO(OrderHistory order,
7070
.build();
7171
}
7272
//Clothes -> DTO . 판매중인 경우!! (Order에 없음)
73-
public static OrderResponseDTO.OrderHistoryDTO toHistoryDTO(Clothes clothes){
73+
public static OrderHistoryResponseDTO.OrderHistoryDTO toHistoryDTO(Clothes clothes){
7474
String imageUrl = null;
7575
if (clothes.getImages() != null && !clothes.getImages().isEmpty()) {
7676
imageUrl = clothes.getImages().get(0).getImageUrl();
7777
}
7878

79-
return OrderResponseDTO.OrderHistoryDTO.builder()
79+
return OrderHistoryResponseDTO.OrderHistoryDTO.builder()
8080
.orderId(null) // 주문이 없으므로 null
8181
.clothesId(clothes.getId())
8282
.clothesTitle(clothes.getTitle())
@@ -91,12 +91,14 @@ public static OrderResponseDTO.OrderHistoryDTO toHistoryDTO(Clothes clothes){
9191
.build();
9292
}
9393

94-
public static OrderResponseDTO.OrderHistoryListDTO toHistoryListDTO(List<OrderResponseDTO.OrderHistoryDTO> orderList){
95-
return OrderResponseDTO.OrderHistoryListDTO.builder()
94+
public static OrderHistoryResponseDTO.OrderHistoryListDTO toHistoryListDTO(List<OrderHistoryResponseDTO.OrderHistoryDTO> orderList){
95+
return OrderHistoryResponseDTO.OrderHistoryListDTO.builder()
9696
.orderList(orderList)
9797
.listSize(orderList.size())
9898
.build();
9999
}
100100

101101
}
102102

103+
104+

src/main/java/fitfit/domain/order/dto/OrderRequestDTO.java renamed to src/main/java/fitfit/domain/order/dto/OrderHistoryRequestDTO.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@
55
import jakarta.validation.constraints.Min;
66
import jakarta.validation.constraints.NotNull;
77

8-
public class OrderRequestDTO {
8+
public class OrderHistoryRequestDTO {
99

10-
public record CreateOrderDTO(
10+
public record CreateOrderHistoryDTO(
1111
@Schema(description = "상품 ID", example = "15")
1212
Long clothesId
1313
){}
1414

15-
public record PayOrderDTO(
15+
public record PayOrderHistoryDTO(
1616
@Schema(description = "사용할 나뭇잎 포인트", example = "5000")
1717
Integer usedPoints
1818
){}

src/main/java/fitfit/domain/order/dto/OrderResponseDTO.java renamed to src/main/java/fitfit/domain/order/dto/OrderHistoryResponseDTO.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55

66
import java.util.List;
77

8-
public class OrderResponseDTO {
8+
public class OrderHistoryResponseDTO {
99

1010
@Builder
11-
public record CreateOrderResultDTO(
11+
public record CreateOrderHistoryResultDTO(
1212
@Schema(description = "생성된 주문 ID", example = "1")
1313
Long orderId,
1414

@@ -20,7 +20,7 @@ public record CreateOrderResultDTO(
2020
){}
2121

2222
@Builder
23-
public record OrderStatusDTO(
23+
public record OrderHistoryStatusDTO(
2424
@Schema(description = "주문 ID", example = "1")
2525
Long orderId,
2626

src/main/java/fitfit/domain/order/repository/OrderRepository.java renamed to src/main/java/fitfit/domain/order/repository/OrderHistoryRepository.java

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55
import fitfit.domain.order.entity.OrderHistory;
66
import fitfit.domain.order.enums.OrderStatus;
77
import org.springframework.data.jpa.repository.JpaRepository;
8-
import org.springframework.data.repository.CrudRepository;
98

109
import java.util.Collection;
1110
import java.util.List;
1211
import java.util.Optional;
1312

14-
public interface OrderRepository extends JpaRepository<OrderHistory, Long> {
13+
public interface OrderHistoryRepository extends JpaRepository<OrderHistory, Long> {
1514

1615
//해당 옷에 대해 취소되지 않은 진행 중인 주문이 있는지(중복 주문 방지)
1716
boolean existsByClothesAndStatusNot(Clothes clothes, OrderStatus status);
@@ -21,9 +20,8 @@ public interface OrderRepository extends JpaRepository<OrderHistory, Long> {
2120
List<OrderHistory> findAllBySellerAndStatus(Member seller, OrderStatus status);
2221

2322
//판매자용 여러 상태 동시 조회(MATCHED + PAID)
24-
List<Order> findAllBySellerAndStatusIn(Member seller, Collection<OrderStatus> statues);
23+
List<OrderHistory> findAllBySellerAndStatusIn(Member seller, Collection<OrderStatus> statues);
2524

2625
//채팅방 ID로 Order 찾기
27-
Optional<Order> findByChatRoomId(Long chatRoomId);
28-
List<OrderHistory> findAllBySellerAndStatusIn(Member seller, Collection<OrderStatus> statues);
26+
Optional<OrderHistory> findByChatRoomId(Long chatRoomId);
2927
}

src/main/java/fitfit/domain/order/service/OrderCommandService.java

Lines changed: 0 additions & 25 deletions
This file was deleted.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package fitfit.domain.order.service;
2+
3+
import fitfit.domain.order.dto.OrderHistoryRequestDTO;
4+
import fitfit.domain.order.dto.OrderHistoryResponseDTO;
5+
import org.springframework.transaction.annotation.Transactional;
6+
7+
public interface OrderHistoryCommandService {
8+
OrderHistoryResponseDTO.CreateOrderHistoryResultDTO createOrderHistory(String authorization, OrderHistoryRequestDTO.CreateOrderHistoryDTO request);
9+
10+
//구매 수락(판매자가 호출)
11+
OrderHistoryResponseDTO.OrderHistoryStatusDTO acceptOrderHistory(String authorization, Long orderId);
12+
13+
@Transactional
14+
OrderHistoryResponseDTO.OrderHistoryStatusDTO payOrderHistory(String authorization, Long orderId, OrderHistoryRequestDTO.PayOrderHistoryDTO request);
15+
16+
//수령/전달 확인
17+
@Transactional
18+
OrderHistoryResponseDTO.OrderHistoryStatusDTO confirmOrderHistory(String authorization, Long orderId);
19+
20+
@Transactional
21+
void cancelOrderHistory(String authorization, Long orderId);
22+
23+
@Transactional
24+
Long writeReview(String authorization, Long orderId, OrderHistoryRequestDTO.ReviewDTO request);
25+
}

0 commit comments

Comments
 (0)