public ILARSStandardFunding GetStandardFundingFor(int standardCode, DateTime startDate)
        {
            var standard = _larsData.GetStandardFor(standardCode);

            return(standard?.StandardsFunding
                   .NullSafeWhere(sf => _dateTimeQueryService.IsDateBetween(startDate, sf.EffectiveFrom, sf.EffectiveTo ?? DateTime.MaxValue))
                   .OrderBy(x => x.EffectiveTo) // get the earliest closure first
                   .FirstOrDefault());
        }
        public bool LARSConditionMet(int stdCode, DateTime learnStartDate)
        {
            var larsStandard = _larsDataService.GetStandardFor(stdCode);

            if (larsStandard != null)
            {
                return(learnStartDate > larsStandard.LastDateStarts);
            }

            return(false);
        }
        public bool LARSConditionMet(int stdCode, DateTime learnStartDate)
        {
            var larsStandard = _larsDataService.GetStandardFor(stdCode);

            if (larsStandard != null)
            {
                return(larsStandard.EffectiveTo.HasValue && learnStartDate > larsStandard.EffectiveTo);
            }

            return(false);
        }