using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using PERMDAL.DTOs; namespace PERMDAL.Interfaces; public interface IAppraisalTypeDAL { Task GetAppraisalTypeAsync(int id, LoginDTO login, CancellationToken ct); Task> GetAppraisalTypeKRAsAsync(int appraisalTypeId, LoginDTO login, CancellationToken ct); Task> GetMeasuresForKRAsAsync(IEnumerable kraIds, LoginDTO login, CancellationToken ct); Task> GetAppraisalTypeListAsync(short? status, int page, int pageSize, LoginDTO login, CancellationToken ct); Task> GetAppraisalTypeSelectListAsync(CriteriaDTO criteriaDTO, LoginDTO login, CancellationToken ct); Task InsertAppraisalTypeAsync(AppraisalTypeDTO dto, LoginDTO login, CancellationToken ct); Task UpdateAppraisalTypeAsync(AppraisalTypeDTO dto, LoginDTO login, CancellationToken ct); Task DeleteAppraisalTypeKRAsAndMeasuresAsync(int appraisalTypeId, LoginDTO login, CancellationToken ct); Task InsertKRAAsync(AppraisalTypeKRADTO kra, int appraisalTypeId, LoginDTO login, CancellationToken ct); Task InsertMeasureAsync(AppraisalTypeMeasureDTO measure, int appraisalTypeKRAId, LoginDTO login, CancellationToken ct); Task DeleteAppraisalTypeAsync(int id, LoginDTO login, CancellationToken ct); Task CodeExistsAsync(string code, int excludeId, LoginDTO login, CancellationToken ct); }