using System; using System.Collections.Generic; using System.Data; using System.Linq; using Kreta.Core.ConnectionType; using Kreta.DataAccessManual; namespace Kreta.BusinessLogic.Helpers { public class ElearningElerhetosegHelper : LogicBase { public ElearningElerhetosegHelper(IConnectionType connectionType) : base(connectionType) { } public IEnumerable GetElearningElerhetosegList(bool isGondviselo, bool isTanulo, int role, List packages, int? gondviseloId) { var ds = Dal.CustomConnection.Run(ConnectionType, h => h.ElearningElerhetosegDal().GetElearningElerhetosegDataSet(role, packages, TanevId, IntezmenyId, isGondviselo, isTanulo, FelhasznaloId, gondviseloId)); var courseIdList = new List(); var now = DateTime.Now; foreach (var course in ds.Tables[0].AsEnumerable()) { var availabilityStartDate = course.Field("elerhetosegKezdete"); var availabilityEndDate = course.Field("elerhetosegVege") ?? now.AddYears(1); if (availabilityStartDate <= now.Date && availabilityEndDate >= now.Date) { courseIdList.Add(course.Field("azonosito")); } } return courseIdList.Distinct(); } } }