using System.Collections.Generic; using System.Linq; using System.Web.Mvc; using Neo.Afx.Services.Integration; using Neo.Afx.Services.Reports; using Neo.Afx.ViewModels; using Neo.LegitimateLicences.Web.Models; namespace Neo.LegitimateLicences.Web.Controllers { [Authorize] public class ReportsController : Neo.LegitimateLicences.Common.ControllerBase { public ActionResult Default() { var reportDatabase = new ReportDatabase(); var model = new ReportsModel() { UserID = Profile.UserID, UserRoles = Profile.Roles, ReportDefinitions = new ReportDatabase().GetReportDefinitions(), Lookups = GetLookups(reportDatabase, -1) }; return View("Default", model); } public ActionResult ReportDefinition(long reportDefinitionID) { var reportDatabase = new ReportDatabase(); var model = new ReportsDefinitionModel() { UserID = Profile.UserID, UserRoles = Profile.Roles, ReportDefinition = reportDatabase.GetReportDefinition(reportDefinitionID), Lookups = GetLookups(reportDatabase, reportDefinitionID) }; return View("ReportDefinition", model); } public List GetLookups(ReportDatabase reportDatabase, long reportDefinitionID) { var lookups = new List(); ////var integrationStore = new SqlIntegrationStore(); ////try ////{ //// integrationStore.Open(); //// if(reportDefinitionID > 0 && reportDatabase.GetReportDefinitionCriterias(reportDefinitionID).Count > 0) //// { //// lookups.AddRange(from criteria in reportDatabase.GetReportDefinitionCriterias(reportDefinitionID) //// where !string.IsNullOrEmpty(criteria.DataSourceName) //// select new LookupList("CaptureFieldLookup" + criteria.DataSourceName, integrationStore.GetDataEntities(criteria.DataSourceName, string.Empty))); //// } //// lookups.Add(new LookupList("ApplicationActiveWorkflows", integrationStore.GetDataEntities("ActiveWorkflows", string.Empty))); //// lookups.Add(new LookupList("ApplicationWorkflowInstanceStatus", integrationStore.GetDataEntities("WorkflowInstanceStatus", string.Empty))); //// lookups.Add(new LookupList("ApplicationWorkflowTemplateSteps", integrationStore.GetDataEntities("WorkflowTemplateSteps", string.Empty))); ////} ////finally ////{ //// integrationStore.Close(); ////} return lookups; } } }