Ejemplo n.º 1
0
        public string TestPerformedReportExport(TestPerformedListModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <TestPerformedViewModel, TestPerformedListModelFilter>(_testResultService.GetTestPerformed, Logger);

            var model = dataGen.GetData(filter);

            //var exporter = ExportableDataGeneratorProcessManager<ViewModelBase, ModelFilterBase>.GetCsvExporter<TestPerformedViewModel>();
            //return WriteCsv(GetExportableFileName("TestPerformed"), exporter, model.Collection, userId);
            var fileName = GetExportableFileName("TestPerformed");

            return(_testPerformedCsvExportHelper.WriteCsvTestPerformed(ExportableMediaLocation.PhysicalPath, fileName, model.Collection, userId, Logger, true));
        }
Ejemplo n.º 2
0
        public ActionResult TestPerformed(TestPerformedListModelFilter filter = null, int pageNumber = 1)
        {
            int totalRecords = 0;

            if (filter == null)
            {
                filter = new TestPerformedListModelFilter {
                    EventDateFrom = DateTime.Now.AddMonths(-1).Date, EventDateTo = DateTime.Now.Date
                }
            }
            ;

            var model = _testResultService.GetTestPerformed(pageNumber, _pageSize, filter, out totalRecords);

            if (model == null)
            {
                model = new TestPerformedListModel();
            }

            filter.EventDateFrom = filter.EventDateFrom.HasValue ? filter.EventDateFrom.Value : DateTime.Now.AddMonths(-1).Date;
            filter.EventDateTo   = filter.EventDateTo.HasValue ? filter.EventDateTo.Value : DateTime.Now;

            model.Filter = filter;

            var currentAction = ControllerContext.RouteData.Values["action"].ToString();

            Func <int, string> urlFunc =
                pn => Url.Action(currentAction, new
            {
                pageNumber = pn,
                filter.EventDateFrom,
                filter.EventDateTo,
                filter.TechnicianId,
                filter.HealthPlanId,
                filter.EventId,
                filter.Pod,
                filter.IsCorporateEvent,
                filter.IsRetailEvent,
                filter.IsHealthPlanEvent,
                filter.TestId,
                filter.IsPdfGenerated
            });

            model.PagingModel = new PagingModel(pageNumber, _pageSize, totalRecords, urlFunc);

            return(View(model));
        }
Ejemplo n.º 3
0
 public ActionResult TestPerformed(TestPerformedListModelFilter filter = null)
 {
     return(CreateExportQueue(filter, ExportableReportType.TestPerformed, _sessionContext.UserSession.CurrentOrganizationRole.OrganizationRoleUserId));
 }
Ejemplo n.º 4
0
        public void PollForTestPerformedReports()
        {
            try
            {
                if (_dayOfMonth != DateTime.Today.Day)
                {
                    _logger.Info(string.Format("Report will not be generated today as it set to {0} of every month", _dayOfMonth));
                    return;
                }

                var healthPlans = _corporateAccountRepository.GetAllHealthPlan();
                _logger.Info(string.Format("health plan count " + healthPlans.Count()));

                if (!healthPlans.Any())
                {
                    return;
                }

                _logger.Info(string.Format("destination Path for All Reports {0}", _reportDestinationPath));

                foreach (var healthPlan in healthPlans)
                {
                    try
                    {
                        var directoryPath = string.Format(_reportDestinationPath, healthPlan.Tag);

                        CreateDistinationDirectory(directoryPath);
                        var reportingMonth = DateTime.Today.AddMonths(-1);

                        var dateFrom = reportingMonth.GetFirstDayOfMonth();
                        var dateTo   = reportingMonth.GetLastDayOfMonth();

                        var fileName = string.Format("{0}_{1}_{2}.csv", healthPlan.Tag, dateFrom.ToString("MMMM"), dateFrom.ToString("yyyy"));

                        var filter = new TestPerformedListModelFilter
                        {
                            EventDateFrom = dateFrom,
                            EventDateTo   = dateTo,
                            HealthPlanId  = healthPlan.Id,
                            Tag           = healthPlan.Tag
                        };

                        _logger.Info("generating Report for " + healthPlan.Tag);

                        var dataGen = new ExportableDataGenerator <TestPerformedViewModel, TestPerformedListModelFilter>(_testResultService.GetTestPerformed, _logger);

                        var model = dataGen.GetData(filter);

                        if (model != null && !model.Collection.IsNullOrEmpty())
                        {
                            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <TestPerformedViewModel>();

                            _logger.Info("Record count" + model.Collection.Count());

                            if (File.Exists(directoryPath + fileName))
                            {
                                File.Delete(directoryPath + fileName);
                            }
                            //_baseExportableReportHelper.GenerateCsv(directoryPath + fileName, exporter, model.Collection);
                            _testPerformedCsvExportHelper.WriteCsvTestPerformed(directoryPath, fileName, model.Collection);
                        }
                        else
                        {
                            _logger.Info("No Record Found for Tag" + healthPlan.Tag);
                        }
                    }
                    catch (Exception ex)
                    {
                        _logger.Error("Some Error occurred  for Tag" + healthPlan.Tag);
                        _logger.Error("Message: " + ex.Message);
                        _logger.Error("Stack Trace: " + ex.StackTrace);
                    }
                }
            }
            catch (Exception exception)
            {
                _logger.Error("Some Error occurred  ");
                _logger.Error("Message: " + exception.Message);
                _logger.Error("Stack Trace: " + exception.StackTrace);
            }
        }