using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
using CmsQueryExtensions.Entitys;
using System.Linq.Expressions;
using Volo.Abp;
using Volo.Abp.Application.Services;
using Volo.Abp.Users;
namespace CMS.Plugin.PipeLineLems.Application.Contracts.Services;
///
/// 作业计划表应用服务接口
///
public interface IWorkPlanAppService : ICrudAppService
{
///
/// 克隆作业计划表
///
///
///
Task> CloneAsync(IEnumerable ids);
///
/// 删除作业计划表
///
///
///
Task DeleteManyAsync(IEnumerable ids);
///
/// 调整排序作业计划表
///
///
///
///
Task AdjustSortAsync(Guid id, int sort);
///
/// 导入作业计划表
///
///
///
Task ImportAsync(WorkPlansImportModel input, MyCurrentUser myCurrentUser);
///
/// 导出作业计划表
///
///
///
Task<(Dictionary Sheets, string FileName)> ExportAsync(GetWorkPlanInput input);
///
/// 根据条件获取作业计划表列表
///
///
///
///
Task> GetListByFilterAsync(Expression> whereConditions, CancellationToken cancellationToken = default);
///
/// 根据条件获取单个作业计划表
///
///
/// 是否查询出多条就报错
///
///
///
Task GetSingleByFilterAsync(Expression> whereConditions, bool isMultipleThrowException = false, CancellationToken cancellationToken = default);
}