Пример #1
0
        public static void BuildReport(IList <Record> records, IList <Workout> workouts, ExcelWorkbook workbook, Settings.Settings settings, IEnumerable <ExcelWorksheet> customSheets)
        {
            var edt  = DateTimeZone.ForOffset(Offset.FromHours(-5));
            var zone = edt;

            BuilderFactory.GetBuilders(settings, zone, records, workouts)
            .Select(b => new { b.sheetName, b.builder })
            .AsParallel().AsOrdered()
            .Select(b => new { b.sheetName, data = GetData(b.builder) })
            .AsSequential()
            .ToList().ForEach(s =>
            {
                var sheet     = workbook.Worksheets.Add(s.sheetName);
                var wroteData = WriteData(sheet, s.data);

                if (settings.OmitEmptySheets && !wroteData)
                {
                    workbook.Worksheets.Delete(sheet);
                }
            });

            workbook.PlaceCustomSheets(
                settings.CustomSheetsPlacement,
                customSheets,
                SheetNames.Summary);
        }
Пример #2
0
        private static TestObjectFactory CreateTestObjectFactory()
        {
            var builderFactory = new BuilderFactory();

            builderFactory.AddToFront <EntityParentBackreferenceValueBuilder>();
            builderFactory.AddToFront <FakeEdFiTypeValueBuilder>();
            builderFactory.AddToFront <FakeEdFiDescriptorValueBuilder>();
            builderFactory.AddToFront <FakePersonIdentifierValueBuilder>();
            StringValueBuilder.GenerateEmptyStrings = false;
            StringValueBuilder.GenerateNulls        = false;

            var testObjectFactory = new TestObjectFactory(
                builderFactory.GetBuilders(),
                new SystemActivator(),
                new CustomAttributeProvider());

            return(testObjectFactory);
        }