using FoodLabeling.Application.Contracts.Dtos.Common; using FoodLabeling.Application.Contracts.Dtos.Group; using Microsoft.AspNetCore.Mvc; using Volo.Abp.Application.Dtos; using Volo.Abp.Application.Services; namespace FoodLabeling.Application.Contracts.IServices; /// /// 组织(Group)管理接口(fl_group) /// public interface IGroupAppService : IApplicationService { /// /// 组织分页列表(与导出使用相同筛选条件) /// /// /// 数据范围(按登录 Token): /// 管理员可见全部 Region;其它角色仅可见其 userlocation 绑定门店对应的组织(location.Partner + location.GroupNamefl_group 匹配)。 /// /// 分页与筛选;SkipCount 为页码(从 1 起) Task> GetListAsync(GroupGetListInputVo input); /// /// 组织详情 /// /// 主键(Guid,与 fl_group.Id 一致;约定路由 {id:guid},避免与 export-pdf 等路径冲突) Task GetAsync(Guid id); /// /// 新增组织 /// Task CreateAsync(GroupCreateInputVo input); /// /// 编辑组织 /// Task UpdateAsync(Guid id, GroupUpdateInputVo input); /// /// 删除组织(逻辑删除) /// Task DeleteAsync(Guid id); /// /// 按列表相同筛选条件全量导出组织(Region)为 PDF(不分页;与 相同筛选与 Token 数据范围;单次最多 5000 条) /// /// /// 与 使用同一套 BuildGroupJoinedQueryAsync(含 ResolveGroupScopeAsync),导出行集与列表一致。 /// /// Keyword、PartnerId、State、Sorting;分页字段忽略 /// application/pdf Task ExportPdfAsync(GroupGetListInputVo input); }