zhuyifan

fix(order): 返还取消订单占用的 SKU 销售数量

......@@ -187,7 +187,19 @@ public class OrderServiceRpcClient {
.setUpdateSource(updateOrderDto.getUpdatedSource())
.setModification(modification)
.build();
return orderServiceRpcBlockingStub.updateClientCustomerOrder(request);
final UpdateClientCustomerOrderRpcResponse updateClientCustomerOrderRpcResponse = orderServiceRpcBlockingStub.updateClientCustomerOrder(request);
if (updateClientCustomerOrderRpcResponse.getIsUpdated() && updateOrderDto.getStatus() == OrderStatusEnum.ORDER_CANCELED) {
final var orderById = getOrderById(updateOrderDto.getId());
if (orderById != null && orderById.getCloseTimeType() == CloseTimeType.IMMEDIATELY) {
final var orderDetails = getOrderDetailsByOrderId(orderById.getId());
final var isSuccess = addSkusSellQuantities(orderById.getEnterpriseId(), orderById.getStallId(), orderDetails.stream().map(e -> AddSkusSellQuantityBO.builder()
.skuId(e.getSkuId())
.quantity(-e.getCount())
.build()).collect(Collectors.toList()));
log.info("Order {} returnSkusSellQuantities result: {}", orderById.getId(), isSuccess);
}
}
return updateClientCustomerOrderRpcResponse;
}
public boolean updateClientCustomerOrderCancel(int enterpriseId, int id) {
......