private void SaveRisingStarWinnerMemoMailMerge(WorkingDirectoryPath workingDirectoryPath, NominationList nominationList) { var mailMerge = _mailMergeFactory.GetRisingStarWinnersMemoMailMerge(nominationList); SaveAwardWinnerMemoMailMerge(workingDirectoryPath, AwardType.RisingStar, nominationList, mailMerge); }
private static void SaveAwardWinnerMemoMailMerge(WorkingDirectoryPath workingDirectoryPath, AwardType awardType, NominationList nominationList, IMailMerge mailMerge) { if (!nominationList.HasWinnersForAward(awardType)) { return; } var fileName = awardType.GetWinnersForMemoFileName(nominationList.AwardsPeriod); var filePath = workingDirectoryPath.GetFilePathForFileInDirectory(fileName, false, false); mailMerge.Execute(filePath); }
private static void SaveMemoSkeleton(WorkingDirectoryPath workingDirectoryPath) { const string memoSkeletonFileName = @"StarAwardWinnersAndNomineesForDistribution.docx"; var memoSkeletonResourceName = $@"StarFisher.Office.Word.Documents.{memoSkeletonFileName}"; var assembly = Assembly.GetExecutingAssembly(); var stream = assembly.GetManifestResourceStream(memoSkeletonResourceName); var filePath = workingDirectoryPath.GetFilePathForFileInDirectory(memoSkeletonFileName, false, false); using (stream) using (var tmpFileStream = File.Create(filePath.Value)) { stream.CopyTo(tmpFileStream); } }
private void SaveNomineeListExcelFile(WorkingDirectoryPath workingDirectoryPath, NominationList nominationList, AwardType awardType) { if (!nominationList.HasNominationsForAward(awardType)) { return; } var fileName = awardType.GetNomineesForMemoFileName(nominationList.AwardsPeriod); var filePath = workingDirectoryPath.GetFilePathForFileInDirectory(fileName, false, false); using (var excelFile = _excelFileFactory.GetNomineeListExcelFile(awardType, nominationList)) { excelFile.Save(filePath); } }
public void SaveArtifacts(WorkingDirectoryPath workingDirectoryPath, NominationList nominationList) { if (workingDirectoryPath == null) { throw new ArgumentNullException(nameof(workingDirectoryPath)); } if (nominationList == null) { throw new ArgumentNullException(nameof(nominationList)); } SaveMemoSkeleton(workingDirectoryPath); SaveStarValuesWinnersMemoMailMerge(workingDirectoryPath, nominationList); SaveNomineeListExcelFile(workingDirectoryPath, nominationList, AwardType.StarValues); SaveRisingStarWinnerMemoMailMerge(workingDirectoryPath, nominationList); SaveNomineeListExcelFile(workingDirectoryPath, nominationList, AwardType.RisingStar); }
public void Initialize(DirectoryPath starAwardsDirectoryPath, AwardsPeriod awardsPeriod, Person eiaCoChair1, Person eiaCoChair2, ICollection <Person> hrPeople, ICollection <Person> luncheonPlannerPeople, Person certificatePrinterPerson) { _starAwardsDirectoryPath = starAwardsDirectoryPath ?? throw new ArgumentNullException(nameof(starAwardsDirectoryPath)); _awardsPeriod = awardsPeriod ?? throw new ArgumentNullException(nameof(awardsPeriod)); _workingDirectoryPath = _starAwardsDirectoryPath.GetWorkingDirectory(_awardsPeriod); _eiaCoChair1 = eiaCoChair1 ?? throw new ArgumentNullException(nameof(eiaCoChair1)); _eiaCoChair2 = eiaCoChair2 ?? throw new ArgumentNullException(nameof(eiaCoChair2)); _hrPeople = hrPeople?.ToList() ?? throw new ArgumentNullException(nameof(hrPeople)); _luncheonPlannerPeople = luncheonPlannerPeople?.ToList() ?? throw new ArgumentNullException(nameof(luncheonPlannerPeople)); _certificatePrinterPerson = certificatePrinterPerson ?? throw new ArgumentNullException(nameof(certificatePrinterPerson)); var nominationListRepository = new NominationListRepository(_workingDirectoryPath); _nominationListContext = new NominationListContext(nominationListRepository, awardsPeriod.AwardCategory); IsInitialized = true; }
public NominationListRepository(WorkingDirectoryPath workingDirectoryPath) { _workingDirectoryPath = workingDirectoryPath ?? throw new ArgumentNullException(nameof(workingDirectoryPath)); }