public void SaveInspireMonitoring(Models.Register inspireStatusRegister)
        {
            InspireMonitoring monitoring = new InspireMonitoring(inspireStatusRegister.RegisterItems);

            _dbContext.InspireMonitorings.Add(monitoring);
            _dbContext.SaveChanges();
        }
        public InspireReportViewModel GetInspireReportViewModel(Models.Register register, FilterParameters filter)
        {
            InspireMonitoring currentInspireMonitoring = null;

            if (filter.SelectedInspireMonitoringReport != null)
            {
                currentInspireMonitoring = filter.SelectedInspireMonitoringReport == "today" ?
                                           GetTodaysInspireMonitroingData(register) : GetInspireMonitroingDataById(filter.SelectedInspireMonitoringReport);
            }
            else
            {
                currentInspireMonitoring = filter.SelectedInspireMonitoringReport == "today" ?
                                           GetTodaysInspireMonitroingData(register) : GetLatestInspireMonitroingData();
            }

            if (filter.Compare)
            {
                var comparableInspireMonitoring = filter.SelectedComparableCandidate == "today" ?
                                                  GetTodaysInspireMonitroingData(register) : GetInspireMonitroingDataById(filter.SelectedComparableCandidate);

                return
                    (new InspireReportViewModel(currentInspireMonitoring, comparableInspireMonitoring,
                                                GetInspireMonitorings(register)));
            }

            if (filter.SelectedInspireMonitoringReport != null)
            {
                return
                    (new InspireReportViewModel(currentInspireMonitoring, null, GetInspireMonitorings(register)));
            }

            return(new InspireReportViewModel(currentInspireMonitoring, null, GetInspireMonitorings(register)));
        }
        public InspireMonitoring GetTodaysInspireMonitroingData(Models.Register inspireRegister)
        {
            InspireMonitoring monitoring = new InspireMonitoring(inspireRegister.RegisterItems);

            monitoring.Id = Guid.Empty;

            return(monitoring);
        }
        public InspireMonitoring GetLatestInspireMonitroingData()
        {
            var queryResults = from o in _dbContext.InspireMonitorings
                               select o;

            InspireMonitoring latestMonitoring = queryResults?.OrderByDescending(o => o.Date).FirstOrDefault();

            return(latestMonitoring);
        }