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;
///
/// 标签管理接口(美国版)
///
public interface ILabelAppService : IApplicationService
{
///
/// 按产品分页列表(一个产品展示多个标签)。支持 GroupId / LocationId 筛选(命中 fl_label_region、fl_label_location 或 AppliedRegionType=ALL);labelTypeId 为可选筛选;出参含 locationIds、region、regionIds、appliedRegionType。
///
Task> GetListAsync(LabelGetListInputVo input);
///
/// 标签详情(id=LabelCode)。出参含 locationIds、location、appliedRegionType、region、regionIds、groupIds;locationId 为 locationIds 首项兼容字段。
///
Task GetAsync(string id);
///
/// 新增标签。Body 支持 appliedRegionType(ALL/SPECIFIED)、regionIds / groupIds(落库 fl_label_region)、locationIds(主字段,落库 fl_label_location);locationId 与 locationIds 合并;labelTypeId 可选。
///
Task CreateAsync(LabelCreateInputVo input);
///
/// 编辑标签(id=LabelCode)。适用 Region / 门店字段同 。
///
Task UpdateAsync(string id, LabelUpdateInputVo input);
///
/// 删除标签(逻辑删除)
///
Task DeleteAsync(string id);
///
/// 标签预览:解析模板 AUTO_DB/PRINT_INPUT(不做打印落库)
///
Task PreviewAsync(LabelPreviewResolveInputVo input);
}