using GB5Shared.DTO.Framework.Login; using OKRDAL.DTOs; namespace OKRDAL.Interfaces; public interface IGoalDAL { Task GetGoalAsync(int goalId, LoginDTO login, CancellationToken ct); Task> GetGoalListAsync(int okrCycleId, int objectiveId, int employeeId, int status, int page, int pageSize, LoginDTO login, CancellationToken ct); Task GetGoalListCountAsync(int okrCycleId, int objectiveId, int employeeId, int status, LoginDTO login, CancellationToken ct); Task SaveGoalAsync(GoalDTO dto, LoginDTO login, CancellationToken ct); Task DeleteGoalAsync(int goalId, LoginDTO login, CancellationToken ct); Task UpdateGoalProgressAsync(int goalId, decimal progress, decimal currentValue, short confidence, short status, LoginDTO login, CancellationToken ct); Task UpdateGoalConfidenceAsync(int goalId, short confidence, LoginDTO login, CancellationToken ct); Task GetGoalStatusAsync(int goalId, LoginDTO login, CancellationToken ct); Task GetGoalObjectiveIdAsync(int goalId, LoginDTO login, CancellationToken ct); Task> GetGoalProgressForKRAAsync(int employeeId, int okrCycleId, int kraId, LoginDTO login, CancellationToken ct); Task LinkGoalToTaskAsync(int goalId, int taskId, LoginDTO login, CancellationToken ct); Task UnlinkGoalFromTaskAsync(int goalId, int taskId, LoginDTO login, CancellationToken ct); }