using MaintenanceDAL.DTO.ActivityMaterial; using GB5Shared.DTO.Framework.Login; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace MaintenanceBLL.ActivityMaterial { public interface IActivityMaterialBLL { Task GetActivityMaterial(int activityMaterialId, LoginDTO login, CancellationToken ct); Task> GetActivityMaterialListByActivity(int activityId, LoginDTO login, CancellationToken ct); /// Batch upsert — each row is independently new-or-update by its own ActivityMaterialId, matching the legacy UI's "save the whole material list for one Activity" flow. Task SaveActivityMaterialList(List activityMaterialDTOs, LoginDTO login, CancellationToken ct); Task DeleteActivityMaterial(int activityMaterialId, LoginDTO login, CancellationToken ct); } }