网站首页 网站源码
using System.Collections.Generic;
using System.Threading.Tasks;
using Dpz.Core.Public.ViewModel.V4;
using Dpz.Core.Web.Pager;
namespace Dpz.Core.Service.V4.Services;
public interface IPictureRecordService : ICacheService
{
/// <summary>
/// 获取所有图片标签
/// </summary>
/// <returns></returns>
Task<ICollection<string>> GetTagsAsync();
/// <summary>
/// 获取所有Banner
/// </summary>
/// <returns></returns>
Task<ICollection<VmPictureRecord>> GetBannerAsync();
/// <summary>
/// 分页获取图片信息
/// </summary>
/// <param name="tags"></param>
/// <param name="description"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
Task<IPagedList<VmPictureRecord>> GetPagesAsync(
List<string>? tags,
string? description,
int pageIndex = 1,
int pageSize = 20
);
/// <summary>
/// 获取图片信息
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task<VmPictureRecord?> GetPictureRecordAsync(string id);
/// <summary>
/// 创建一个图片记录
/// </summary>
/// <param name="pictureRecord"></param>
/// <returns></returns>
Task<VmPictureRecord> CreateRecordAsync(VmPictureRecord pictureRecord);
/// <summary>
/// 修改图片信息
/// </summary>
/// <param name="change"></param>
/// <returns></returns>
Task<VmPictureRecord?> ChangeInformationAsync(VmPictureRecordChange change);
/// <summary>
/// 删除
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
Task DeleteAsync(string id);
/// <summary>
/// 清除缓存
/// </summary>
/// <returns></returns>
Task ClearCacheAsync();
}
上述代码定义了一个名为 IPictureRecordService
的接口,主要用于处理与图片记录相关的操作。这个接口包含多个异步方法,允许调用者执行各种与图片和其元数据相关的操作。以下是每个方法的功能解释:
GetTagsAsync:
SetBannerAsync:
id
- 要设置为 Banner 的图片的唯一标识符。GetBannerAsync:
VmPictureRecord
对象的集合,表示所有 Banner 图片的信息。GetPagesAsync:
tags
- 可选的标签集合,用于过滤图片。description
- 可选的描述,用于进一步过滤。pageIndex
- 当前页码,默认为 1。pageSize
- 每页显示的记录数,默认为 20。IPagedList<VmPictureRecord>
接口的对象,包含分页的图片记录。GetPictureRecordAsync:
id
- 图片的唯一标识符。VmPictureRecord
对象,表示该 ID 对应的图片记录。CreateRecordAsync:
pictureRecord
- 包含新图片信息的 VmPictureRecord
对象。VmPictureRecord
对象。ChangeInformationAsync:
change
- 包含要更改的信息的 VmPictureRecordChange
对象。VmPictureRecord
对象,表示修改后的图片记录。DeleteAsync:
id
- 要删除的图片的唯一标识符。总体来说,这个接口提供了一系列方法,用于管理图片记录,包括获取、创建、修改和删除图片信息,以及处理与图片相关的标签和 Banner 设置。它的设计使得实现该接口的类可以方便地与图片数据进行交互,适用于需要处理图片的应用程序。