using System.Collections.Generic; using System.Linq; using Neo.Afx.ComponentModel; namespace Neo.Afx.Services.Reports { /// /// The Report database. /// public class ReportDatabase : Database { /// /// Initializes a new instance of the class. /// public ReportDatabase() : base(new ReportContext()) { } #region GetReportDefinitions /// /// Get a list of all report definitions /// /// A list of all report definitions with Group and Securities included public List GetReportDefinitions() { return (from q in Context.ReportDefinitions.Include("Group") where !q.IsCancelled orderby q.Title select q).ToList(); } /// /// Gets the report definitions. /// /// The report group ID. /// public List GetReportDefinitions(int reportGroupID) { return (from q in Context.ReportDefinitions.Include("Group") where !q.IsCancelled && q.ReportGroupID == reportGroupID orderby q.Title select q).ToList(); } #endregion #region GetReportDefinition /// /// Get a report definition /// public ReportDefinition GetReportDefinition(long reportDefinitionID) { var rd = (from q in Context.ReportDefinitions.Include("Group") where !q.IsCancelled && q.ReportDefinitionID == reportDefinitionID select q).FirstOrDefault(); return rd; } #endregion ////#region GetReportDefinitionCriterias /////// /////// Gets the report definition criterias. /////// /////// A list of all report definitions criterias ////public List GetReportDefinitionCriterias(long reportDefinitionID) ////{ //// return (from q in Context.ReportDefinitionCriterias //// where !q.IsCancelled //// && q.ReportDefinitionID == reportDefinitionID //// orderby q.OrderBy //// select q).ToList(); ////} ////#endregion #region GetReportDefinitionWithServer /// /// Get a report definition /// public ReportDefinition GetReportDefinitionWithServer(long reportDefinitionID) { return (from q in Context.ReportDefinitions.Include("Group").Include("Server") where !q.IsCancelled && q.ReportDefinitionID == reportDefinitionID select q).FirstOrDefault(); } #endregion } }