using Data.DAO; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace data.Repository { public interface IGroupRepository { public IEnumerable GetAllGroup(); public bool AddGroup(Group group); public bool addGroupWithStudent(Group groups, IEnumerable students); public bool DeleteGroup(int groupId); public Group GetGroupWithSubjects(int groupId); public void AddStudentsToGroup(List students); public Group GetGroupById(int groupId); public Subject GetSubjectById(int subjectId); public Subject GetSubjectByName(string subjectName); public void AddSubject(Subject subject); List GetGroupSubjects(int groupId); List GetSubjectsByGroupId(int groupId); bool AddSubjectToGroup(int groupId, Subject subject); public void DeleteAllAttendances(); public void DeleteAttendancesByGroup(int groupId); void AddAttendance(Attendance attendance); Visit GetVisitById(int visitId); int GetGroupIdBySubjectName(string subjectName); public IEnumerable GetAttendances(int groupId, string subject = null, DateTime? date = null, int? studentId = null); Attendance GetAttendanceByDateStudentAndLesson(DateTime date, int studentId, int lessonNumber); void UpdateAttendance(Attendance attendance); void RemoveStudentsFromGroup(int groupId); void RemoveStudentsFromGroupByIds(int groupId, List studentIds); } }