ILabelAppService.cs 1.25 KB
using FoodLabeling.Application.Contracts.Dtos.Common;
using FoodLabeling.Application.Contracts.Dtos.Label;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;

namespace FoodLabeling.Application.Contracts.IServices;

/// <summary>
/// 标签管理接口(美国版)
/// </summary>
public interface ILabelAppService : IApplicationService
{
    /// <summary>
    /// 按产品分页列表(一个产品展示多个标签)
    /// </summary>
    Task<PagedResultWithPageDto<LabelGetListOutputDto>> GetListAsync(LabelGetListInputVo input);

    /// <summary>
    /// 标签详情(id=LabelCode)
    /// </summary>
    Task<LabelGetOutputDto> GetAsync(string id);

    /// <summary>
    /// 新增标签
    /// </summary>
    Task<LabelGetOutputDto> CreateAsync(LabelCreateInputVo input);

    /// <summary>
    /// 编辑标签(id=LabelCode)
    /// </summary>
    Task<LabelGetOutputDto> UpdateAsync(string id, LabelUpdateInputVo input);

    /// <summary>
    /// 删除标签(逻辑删除)
    /// </summary>
    Task DeleteAsync(string id);

    /// <summary>
    /// 标签预览:解析模板 AUTO_DB/PRINT_INPUT(不做打印落库)
    /// </summary>
    Task<LabelTemplatePreviewDto> PreviewAsync(LabelPreviewResolveInputVo input);
}