private void GenerateMemberStatusListCsvByFilter(MemberStatusListModelFilter filter, CorporateAccount account)
        {
            _logger.Info(string.Format("Generating Member Status Report for {0}", account.Tag));

            var dataGen = new ExportableDataGenerator <MemberStatusModel, MemberStatusListModelFilter>(_eventCustomerReportingService.GetMemberStatusReport, _logger);
            var model   = dataGen.GetData(filter);

            if (model != null && model.Collection != null && model.Collection.Any())
            {
                var fileName = string.Format("WellMed_Monthly_Cumulative_Status_Report_{0}.csv", DateTime.Now.ToString("yyyyMM"));

                var csvFileName = GetCsvFileName(account, fileName);
                WriteCsv(csvFileName, model.Collection);
                if (_settings.WellmedMemberStatusReportSendToSftp)
                {
                    if (ExportReportOnWellMedSftp(fileName, csvFileName))
                    {
                        _logger.Info("File posted on client SFTP");
                    }
                    else
                    {
                        _logger.Info("File didn't posted,some error occurred.");
                    }
                }
            }
            else
            {
                _logger.Info("No records found");
            }
        }
        public string CustomerScheduleExport(CustomerScheduleModelFilter filter, long userId)
        {
            var fileName    = GetExportableFileName("CustomerSchedule");
            var csvFilePath = Path.Combine(ExportableMediaLocation.PhysicalPath, fileName);

            var dataGen = new ExportableDataGenerator <EventCustomerScheduleModel, CustomerScheduleModelFilter>(_eventCustomerReportingService.GetCustomerScheduleModel, Logger);

            var model = dataGen.GetData(filter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <CustomerScheduleModel>();

            var csvStringBuilder = _customerScheduleCsvHelper.GetPatientScheduledReport(model.Collection, exporter);

            var request = new GenericReportRequest {
                CsvFilePath = csvFilePath, Model = csvStringBuilder.ToString()
            };
            var isGenerated = _baseReportService.GetResponse(request);

            if (!isGenerated)
            {
                return("CSV File Export failed!");
            }

            return(_baseReportService.DownloadZipFile(ExportableMediaLocation, fileName, userId, Logger));
        }
Exemplo n.º 3
0
        public void CdImageStatusAsync(string id = null, CdImageStatusModelFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen =
                new ExportableDataGenerator <CdImageStatusModel, CdImageStatusModelFilter>(
                    _operationsReportingService.GetCdImageStatusmodel);

            var processmanager = new ExportableDataGeneratorProcessManager <CdImageStatusModel, CdImageStatusModelFilter>();

            processmanager.Add(id, dataGen);

            Task.Factory.StartNew(() =>
            {
                AsyncManager.Parameters["id"] = id;
                try
                {
                    AsyncManager.Parameters["model"] = dataGen.GetData(filter);
                }
                catch (Exception)
                {
                    AsyncManager.Parameters["model"] = null;
                }
                AsyncManager.OutstandingOperations.Decrement();
                Thread.Sleep(5000);
            });
        }
        private bool GenerateReport(string destinationFolder, string fileName, GiftCertificateReportFilter filter)
        {
            var completePath = Path.Combine(destinationFolder, fileName);

            var dataGen = new ExportableDataGenerator <GiftCertificateReportOptumViewModel, GiftCertificateReportFilter>(_giftCerificateOptumReportService.GetGiftCertificateOptumReport, _logger);

            var model = dataGen.GetData(filter);

            if (model != null && !model.Collection.IsNullOrEmpty())
            {
                _logger.Info("Writing Gift Certificate Report");
                var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <GiftCertificateReportOptumViewModel>();

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

                DirectoryOperationsHelper.CreateDirectoryIfNotExist(destinationFolder);

                DirectoryOperationsHelper.DeleteFileIfExist(completePath);

                _baseExportableReportHelper.GenerateCsv(completePath, exporter, model.Collection);

                _logger.Info("completed Gift Certificate Report for account tag " + filter.Tag);

                _logger.Info("Destination Path: " + completePath);

                return(true);
            }

            return(false);
        }
Exemplo n.º 5
0
        public void OutreachCallReportExport(OutreachCallReportModelFilter filter, string filePath, ILogger logger)
        {
            var dataGen = new ExportableDataGenerator <OutreachCallReportModel, OutreachCallReportModelFilter>(_callQueueService.GetOutreachCallReport, logger);

            var model = dataGen.GetData(filter);

            GenerateOutreachCallReportCsv(model.Collection, filePath, logger);
        }
Exemplo n.º 6
0
        public string ExcludedCusomerReportExport(OutboundCallQueueFilter filter, long userId)
        {
            var dataGen  = new ExportableDataGenerator <GmsExcludedCustomerViewModel, OutboundCallQueueFilter>(_excludedCustomerService.GetExcludedCustomers, Logger);
            var model    = dataGen.GetData(filter);
            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <GmsExcludedCustomerViewModel>();

            return(WriteCsv(GetExportableFileName("ExcludedCustomerReport"), exporter, model.Collection, userId));
        }
Exemplo n.º 7
0
        public string CallSkippedReportExport(CallSkippedReportFilter filter, long userId)
        {
            var dataGen  = new ExportableDataGenerator <CallSkippedReportViewModel, CallSkippedReportFilter>(_callSkippedReportService.GetCallSkippedReport, Logger);
            var model    = dataGen.GetData(filter);
            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <CallSkippedReportViewModel>();

            return(WriteCsv(GetExportableFileName("CallSkippedReport"), exporter, model.Collection, userId));
        }
Exemplo n.º 8
0
        public string CallCenterCallReportExport(CallCenterCallReportModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <CallCenterCallReportModel, CallCenterCallReportModelFilter>(_callQueueService.GetCallCenterCallReport, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvCallCenterCallReport(GetExportableFileName("CallCenterCallReport"), model.Collection, userId));
        }
        public void GetDataTester()
        {
            _eventReportingService = IoC.Resolve <IEventReportingService>();
            var dataGenerator = new ExportableDataGenerator <DetailOpenOrdersModel, DetailOpenOrderModelFilter>(_eventReportingService.GetDetailOpenOrderModel);
            var records       = dataGenerator.GetData(null);

            Assert.IsNotNull(records);
        }
        public string AppointmentBookedReportExport(AppointmentsBookedListModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <AppointmentsBookedModel, AppointmentsBookedListModelFilter>(_eventCustomerReportingService.GetAppointmentsBooked, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvAppointmentBooked(GetExportableFileName("AppointmentsBooked"), model.Collection, userId));
        }
        public string MemberStatusReportExport(MemberStatusListModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <MemberStatusModel, MemberStatusListModelFilter>(_eventCustomerReportingService.GetMemberStatusReport, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvMemberStatus(GetExportableFileName("HealthPlanMemberStatusReport"), model.Collection, userId));
        }
Exemplo n.º 12
0
        public string OutreachCallReportExport(OutreachCallReportModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <OutreachCallReportModel, OutreachCallReportModelFilter>(_callQueueService.GetOutreachCallReport, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvOutreachCallReport(GetExportableFileName("OutreachCall"), model.Collection, userId));
        }
Exemplo n.º 13
0
        public string GiftCerificateExport(GiftCertificateReportFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <GiftCertificateReportViewModel, GiftCertificateReportFilter>(_financeReportingService.GetGiftCertificateReport, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvGiftCertificate(GetExportableFileName("GiftCerificateExport"), model.Collection, userId));
        }
Exemplo n.º 14
0
        public string GapsReportExport(GapsClosureModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <GapsClosureModel, GapsClosureModelFilter>(_eventCustomersReportingService.GetGapsClosureReport, Logger);

            var model = dataGen.GetData(filter);

            return(WriteCsvGapClosureCustomer(GetExportableFileName("GapsReportExport"), model.Collection, userId));
        }
        private void GenerateLabsInboundReport(LabsInboundFilter filter)
        {
            var dataGen = new ExportableDataGenerator <LabsInboundViewModel, LabsInboundFilter>(_labsInboundReportService.GetLabsInboundReportList, _logger);
            var model   = dataGen.GetData(filter);

            var account = _corporateAccountRepository.GetById(filter.AccountId);

            if (model != null && !model.Collection.IsEmpty())
            {
                var folder = string.Format(_settings.FloridaBlueInboundReportPath, account.FolderName, DateTime.Now.ToString("yyyy-MM-dd"));

                if (!Directory.Exists(folder))
                {
                    DirectoryOperationsHelper.CreateDirectory(folder);
                }

                _logger.Info("Directory Path :" + folder);

                var fileName = _pipeDelimitedReportHelper.GetReportName(ReportType.LabsInbound);

                if (model.Collection != null && model.Collection.Any())
                {
                    var filePath = folder + "\\" + fileName + ".txt";
                    if (File.Exists(filePath))
                    {
                        _logger.Info("file Deleteing"); File.Delete(filePath);
                    }

                    _pipeDelimitedReportHelper.Write(model.Collection, folder, fileName + ".txt");

                    _logger.Info("File Generated at :" + folder + " file Name: " + fileName);

                    if (_sendReportToSftp)
                    {
                        try
                        {
                            _logger.Info("Sending file to SFTP.");

                            var destinationPath = _destinationSftpPath + "\\" + account.FolderName + "\\Download\\Reports";
                            SendFilesToSftp(Path.Combine(folder, fileName), destinationPath, fileName);

                            _logger.Info("File sent to SFTP.");
                        }
                        catch (Exception ex)
                        {
                            _logger.Info("Error sending file to SFTP.");
                            _logger.Error("Message : " + ex.Message);
                            _logger.Error("Stack Trace : " + ex.StackTrace);
                        }
                    }
                }
            }
            else
            {
                _logger.Info("No record found for " + account.Tag);
            }
        }
Exemplo n.º 16
0
        public string EventArchiveStatsExport(EventArchiveStatsFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <EventArchiveStatsViewModel, EventArchiveStatsFilter>(_eventArchiveStatsService.GetEventArchiveStats, Logger);

            var model = dataGen.GetData(filter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <EventArchiveStatsViewModel>();

            return(WriteCsv(GetExportableFileName("EventArchiveStats"), exporter, model.Collection, userId));
        }
Exemplo n.º 17
0
        public string CustomerWithNoEventsInAreaReportExport(CustomerWithNoEventsInAreaReportModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <CustomerWithNoEventsInAreaReportModel, CustomerWithNoEventsInAreaReportModelFilter>(_callQueueService.GetCustomerWithNoEventsInArea, Logger);

            var model = dataGen.GetData(filter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <CustomerWithNoEventsInAreaReportModel>();

            return(WriteCsv(GetExportableFileName("CustomerWithNoEventsInAreaReport"), exporter, model.Collection, userId));
        }
Exemplo n.º 18
0
        public string DisqualifiedTestReportExport(DisqualifiedTestReportFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <DisqualifiedTestReportViewModel, DisqualifiedTestReportFilter>(_eventCustomerQuestionAnswerServcie.GetDisqualifiedTestReport, Logger);

            var model = dataGen.GetData(filter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <DisqualifiedTestReportViewModel>();

            return(WriteCsv(GetExportableFileName("DisqualifiedTestReport"), exporter, model.Collection, userId));
        }
        public string TestBookedReportExport(TestsBookedListModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <TestsBookedModel, TestsBookedListModelFilter>(_eventCustomerReportingService.GetTestsBooked, Logger);

            var model = dataGen.GetData(filter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <TestsBookedModel>();

            return(WriteCsv(GetExportableFileName("TestBookedReport"), exporter, model.Collection, userId));
        }
        public string PcpTrackingReportExport(PcpTrackingReportFilter pcpTrackingReportFilter, long userId)
        {
            var dataGen = new ExportableDataGenerator <PcpTrackingReportViewModel, PcpTrackingReportFilter>(_pcpTrackingReportService.GetPcpTrackingReport, Logger);

            var model = dataGen.GetData(pcpTrackingReportFilter);

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <PcpTrackingReportViewModel>();

            return(WriteCsv(GetExportableFileName("PcpTrackingReport"), exporter, model.Collection, userId));
        }
        public string CustomerReportExport(CustomerExportListModelFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <CustomerExportModel, CustomerExportListModelFilter>(_eventCustomerReportingService.GetCustomersForExport, Logger);

            var model = dataGen.GetData(filter);

            /*var exporter = ExportableDataGeneratorProcessManager<ViewModelBase, ModelFilterBase>.GetCsvExporter<CustomerExportModel>();*/

            return(WriteCsvForCustomerExport(GetExportableFileName("CustomerExport"), model.Collection, userId));
        }
Exemplo n.º 22
0
        private void MemberReportForCustomerNoTags(CorporateAccount account, DateTime dateFrom, DateTime dateTo, string directoryPath, IEnumerable <long> shippintOptionId)
        {
            var fileName = string.Format("MemberReport_{0}.csv", dateTo.ToString("yyyyMMdd"));

            var tagToExlude = new List <string>();

            if (!_bcbsMiGapPatinetTags.IsNullOrEmpty())
            {
                tagToExlude.AddRange(_bcbsMiGapPatinetTags);
            }

            if (!_bcbsMiRiskPatientTags.IsNullOrEmpty())
            {
                tagToExlude.AddRange(_bcbsMiRiskPatientTags);
            }

            var filter = new MemberResultMailedReportFilter
            {
                DateFrom     = dateFrom,
                DateTo       = dateTo,
                HealthPlanId = account.Id,
                CustomTags   = tagToExlude.ToArray(),
                ExcludeCustomerWithCustomTag = true,
                ShippingOptions = shippintOptionId,
                Tag             = account.Tag
            };

            _logger.Info("Generating MemberReport for " + account.Tag);

            var dataGen = new ExportableDataGenerator <BcbsMiMemberResultMailedReportViewModel, MemberResultMailedReportFilter>(_bcbsMiMemberResultMailedReportService.GetBcbsMiMemberResultMailedReport, _logger);

            var model = dataGen.GetData(filter);

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

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

                if (File.Exists(directoryPath + fileName))
                {
                    File.Delete(directoryPath + fileName);
                }

                _baseExportableReportHelper.GenerateCsv(directoryPath + fileName, exporter, model.Collection);

                _logger.Info("Destination file " + directoryPath + fileName);
            }
            else
            {
                _logger.Info("No Record Found for Tag" + account.Tag);
            }

            _logger.Info("Completed MemberReport for " + account.Tag);
        }
Exemplo n.º 23
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));
        }
Exemplo n.º 24
0
        public string CallQueueCustomersReportExport(OutboundCallQueueFilter filter, long userId)
        {
            var dataGen = new ExportableDataGenerator <CallQueueCustomersReportModel, OutboundCallQueueFilter>(_callQueueCustomerReportService.GetCallQueueCustomers, Logger);

            var model     = dataGen.GetData(filter);
            var listModel = model as CallQueueCustomersReportModelListModel;

            listModel = listModel ?? new CallQueueCustomersReportModelListModel();

            var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <CallQueueCustomersReportModel>();

            var fileName = "CallQueueCustomers_" + listModel.HealthPlanName + "_" + listModel.CallQueueName + (model.Filter.EventId > 0 ? "_" + listModel.Filter.EventId : "");

            return(WriteCsv(GetExportableFileName(fileName), exporter, model.Collection, userId));
        }
Exemplo n.º 25
0
        public void PollForDiabeticRetinopathyParserlog()
        {
            try
            {
                if (DateTime.Today.DayOfWeek != _dayOfWeek)
                {
                    _logger.Info(string.Format("todays day : {0}, export set to run on {1}", DateTime.Today.DayOfWeek, _dayOfWeek));
                    return;
                }

                var fromDate = DateTime.Today.AddDays(-1 * _numberOfDays);
                var toDate   = DateTime.Today;

                _logger.Info("Diabetic Retinopathy Parser Log Report Started");
                var filter = new DiabeticRetinopathyParserlogListModelFilter
                {
                    DateFrom = fromDate,
                    DateTo   = toDate
                };

                _logger.Info(string.Format("Generating report for filter diabetic retinopathy parser log : DateFrom: {0}, DateTo {1} ", filter.DateFrom, filter.DateTo));


                var dataGen = new ExportableDataGenerator <DiabeticRetinopathyParserlogViewModel, DiabeticRetinopathyParserlogListModelFilter>(_diabeticRetinopathyParserlogService.GetDiabeticRetinopathyParserlog, _logger);
                var model   = dataGen.GetData(filter);

                if (model != null)
                {
                    var fileName = GetCsvFileName(filter);

                    var exporter = ExportableDataGeneratorProcessManager <ViewModelBase, ModelFilterBase> .GetCsvExporter <DiabeticRetinopathyParserlogViewModel>();

                    if (model.Collection != null && model.Collection.Any())
                    {
                        _baseExportableReportHelper.GenerateCsv(fileName, exporter, model.Collection);
                    }
                }
                _logger.Info(string.Format("Report Generation Completed. "));
            }
            catch (Exception ex)
            {
                _logger.Error("Some Error Exception Occured while Generating Report");
                _logger.Error("Message: " + ex.Message);
                _logger.Error("StackTrace: " + ex.StackTrace);

                _logger.Error(string.Format("Report Generation Completed  "));
            }
        }
Exemplo n.º 26
0
        public void PreAssessmentReportAsync(string id = null, PreAssessmentReportFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen = new ExportableDataGenerator <PreAssessmentReportViewModel, PreAssessmentReportFilter>(_preAssessmentReportingService.GetPreAssessmentReport);

            var processmanager = new ExportableDataGeneratorProcessManager <PreAssessmentReportViewModel, PreAssessmentReportFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }
Exemplo n.º 27
0
        public void OutreachCallReportAsync(string id = null, OutreachCallReportModelFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen = new ExportableDataGenerator <OutreachCallReportModel, OutreachCallReportModelFilter>(_callQueueService.GetOutreachCallReport);

            var processmanager = new ExportableDataGeneratorProcessManager <OutreachCallReportModel, OutreachCallReportModelFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }
Exemplo n.º 28
0
        public void ExcludedCustomersAsync(string id = null, OutboundCallQueueFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen = new ExportableDataGenerator <GmsExcludedCustomerViewModel, OutboundCallQueueFilter>(_gmsExcludedCustomerService.GetExcludedCustomers);

            var processmanager = new ExportableDataGeneratorProcessManager <GmsExcludedCustomerViewModel, OutboundCallQueueFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }
Exemplo n.º 29
0
        public void SearchHospitalFacilityEventsAsync(string id = null, HospitalPartnerEventListModelFilter filter = null)
        {
            if (id == null)
            {
                return;
            }

            AsyncManager.OutstandingOperations.Increment();
            var dataGen = new ExportableDataGenerator <HospitalPartnerEventViewModel, HospitalPartnerEventListModelFilter>(_hospitalPartnerService.GetHospitalFacilityEvents);

            var processmanager = new ExportableDataGeneratorProcessManager <HospitalPartnerEventViewModel, HospitalPartnerEventListModelFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }
Exemplo n.º 30
0
        public void StaffEventScheduleAsync(string id = null, EventStaffAssignmentListModelFilter filter = null)
        {
            if (id == null)
            {
                return;
            }
            AsyncManager.OutstandingOperations.Increment();
            filter.UserSessionModel = _sessionContext.UserSession;              //used to make filter

            var dataGen        = new ExportableDataGenerator <StaffEventSchedulingModel, EventStaffAssignmentListModelFilter>(_staffEventScheduleExportService.GetStaffScheduleForCsvExport);
            var processmanager = new ExportableDataGeneratorProcessManager <StaffEventSchedulingModel, EventStaffAssignmentListModelFilter>();

            processmanager.Add(id, dataGen);

            GetNewProcessStarted(filter, dataGen, id);
        }