Exemplo n.º 1
0
        public override SummaryRepository TotalSummaryRepository()
        {
            var queryResult = DataQueryProvider
                              .CreateQuery(LOG(TOTALQueryInfo.TOTALQuery))
                              .SetParameters(QueryPARAMETERS)
                              .List()[0];


            var dataSource = queryResult as object[] ?? new[] { queryResult };


            var summaryRepositoryItemFactory = new SummaryRepositoryItemFactory(dataSource);

            return(new SummaryRepository(
                       TOTALQueryInfo.SummaryDescriptors.Select(summaryRepositoryItemFactory.Produce).ToList()
                       ));
        }
        public GroupDataItem ProduceFor(object[] groupData)
        {
            var propertyValues = groupData.Take(PropertiesCount).ToArray();

            var key = propertyValues.CalculateKey();


            var summaryRepositoryDataSource = groupData.Skip(PropertiesCount).ToArray();

            var summaryRepositoryItemFactory = new SummaryRepositoryItemFactory(summaryRepositoryDataSource);

            var summaryRepository = new SummaryRepository(
                SummaryDescriptors.Select(summaryRepositoryItemFactory.ProduceFor).ToList()
                );


            return(new GroupDataItem
            {
                Key = key,
                PropertyValues = propertyValues,
                SummaryRepository = summaryRepository
            });
        }