Skip to content

Commit

Permalink
Merge pull request #75 from Taikt08s/dev/feature/shipper-order-track
Browse files Browse the repository at this point in the history
fix(DeliveryOrder): fix order value
  • Loading branch information
Tinhhhh authored Jul 20, 2024
2 parents 99988f9 + 5e9d1f6 commit f8212ed
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ public class DeliveryOrderElement {
@JsonProperty(value = "Delivery_Order_Id", index = 1)
private Integer id;

@JsonIgnore
private int shipperId;

@JsonIgnore
private UUID accountId;

Expand Down Expand Up @@ -58,5 +61,7 @@ public class DeliveryOrderElement {
@JsonProperty(value = "Order_status", index = 10)
private String orderStatus;

@JsonProperty(value = "Shipper_name", index = 11)
private String shipperName;

}
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ public void addPackageToDeliveryOrder(UUID userId, int packageId, int quantity)
user.setCurrentOrder(newOrder);
user = userRepository.save(user);
}
for (OrderDetail orderDetail : orderDetailRepository.findOrderDetailByOrderId(user.getCurrentOrder().getId())){
if (orderDetail.getPackageEntity().getId() == pkg.getId()){
for (OrderDetail orderDetail : orderDetailRepository.findOrderDetailByOrderId(user.getCurrentOrder().getId())) {
if (orderDetail.getPackageEntity().getId() == pkg.getId()) {
orderDetail.setQuantity(quantity);
orderDetailRepository.save(orderDetail);
return;
Expand Down Expand Up @@ -112,11 +112,11 @@ public OrderDetailAfterLoginRequest getOrderDetailAfterLogin(UUID userId) {
OrderDetailAfterLoginRequest orderDetailAfterLoginRequest = new OrderDetailAfterLoginRequest();
User currentUser = userRepository.findById(userId).orElseThrow(() -> new RuntimeException("User could not be found"));

if (currentUser.getCurrentOrder() != null){
if (currentUser.getCurrentOrder() != null) {
int currentOrderId = currentUser.getCurrentOrder().getId();

List<OrderDetail> orderDetailList = orderDetailRepository.findOrderDetailByOrderId(currentOrderId);
if (orderDetailList.isEmpty()){
if (orderDetailList.isEmpty()) {
return orderDetailAfterLoginRequest;
}
List<OrderDetailDto> orderDetailDtoList = orderDetailList.stream().map(this::mapToOrderDetailDto).toList();
Expand All @@ -137,7 +137,7 @@ public static String generateOrderCode(int orderNumber) {
@Transactional
public boolean checkOutOrder(DeliveryOrderDtoForCheckOut deliveryOrderDtoForCheckOut) {
DeliveryOrder order = deliveryOrderRepository.findById(deliveryOrderDtoForCheckOut.getOrderId().longValue()).orElseThrow(() -> new RuntimeException("Order could not be found"));
if (order.getStatus().equalsIgnoreCase("Ordering")){
if (order.getStatus().equalsIgnoreCase("Ordering")) {
order.setOrderDate(new Date());
order.setOrderValue(deliveryOrderDtoForCheckOut.getOrderValue() != null ? deliveryOrderDtoForCheckOut.getOrderValue().floatValue() : 0);
order.setShippedAddress(deliveryOrderDtoForCheckOut.getShippedAddress());
Expand Down Expand Up @@ -183,9 +183,9 @@ public ResponseEntity<Object> cancelOrderForManager(Long orderId) {
if (deliveryOrder.getStatus() != null) {
if (deliveryOrder.getStatus().equalsIgnoreCase("Delivered")) {
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("Order is being delivered and cannot be cancelled");
}else if(deliveryOrder.getStatus().equalsIgnoreCase("Cancelled")){
} else if (deliveryOrder.getStatus().equalsIgnoreCase("Cancelled")) {
return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("Order cancelled already");
}else {
} else {
deliveryOrder.setStatus("Cancelled");
deliveryOrderRepository.save(deliveryOrder);
return CustomSuccessHandler.responseBuilder(HttpStatus.OK, "Cancel order successfully", "");
Expand All @@ -197,7 +197,7 @@ public ResponseEntity<Object> cancelOrderForManager(Long orderId) {
@Override
public boolean acceptOrderForManager(long orderId) {
DeliveryOrder order = deliveryOrderRepository.findById(orderId).orElseThrow(() -> new RuntimeException("Order could not be found"));
if (order.getStatus() != null && order.getStatus().equalsIgnoreCase("Processing")){
if (order.getStatus() != null && order.getStatus().equalsIgnoreCase("Processing")) {
order.setStatus("Preparing");
deliveryOrderRepository.save(order);
return true;
Expand Down Expand Up @@ -328,7 +328,6 @@ public ResponseEntity<Object> getDeliveryOrderByStatus(int pageNo, int pageSize,
packageName.add(o.getPackageEntity().getName());
}
}
d.setOrderValue(deliveryOrderPrice);
d.setPackageName(packageName);

//Lấy Username
Expand All @@ -338,6 +337,16 @@ public ResponseEntity<Object> getDeliveryOrderByStatus(int pageNo, int pageSize,
d.setPhone(users.getPhone());
d.setAddress(users.getAddress());

//Lấy ShipperName
Optional<Shipper> shipper = shipperRepository.findById((long) d.getShipperId());

if (shipper.isEmpty()) {
d.setShipperName("Not assigned");
} else {
User user = userRepository.findById(UUID.fromString(shipper.get().getUuid()))
.orElseThrow(() -> new ResourceNotFoundException("Shipper", "id", shipper.get().getUuid()));
d.setShipperName(user.getFirstName() + " " + user.getLastName());
}
}


Expand Down Expand Up @@ -371,7 +380,6 @@ private RevenueDetailResponse extractDeliveryOrderDetail(Page<DeliveryOrder> del
packageName.add(o.getPackageEntity().getName());
}
}
d.setOrderValue(deliveryOrderPrice);
d.setPackageName(packageName);

//Lấy Username
Expand Down Expand Up @@ -487,7 +495,7 @@ private Page<RevenueElementResponse> convertListToPage(List<RevenueElementRespon
return new PageImpl<>(subList, pageable, sortedContent.size());
}

private OrderDetailDto mapToOrderDetailDto(OrderDetail orderDetail){
private OrderDetailDto mapToOrderDetailDto(OrderDetail orderDetail) {
return OrderDetailDto.builder()
.orderDetailId(orderDetail.getId())
.packageId(orderDetail.getPackageEntity().getId())
Expand All @@ -500,7 +508,7 @@ private OrderDetailDto mapToOrderDetailDto(OrderDetail orderDetail){
.build();
}

private OrderDetailDtoForOrderHistory mapToOrderDetailDtoForOrderHistory(OrderDetail orderDetail){
private OrderDetailDtoForOrderHistory mapToOrderDetailDtoForOrderHistory(OrderDetail orderDetail) {
return OrderDetailDtoForOrderHistory.builder()
.orderDetailId(orderDetail.getId())
.packageId(orderDetail.getPackageEntity().getId())
Expand All @@ -511,7 +519,7 @@ private OrderDetailDtoForOrderHistory mapToOrderDetailDtoForOrderHistory(OrderDe
.build();
}

private DeliveryOrderDto mapToDeliveryOrderDto(DeliveryOrder deliveryOrder){
private DeliveryOrderDto mapToDeliveryOrderDto(DeliveryOrder deliveryOrder) {
return DeliveryOrderDto.builder()
.orderId(deliveryOrder.getId())
.orderDate(deliveryOrder.getOrderDate())
Expand Down

0 comments on commit f8212ed

Please sign in to comment.