Exemplo n.º 1
0
        /// <summary>
        /// Gets report based on a given set of criterias.
        /// </summary>
        /// <param name="filter"></param>
        /// <returns></returns>
        List <ReportQueryData> IReportService.GetReport(ReportFetchingFilter filter)
        {
            var reportList = reportRepository.GetReport(filter);
            List <ReportQueryData> queryResult = new List <ReportQueryData>();

            foreach (var report in reportList)
            {
                queryResult.Add(new ReportQueryData(report));
            }
            return(queryResult);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Gets a list of reports with a given set of criterias.
        /// The method checks each criteria one by one and leave unsuitable records out.
        /// </summary>
        /// <param name="filter">
        ///     A given set of criterias. Unused fields should not be modified when
        ///     initialize the object as it has the default constraints itself.
        /// </param>
        /// <returns></returns>
        List <Report> IReportRepository.GetReport(ReportFetchingFilter filter)
        {
            List <Report> resultList = dbContext.Reports //.Include(report => report.Build)
                                       .Include(r => r.Reporter)
                                       .Include(r => r.Build).ThenInclude(b => b.Product)
                                       .ToList();

            // Apply filters
            if (filter.RequiredBuildId.HasValue)
            {
                resultList = resultList.FilterReportsByBuildId(filter.RequiredBuildId.Value).ToList();
            }

            return(resultList);
        }