private void WriteReferralsToSheet(OpportunityReportDto dto, OpenXmlElement sheetData)
        {
            var rowIndex = 3;

            foreach (var referral in dto.ReferralItems)
            {
                var row = new Row {
                    RowIndex = (uint)rowIndex
                };

                row.AppendChild(SpreadsheetExtensions.CreateTextCell(1, rowIndex, referral.Workplace));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(2, rowIndex, referral.JobRole));

                row.AppendChild(int.TryParse(referral.PlacementsDetail, out var placements)
                    ? SpreadsheetExtensions.CreateTextCell(3, rowIndex, placements)
                    : SpreadsheetExtensions.CreateTextCell(3, rowIndex, referral.PlacementsDetail));

                row.AppendChild(SpreadsheetExtensions.CreateTextCell(4, rowIndex, referral.ProviderNameForReport));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(5, rowIndex, referral.ProviderVenueTownAndPostcode));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(6, rowIndex, $"{referral.DistanceFromEmployer:#0.0} miles"));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(7, rowIndex, referral.PrimaryContact));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(8, rowIndex, referral.PrimaryContactEmail));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(9, rowIndex, referral.PrimaryContactPhone));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(10, rowIndex, referral.SecondaryContact));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(11, rowIndex, referral.SecondaryContactEmail));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(12, rowIndex, referral.SecondaryContactPhone));

                sheetData.AppendChild(row);
                rowIndex++;
            }
        }
Example #2
0
        private void WriteProvidersToSheet(ProviderProximityReportDto dto, OpenXmlElement sheetData)
        {
            var rows  = sheetData.Descendants <Row>().ToList();
            var cells = rows[0].Descendants <Cell>().ToList();

            var rowIndex = 3;

            if (dto.SkillAreas.Any())
            {
                var skillsHeaderBuilder = new StringBuilder();

                for (var i = 0; i < dto.SkillAreas.Count; i++)
                {
                    skillsHeaderBuilder.Append(dto.SkillAreas[i]);
                    if (i < dto.SkillAreas.Count - 1)
                    {
                        skillsHeaderBuilder.Append("; ");
                    }
                }

                cells[2].UpdateTextCell(skillsHeaderBuilder.ToString());

                rowIndex = 5;
                cells    = rows[1].Descendants <Cell>().ToList();
            }

            cells[2].UpdateTextCell($"Distance from {dto.Postcode}");

            foreach (var provider in dto.Providers)
            {
                foreach (var route in provider.Routes)
                {
                    foreach (var qualification in route.QualificationShortTitles)
                    {
                        var row = new Row {
                            RowIndex = (uint)rowIndex
                        };

                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(1, rowIndex, provider.ProviderName));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(2, rowIndex,
                                                                             $"{provider.ProviderVenueTown} {provider.ProviderVenuePostcode}"));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(3, rowIndex, $"{provider.Distance:#0.0} miles"));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(4, rowIndex, route.RouteName));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(5, rowIndex, qualification));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(6, rowIndex, provider.PrimaryContact));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(7, rowIndex, provider.PrimaryContactEmail));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(8, rowIndex, provider.PrimaryContactPhone));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(9, rowIndex, provider.SecondaryContact));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(10, rowIndex, provider.SecondaryContactEmail));
                        row.AppendChild(SpreadsheetExtensions.CreateTextCell(11, rowIndex, provider.SecondaryContactPhone));

                        sheetData.AppendChild(row);
                        rowIndex++;
                    }
                }
            }
        }
Example #3
0
        /// <summary>
        ///     Determines whether [is allowed extension] [the specified extension].
        /// </summary>
        /// <param name="extension">The extension.</param>
        /// <param name="fileType">Type of the file.</param>
        /// <returns></returns>
        /// <createdOn>1/27/2016 8:00 AM</createdOn>
        /// <exception cref="System.ArgumentOutOfRangeException">null</exception>
        public static bool IsAllowedExtension(string extension, FileType fileType = FileType.Image)
        {
            var isAllowed = false;

            switch (fileType)
            {
            case FileType.Image:
                isAllowed = ImageExtensions.Contains(extension);
                break;

            case FileType.Document:
                isAllowed = DocumentExtensions.Contains(extension);
                break;

            case FileType.Presentation:
                isAllowed = PresentationExtensions.Contains(extension);
                break;

            case FileType.Spreadsheet:
                isAllowed = SpreadsheetExtensions.Contains(extension);
                break;

            case FileType.CompressedFile:
                isAllowed = CompressedFileExtensions.Contains(extension);
                break;

            case FileType.Website:
                isAllowed = WebsiteExtensions.Contains(extension);
                break;

            case FileType.Sound:
                isAllowed = SoundExtensions.Contains(extension);
                break;

            case FileType.Video:
                isAllowed = VideoExtensions.Contains(extension);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(fileType), fileType, null);
            }

            return(isAllowed);
        }
        private void WriteProvisionGapsToSheet(OpportunityReportDto dto, OpenXmlElement sheetData)
        {
            var rowIndex = 3;

            foreach (var provisionGap in dto.ProvisionGapItems)
            {
                var row = new Row {
                    RowIndex = (uint)rowIndex
                };

                row.AppendChild(SpreadsheetExtensions.CreateTextCell(1, rowIndex, provisionGap.Workplace));
                row.AppendChild(SpreadsheetExtensions.CreateTextCell(2, rowIndex, provisionGap.JobRole));
                row.AppendChild(int.TryParse(provisionGap.PlacementsDetail, out var placements)
                    ? SpreadsheetExtensions.CreateTextCell(3, rowIndex, placements)
                    : SpreadsheetExtensions.CreateTextCell(3, rowIndex, provisionGap.PlacementsDetail));

                row.AppendChild(SpreadsheetExtensions.CreateTextCell(4, rowIndex, provisionGap.Reason));

                sheetData.AppendChild(row);
                rowIndex++;
            }
        }