fix(owner-vue): order status 버그픽스

- order status 변경
This commit is contained in:
hoon7566
2022-03-17 15:17:44 +09:00
parent ce95517bad
commit 0123766d68
13 changed files with 62 additions and 258 deletions

View File

@@ -83,13 +83,12 @@ public class Order extends BaseEntity {
return this;
}
public Order setOrderStatus(OrderStatus orderStatus){
public void setOrderStatus(OrderStatus orderStatus){
this.orderStatus = orderStatus;
return this;
}
public void order() {
this.orderStatus = OrderStatus.ORDER;
public void placed() {
this.orderStatus = OrderStatus.PLACED;
}
/**
@@ -104,6 +103,6 @@ public class Order extends BaseEntity {
}
public void fail() {
this.orderStatus = OrderStatus.FAIL;
this.orderStatus = OrderStatus.FAILED;
}
}

View File

@@ -20,16 +20,16 @@ public class OrderListener {
@PostUpdate
public void postUpdate(Order order){
OrderStatus orderStatus = order.getOrderStatus();
if (orderStatus == OrderStatus.ORDER) {
log.info("[OrderListener] {}", OrderStatus.ORDER.name());
if (orderStatus == OrderStatus.PLACED) {
log.info("[OrderListener] {}", OrderStatus.PLACED.name());
try{
orderSender.orderPlaced(OrderSender.KafkaSendOrderDto.createPrimitiveField(order));
}catch (Exception ex){
throw new OrderException(ex.getMessage());
}
} else if (orderStatus == OrderStatus.PLACED) {
log.info("[OrderListener] {}", OrderStatus.PLACED.name());
} else if (orderStatus == OrderStatus.ACCEPTED) {
log.info("[OrderListener] {}", OrderStatus.ACCEPTED.name());
}
}
}

View File

@@ -1,11 +1,18 @@
package com.justpickup.orderservice.domain.order.entity;
import lombok.Getter;
// 주문 대기 -> 주문 신청 --> 주문수락 -> 픽업대기 -> 픽업완료
// \
// ㄴ> 주문거절
@Getter
public enum OrderStatus {
PENDING("주문대기"),
ORDER("주문"),
PLACED("주문수락"),
REJECT("주문거절"),
FAIL("주문실패");
PENDING("주문대기(장바구니)"),
PLACED("주문신청"),
ACCEPTED("주문수락"),
REJECTED("주문거절"),
WAITING("픽업대기"),
FINISHED("픽업완료"),
FAILED("실패");
private String message;

View File

@@ -50,7 +50,7 @@ public class OrderRepositoryCustom {
order.orderTime.between(start, end),
order.storeId.eq(storeId),
order.orderStatus.ne(OrderStatus.PENDING),
order.orderStatus.ne(OrderStatus.FAIL)
order.orderStatus.ne(OrderStatus.FAILED)
)
.orderBy(order.id.desc())
.limit(pageSize + 1)

View File

@@ -9,15 +9,9 @@ import com.justpickup.orderservice.domain.order.repository.OrderRepositoryCustom
import com.justpickup.orderservice.domain.orderItem.dto.OrderItemDto;
import com.justpickup.orderservice.domain.orderItem.entity.OrderItem;
import com.justpickup.orderservice.domain.orderItemOption.entity.OrderItemOption;
import com.justpickup.orderservice.global.client.store.GetItemsResponse;
import com.justpickup.orderservice.global.client.store.GetStoreResponse;
import com.justpickup.orderservice.global.client.store.StoreByUserIdResponse;
import com.justpickup.orderservice.global.client.store.StoreClient;
import com.justpickup.orderservice.global.client.store.*;
import com.justpickup.orderservice.global.client.user.GetCustomerResponse;
import com.justpickup.orderservice.global.client.user.UserClient;
import com.justpickup.orderservice.global.client.store.GetItemResponse;
import com.justpickup.orderservice.global.client.store.GetStoreReseponse;
import com.justpickup.orderservice.global.client.store.StoreClient;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.domain.Page;
@@ -25,12 +19,10 @@ import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.SliceImpl;
import org.springframework.data.support.PageableExecutionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import java.util.stream.Collectors;
import static java.util.stream.Collectors.toList;
import static java.util.stream.Collectors.toMap;
@@ -258,7 +250,7 @@ public class OrderServiceImpl implements OrderService {
public void saveOrder(Long userId) {
orderRepository.findByUserIdAndOrderStatus(userId, OrderStatus.PENDING)
.orElseThrow(() -> new OrderException("장바구니 정보를 찾을 수 없습니다."))
.order();
.placed();
}
@Override

View File

@@ -26,7 +26,7 @@ public class OrderController {
public ResponseEntity<Result> patchOrder(@PathVariable("orderId") Long orderId,
@RequestBody PatchOrderRequest patchOrderRequest) {
OrderStatus orderStatus = patchOrderRequest.getOrderStatus();
if (orderStatus != OrderStatus.PLACED && orderStatus != OrderStatus.REJECT) {
if (orderStatus != OrderStatus.PLACED && orderStatus != OrderStatus.REJECTED) {
throw new OrderException("주문 수락, 거절 외에는 변경 불가능합니다.");
}

View File

@@ -77,8 +77,8 @@ public class SqlCommandLineRunner implements CommandLineRunner {
}
Order order = Order.of(userId, userCouponId, storeId, orderItems);
if (i % 2 == 0) order.setOrderStatus(OrderStatus.ORDER);
else order.setOrderStatus(OrderStatus.REJECT);
if (i % 2 == 0) order.setOrderStatus(OrderStatus.FINISHED);
else order.setOrderStatus(OrderStatus.REJECTED);
orders.add(order);
}

View File

@@ -128,7 +128,7 @@ class OrderOwnerApiControllerTest {
}
_Order order = _Order.builder()
.id(i).userId(i + 10).orderStatus(OrderStatus.ORDER)
.id(i).userId(i + 10).orderStatus(OrderStatus.ACCEPTED)
.orderTime(LocalDateTime.now()).orderItems(orderItems).storeName("가게명" + i)
.build();
orders.add(order);
@@ -208,7 +208,7 @@ class OrderOwnerApiControllerTest {
.id(2L)
.userId(1L)
.orderItems(List.of(orderItemDto_102, orderItemDto_103))
.orderStatus(OrderStatus.FAIL)
.orderStatus(OrderStatus.FAILED)
.orderTime(LocalDateTime.of(2022, 2, 3, 15, 0, 0))
.build();
orderDto_2.changeUserName("닉네임");