Webiant Logo Webiant Logo
  1. No results found.

    Try your search with a different keyword or use * as a wildcard.

IFilterLevelValueService.cs

using Nop.Core;
using Nop.Core.Domain.Catalog;
using Nop.Core.Domain.FilterLevels;

namespace Nop.Services.FilterLevels;

/// 
/// Filter level value service interface
/// 
public partial interface IFilterLevelValueService
{
    /// 
    /// Check if filter levels are disabled
    /// 
    /// 
    /// Tuple of booleans indicating if filter levels 1, 2, and 3 are disabled
    /// 
    (bool filterLevel1, bool filterLevel2, bool filterLevel3) IsFilterLevelDisabled();


    /// 
    /// Gets filter level values
    /// 
    /// Filter level 1 value
    /// Filter level 2 value
    /// Filter level 3 value
    /// Page index
    /// Page size
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level value list model
    /// 
    Task> GetAllFilterLevelValuesAsync(string filterLevel1Value = null, string filterLevel2Value = null, string filterLevel3Value = null, int pageIndex = 0, int pageSize = int.MaxValue);

    /// 
    /// Inserts Filter level value
    /// 
    /// Filter level value
    /// A task that represents the asynchronous operation
    Task InsertFilterLevelValueAsync(FilterLevelValue filterLevelValue);

    /// 
    /// Gets a filter level value
    /// 
    /// Filter level value identifier
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level value
    /// 
    Task GetFilterLevelValueByIdAsync(int filterLevelValueId);

    /// 
    /// Gets filter level values by product identifier
    /// 
    /// Product identifier
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level values
    /// 
    Task> GetFilterLevelValuesByProductIdAsync(int productId);
   
    /// 
    /// Gets filter level values by identifier
    /// 
    /// Filter level value identifiers
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level values
    /// 
    Task> GetFilterLevelValuesByIdsAsync(int[] filterLevelValueIds);

    /// 
    /// Updates the filter level value
    /// 
    /// Filter level value
    /// A task that represents the asynchronous operation
    Task UpdateFilterLevelValueAsync(FilterLevelValue filterLevelValue);

    /// 
    /// Delete filter level value
    /// 
    /// Filter level value
    /// A task that represents the asynchronous operation
    Task DeleteFilterLevelValueAsync(FilterLevelValue filterLevelValue);

    /// 
    /// Delete filter level values
    /// 
    /// Filter level values
    /// A task that represents the asynchronous operation
    Task DeleteFilterLevelValuesAsync(IList filterLevelValues);

    #region Mapping

    /// 
    /// Gets products collection by filter level value identifier
    /// 
    /// Filter level value identifier
    /// Page index
    /// Page size
    /// Store identifier; 0 to load all records
    /// Order by
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the products collection
    /// 
    Task> GetProductsByFilterLevelValueIdAsync(int filterLevelValueId,
        int pageIndex = 0,
        int pageSize = int.MaxValue,
        int storeId = 0,
        ProductSortingEnum orderBy = ProductSortingEnum.Position);

    /// 
    /// Gets filter level value product mapping collection
    /// 
    /// Filter level value identifier
    /// Page index
    /// Page size
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level value product mapping collection
    /// 
    Task> GetFilterLevelValueProductsByFilterLevelValueIdAsync(int filterLevelValueId,
        int pageIndex = 0, int pageSize = int.MaxValue);

    /// 
    /// Gets a filter level value product mapping
    /// 
    /// Filter level value product mapping identifier
    /// Page index
    /// Page size
    /// 
    /// A task that represents the asynchronous operation
    /// The task result contains the filter level value product mapping
    /// 
    Task GetFilterLevelValueProductByIdAsync(int filterLevelValueProductId);

    /// 
    /// Deletes a filter level value product mapping
    /// 
    /// Filter level value product mapping
    /// A task that represents the asynchronous operation
    Task DeleteFilterLevelValueProductAsync(FilterLevelValueProductMapping filterLevelValueProduct);

    /// 
    /// Inserts a filter level value product mapping
    /// 
    /// Filter level value product mapping
    /// A task that represents the asynchronous operation
    Task InsertProductFilterLevelValueAsync(FilterLevelValueProductMapping filterLevelValueProduct);

    #endregion
}