示例#1
0
 public ExpiredFundsService(IExpiredFunds expiredFunds, ILevyDataSession levyDataSession, ITelemetry telemetry, IEmployerPaymentDataSession employerPaymentDataSession)
 {
     _expiredFunds               = expiredFunds ?? throw new ArgumentNullException(nameof(expiredFunds));
     _levyDataSession            = levyDataSession ?? throw new ArgumentNullException(nameof(levyDataSession));
     _telemetry                  = telemetry ?? throw new ArgumentNullException(nameof(telemetry));
     _employerPaymentDataSession = employerPaymentDataSession;
 }
示例#2
0
        public static IDictionary <CalendarPeriod, decimal> GetExpiredFunds(this IExpiredFunds expiredFundsService, IDictionary <CalendarPeriod, decimal> fundsIn, IDictionary <CalendarPeriod, decimal> fundsOut, IDictionary <CalendarPeriod, decimal> expired, int expiryPeriod, DateTime today)
        {
            var currentCalendarPeriod = new CalendarPeriod(today.Year, today.Month);
            var expiringFunds         = expiredFundsService.GetExpiringFunds(fundsIn, fundsOut, expired, expiryPeriod);

            var expiredFunds = expiringFunds
                               .Where(ef => ef.Key <= currentCalendarPeriod && ef.Value >= 0 && !expired.Any(e => e.Key == ef.Key && e.Value == ef.Value))
                               .ToDictionary(e => e.Key, e => e.Value);

            return(expiredFunds);
        }
示例#3
0
 public ExpireAccountFundsCommandHandler(
     ICurrentDateTime currentDateTime,
     ILevyFundsInRepository levyFundsInRepository,
     IPaymentFundsOutRepository paymentFundsOutRepository,
     IExpiredFunds expiredFunds,
     IExpiredFundsRepository expiredFundsRepository,
     ILog logger,
     EmployerFinanceConfiguration configuration)
 {
     _currentDateTime           = currentDateTime;
     _levyFundsInRepository     = levyFundsInRepository;
     _paymentFundsOutRepository = paymentFundsOutRepository;
     _expiredFunds           = expiredFunds;
     _expiredFundsRepository = expiredFundsRepository;
     _logger        = logger;
     _configuration = configuration;
 }