Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Ensure.Argument.NotNull(template);
- var accountStateCode = UserBase.GetAccountStateCode(template.QueueAccountState);
- var since = DateTime.Today.AddDays(-template.QueueDays);
- var users = _userRepo.AllIncluding(u => u.SentEmails)
- .Where(u => u.AccountStateCode == accountStateCode
- && u is Customer
- && !u.SentEmails.Select(s => s.EmailTemplateId).Contains(template.Id));
- switch (template.QueueAfter)
- {
- case QueueAfter.RegistrationDate:
- users = users.Where(ud => ud.RegisteredOn <= since);
- break;
- default:
- throw new Exception("Geen QueueAfter ingevuld.");
- }
- return users.Select(user => user as Customer).ToList();
Advertisement
Add Comment
Please, Sign In to add comment