FruitBank/Presentation/Nop.Web/Factories/IOrderModelFactory.cs

50 lines
1.7 KiB
C#

using Nop.Core.Domain.Orders;
using Nop.Core.Domain.Shipping;
using Nop.Web.Models.Order;
namespace Nop.Web.Factories;
/// <summary>
/// Represents the interface of the order model factory
/// </summary>
public partial interface IOrderModelFactory
{
/// <summary>
/// Prepare the customer order list model
/// </summary>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the customer order list model
/// </returns>
Task<CustomerOrderListModel> PrepareCustomerOrderListModelAsync();
/// <summary>
/// Prepare the order details model
/// </summary>
/// <param name="order">Order</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the order details model
/// </returns>
Task<OrderDetailsModel> PrepareOrderDetailsModelAsync(Order order);
/// <summary>
/// Prepare the shipment details model
/// </summary>
/// <param name="shipment">Shipment</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the shipment details model
/// </returns>
Task<ShipmentDetailsModel> PrepareShipmentDetailsModelAsync(Shipment shipment);
/// <summary>
/// Prepare the customer reward points model
/// </summary>
/// <param name="page">Number of items page; pass null to load the first page</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the customer reward points model
/// </returns>
Task<CustomerRewardPointsModel> PrepareCustomerRewardPointsAsync(int? page);
}