using GB5Shared.DTO.Framework.Login; using OKRDAL.DTOs; namespace OKRDAL.Interfaces; public interface IObjectiveDAL { Task GetObjectiveAsync(int objectiveId, LoginDTO login, CancellationToken ct); Task> GetObjectiveListAsync(int okrCycleId, int objectiveType, int ownerId, int forLevel, int forObjectId, int page, int pageSize, LoginDTO login, CancellationToken ct); Task GetObjectiveListCountAsync(int okrCycleId, int objectiveType, int ownerId, int forLevel, int forObjectId, LoginDTO login, CancellationToken ct); Task> GetObjectiveTreeAsync(int okrCycleId, LoginDTO login, CancellationToken ct); Task> GetAlignmentViewAsync(int okrCycleId, LoginDTO login, CancellationToken ct); Task SaveObjectiveAsync(ObjectiveDTO dto, LoginDTO login, CancellationToken ct); Task DeleteObjectiveAsync(int objectiveId, LoginDTO login, CancellationToken ct); Task SaveAlignmentAsync(OKRAlignmentDTO dto, LoginDTO login, CancellationToken ct); Task DeleteAlignmentAsync(int alignmentId, LoginDTO login, CancellationToken ct); Task UpdateOverallProgressAsync(int objectiveId, decimal progress, short status, LoginDTO login, CancellationToken ct); Task GetWeightedProgressAsync(int objectiveId, LoginDTO login, CancellationToken ct); }