@@ -57,53 +57,72 @@ private OrderDetailResponseDto toOrderDetailDto(Orders order) {
5757 return orderFacade .toDetailDto (order );
5858 }
5959
60- // 거래 요청
60+ // // 거래 요청 (Redis 사용)
61+ // @Transactional
62+ // public OrderRequestResponseDto requestOrder(Long orderId, String token) {
63+ // Orders orders = findOrdersById(orderId);
64+ // User buyer = userFacade.findUserByToken(token);
65+ // if (orders.getStatus() != OrderStatus.AVAILABLE) {
66+ // throw new OrderInProgressException("이 주문은 이미 거래 중입니다. ");
67+ // }
68+ //
69+ // orders.updateStatus(OrderStatus.WAITING);
70+ //
71+ // orderRequestRedisRepository.save(orders.getId(), buyer.getId());
72+ //
73+ //
74+ // // 판매자에게 알람
75+ // Long sellerId = orders.getSeller().getId();
76+ // OrderEventAlarmDto response = OrderEventAlarmDto.toDto(orders, buyer);
77+ // eventPublisher.publishEvent(sellerId, ORDER_REQUESTED, response);
78+ // return OrderRequestResponseDto.toDto(orders, buyer);
79+ // }
80+ //
81+ // // 거래 요청 전체 조회
82+ // @Transactional(readOnly = true)
83+ // public List<UserSimpleResponseDto> getAllRequestOrder(Long orderId) {
84+ // return orderRequestRedisRepository.findAllMembersById(orderId)
85+ // .stream()
86+ // .map(userFacade::findUserById)
87+ // .map(userFacade::toSimpleDto)
88+ // .toList();
89+ // }
90+ //
91+ //// 거래 수락(거래 중)
92+ // @Transactional
93+ // public OrderDetailResponseDto acceptTransaction(TransactionAcceptRequestDto request) {
94+ // Orders order = findOrdersById(request.getOrderId());
95+ // User buyer = userFacade.findUserById(request.getBuyerId());
96+ //
97+ // order.setBuyer(buyer);
98+ // order.updateStatus(OrderStatus.IN_PROGRESS);
99+ //
100+ // orderRequestRedisRepository.deleteUser(request.getOrderId(), request.getBuyerId());
101+ //
102+ // // 구매자에게 알람
103+ // OrderEventAlarmDto response = OrderEventAlarmDto.toDto(order, buyer);
104+ // eventPublisher.publishEvent(buyer.getId(), ORDER_ACCEPTED, response);
105+ //
106+ // return toOrderDetailDto(order);
107+ // }
108+
109+ // 거래 요청 시 바로 거래 중으로 변경
61110 @ Transactional
62- public OrderRequestResponseDto requestOrder (Long orderId , String token ) {
111+ public OrderDetailResponseDto requestOrder (Long orderId , String token ) {
63112 Orders orders = findOrdersById (orderId );
64113 User buyer = userFacade .findUserByToken (token );
65114 if (orders .getStatus () != OrderStatus .AVAILABLE ) {
66115 throw new OrderInProgressException ("이 주문은 이미 거래 중입니다. " );
67116 }
68117
69- orders .updateStatus (OrderStatus .WAITING );
70-
71- orderRequestRedisRepository .save (orders .getId (), buyer .getId ());
72-
118+ orders .setBuyer (buyer );
119+ orders .updateStatus (OrderStatus .IN_PROGRESS );
73120
74121 // 판매자에게 알람
75122 Long sellerId = orders .getSeller ().getId ();
76123 OrderEventAlarmDto response = OrderEventAlarmDto .toDto (orders , buyer );
77124 eventPublisher .publishEvent (sellerId , ORDER_REQUESTED , response );
78- return OrderRequestResponseDto .toDto (orders , buyer );
79- }
80-
81- // 거래 요청 전체 조회
82- @ Transactional (readOnly = true )
83- public List <UserSimpleResponseDto > getAllRequestOrder (Long orderId ) {
84- return orderRequestRedisRepository .findAllMembersById (orderId )
85- .stream ()
86- .map (userFacade ::findUserById )
87- .map (userFacade ::toSimpleDto )
88- .toList ();
89- }
90-
91- // 거래 수락(거래 중)
92- @ Transactional
93- public OrderDetailResponseDto acceptTransaction (TransactionAcceptRequestDto request ) {
94- Orders order = findOrdersById (request .getOrderId ());
95- User buyer = userFacade .findUserById (request .getBuyerId ());
96-
97- order .setBuyer (buyer );
98- order .updateStatus (OrderStatus .IN_PROGRESS );
99-
100- orderRequestRedisRepository .deleteUser (request .getOrderId (), request .getBuyerId ());
101-
102- // 구매자에게 알람
103- OrderEventAlarmDto response = OrderEventAlarmDto .toDto (order , buyer );
104- eventPublisher .publishEvent (buyer .getId (), ORDER_ACCEPTED , response );
105-
106- return toOrderDetailDto (order );
125+ return toOrderDetailDto (orders );
107126 }
108127
109128 // 거래 중 취소
@@ -133,7 +152,7 @@ public OrderDetailResponseDto completeTransaction(Long orderId) {
133152 coupon .changeUser (order .getBuyer ());
134153 coupon .setBuyFlag (true );
135154
136- orderRequestRedisRepository .delete (orderId );
155+ // orderRequestRedisRepository.delete(orderId);
137156
138157 // 구매자에게 알람
139158 OrderEventAlarmDto response = OrderEventAlarmDto .toDto (order , order .getBuyer ());
0 commit comments