using FoodLabeling.Application.Contracts.Dtos.Common; using FoodLabeling.Application.Contracts.Dtos.TeamMember; using Microsoft.AspNetCore.Mvc; namespace FoodLabeling.Application.Contracts.IServices; public interface ITeamMemberAppService { /// /// 成员分页列表。数据范围:系统管理员(admin / 超管)可查全部成员;其它账号仅返回其 /// userlocation 绑定门店所属公司下的成员(与 partner 列表 Token 范围一致),再与 Query 筛选求交。 /// Task> GetListAsync(TeamMemberGetListInputVo input); Task GetAsync(Guid id); Task CreateAsync(TeamMemberCreateInputVo input); Task UpdateAsync(Guid id, TeamMemberUpdateInputVo input); Task DeleteAsync(Guid id); /// /// 下载 Team Member 批量导入模板(服务器 batchImportOfFiles 目录下 xlsx) /// Task DownloadTeamMemberImportTemplateAsync(); /// /// 按列表筛选条件全量导出成员为 PDF(与列表相同过滤;不分页、不限条数) /// Task ExportTeamMembersPdfAsync(TeamMemberGetListInputVo input); /// /// 批量导入成员(Excel,multipart/form-data 字段 file) /// Task ImportTeamMembersBatchAsync(TeamMemberBatchImportInputVo input); /// /// 批量编辑成员(JSON 一次提交多行) /// Task UpdateTeamMembersBulkAsync(TeamMemberBulkUpdateInputVo input); }