using System.Data.Common; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using TMSDAL.DTO.TrainingProgramme; namespace TMSDAL.CustomCode.TrainingProgramme { public interface ITrainingProgrammeDAL { Task GetTrainingProgramme(int programmeId, LoginDTO loginDTO); Task> GetProgrammeSessions(int programmeId, LoginDTO loginDTO); Task> GetSessionTopics(int programmeSessionId, LoginDTO loginDTO); Task> GetProgrammePrerequisites(int programmeId, LoginDTO loginDTO); Task> GetProgrammeSkillMaps(int programmeId, LoginDTO loginDTO); Task> GetProgrammeSkillMapsForTrigger(int programmeId, int assessmentId, LoginDTO loginDTO, CancellationToken ct); Task> GetProgrammeCompetencyMaps(int programmeId, LoginDTO loginDTO); Task GetProgrammeCatalogue(byte? isActive, byte? programmeType, int? domainId, int page, int size, LoginDTO loginDTO); Task SaveTrainingProgramme(TrainingProgrammeDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task UpdateTrainingProgramme(TrainingProgrammeDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteTrainingProgramme(int programmeId, LoginDTO loginDTO); Task SaveProgrammeSession(ProgrammeSessionDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteProgrammeSessions(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task SaveSessionTopic(SessionTopicDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteSessionTopics(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeletePaperSectionsByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteAssessmentPapersByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteAssessmentQuestionsByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteAttemptResponsesByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteAssessmentAttemptsByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteSessionAssessmentsByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteAttendanceByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteInstanceSessionsByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteLmsBridgeByProgramme(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task SaveProgrammePrerequisite(ProgrammePrerequisiteDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteProgrammePrerequisites(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task SaveProgrammeSkillMap(ProgrammeSkillMapDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteProgrammeSkillMaps(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task SaveProgrammeCompetencyMap(ProgrammeCompetencyMapDTO dto, LoginDTO loginDTO, DbTransaction? tx = null); Task DeleteProgrammeCompetencyMaps(int programmeId, LoginDTO loginDTO, DbTransaction? tx = null); Task GetTrainingProgrammeList(LoginDTO loginDTO); Task GetSelectListTrainingProgramme(CriteriaDTO criteriaDTO, LoginDTO login, CancellationToken ct); } }