public GridJsonNetJObjectResult <MaintenanceRecord> AllMaintenanceRecordsGridJsonData()
        {
            var stormwaterJurisdictionIDsPersonCanView = CurrentPerson.GetStormwaterJurisdictionIDsPersonCanView();
            var customAttributeTypes = HttpRequestStorage.DatabaseEntities.CustomAttributeTypes.Include(x => x.TreatmentBMPTypeCustomAttributeTypes).Where(x => x.CustomAttributeTypePurposeID == CustomAttributeTypePurpose.Maintenance.CustomAttributeTypePurposeID).ToList();
            var maintenanceRecords   = HttpRequestStorage.DatabaseEntities.MaintenanceRecords
                                       .Include(x => x.FieldVisit)
                                       .Include(x => x.FieldVisit.PerformedByPerson)
                                       .Include(x => x.TreatmentBMP)
                                       .Include(x => x.TreatmentBMP.StormwaterJurisdiction)
                                       .Include(x => x.TreatmentBMPType)
                                       .Include(x => x.MaintenanceRecordObservations)
                                       .Include(x => x.MaintenanceRecordObservations.Select(y => y.MaintenanceRecordObservationValues))
                                       .Where(x => stormwaterJurisdictionIDsPersonCanView.Contains(x.TreatmentBMP.StormwaterJurisdictionID)).ToList();
            var gridSpec = new MaintenanceRecordGridSpec(CurrentPerson, customAttributeTypes);
            var gridJsonNetJObjectResult =
                new GridJsonNetJObjectResult <MaintenanceRecord>(maintenanceRecords, gridSpec);

            return(gridJsonNetJObjectResult);
        }
Esempio n. 2
0
        public IndexViewData(Person currentPerson, Models.NeptunePage neptunePage,
                             IEnumerable <Models.CustomAttributeType> maintenanceAttributeTypes, IQueryable <Models.TreatmentBMPAssessmentObservationType> allObservationTypes)
            : base(currentPerson, neptunePage, NeptuneArea.OCStormwaterTools)
        {
            PageTitle  = "All Field Records";
            EntityName = "Field Records";
            GridSpec   = new FieldVisitGridSpec(currentPerson, false)
            {
                ObjectNameSingular  = "Field Visit",
                ObjectNamePlural    = "Field Visits",
                SaveFiltersInCookie = true
            };
            GridName    = "fieldVisitsGrid";
            GridDataUrl = SitkaRoute <FieldVisitController> .BuildUrlFromExpression(j => j.AllFieldVisitsGridJsonData());

            TreatmentBMPAssessmentGridSpec = new TreatmentBMPAssessmentGridSpec(currentPerson, allObservationTypes)
            {
                ObjectNameSingular  = "Assessment",
                ObjectNamePlural    = "Assessments",
                SaveFiltersInCookie = true
            };
            TreatmentBMPAssessmentGridName    = "assessmentsGrid";
            TreatmentBMPAssessmentGridDataUrl =
                SitkaRoute <AssessmentController> .BuildUrlFromExpression(x => x.TreatmentBMPAssessmentsGridJsonData());

            MaintenanceRecordGridSpec = new MaintenanceRecordGridSpec(currentPerson, maintenanceAttributeTypes)
            {
                ObjectNameSingular  = "Maintenance Record",
                ObjectNamePlural    = "Maintenance Records",
                SaveFiltersInCookie = true
            };
            MaintenanceRecordGridName    = "maintenanceRecordsGrid";
            MaintenanceRecordGridDataUrl =
                SitkaRoute <MaintenanceRecordController> .BuildUrlFromExpression(x => x.AllMaintenanceRecordsGridJsonData());

            HasManagePermissions          = new JurisdictionManageFeature().HasPermissionByPerson(currentPerson);
            BulkUploadTrashScreenVisitUrl =
                SitkaRoute <FieldVisitController> .BuildUrlFromExpression(x => x.BulkUploadTrashScreenVisit());
        }