public HousekeeperHelper2( IHousekeeperHelperRepository houseKeeperRepository, IStatementGenerator statementGenerator, IEmailSender emailSender, IXtraMessageBox xtraMessageBox) { _houseKeeperRepository = houseKeeperRepository; _statementGenerator = statementGenerator; _emailSender = emailSender; _xtraMessageBox = xtraMessageBox; }
public static void SendStatementEmails(DateTime statementDate, IUnitOfWork _unitOfWork, IHousekeeperHelperRepository _repository) { var housekeepers = _unitOfWork.Query <Housekeeper>(); foreach (var housekeeper in housekeepers) { if (string.IsNullOrWhiteSpace(housekeeper.Email)) { continue; } var statementFilename = _repository.SaveStatement(housekeeper.Oid, housekeeper.FullName, statementDate); if (string.IsNullOrWhiteSpace(statementFilename)) { continue; } var emailAddress = housekeeper.Email; var emailBody = housekeeper.StatementEmailBody; try { _repository.EmailFile(emailAddress, emailBody, statementFilename, string.Format("Sandpiper Statement {0:yyyy-MM} {1}", statementDate, housekeeper.FullName)); } catch (Exception e) { XtraMessageBox.Show(e.Message, string.Format("Email failure: {0}", emailAddress), MessageBoxButtons.OK); } } }