コード例 #1
0
        private void timer1_Tick(object sender, ElapsedEventArgs e)
        {
            string[] filePaths        = Directory.GetFiles(sourceLocation);
            string   errorDestination = "";

            foreach (var file in filePaths)
            {
                try
                {
                    var    filename    = Path.GetFileName(file);
                    string destination = completedFileLocation + "//" + filename;
                    errorDestination = errorFileLocation + "//" + filename;

                    if (!File.Exists(destination))
                    {
                        ProcessFiles(targetLocation, file, filename);

                        File.Move(file, destination);
                    }
                    else
                    {
                        LoggerService.WriteErrorLog("Ths file already exist completed or destination folder. " + filename);
                        File.Move(file, errorDestination);
                    }
                }
                catch (Exception ex)
                {
                    LoggerService.WriteErrorLog(ex);
                    File.Move(file, errorDestination);
                }
            }

            timer1.Stop();
            System.Threading.Thread.Sleep(1000000);
            SetTimer();

            LoggerService.WriteErrorLog("File reading and exporting is completed");
        }
コード例 #2
0
 protected override void OnStop()
 {
     timer1.Enabled = false;
     LoggerService.WriteErrorLog("Test window service stopped");
 }
コード例 #3
0
        private static void ProcessFiles(string targetLocation, string file, string fileName)
        {
            FirstLabelRules.readLineStart  = false;
            FirstLabelRules.readLineEnd    = false;
            SecondLabelRules.LineItemStart = false;
            SecondLabelRules.LineItemEnd   = false;
            var finalLinesData = new List <LineItem>();

            LoggerService.WriteErrorLog("Start Reading Text File-" + fileName);

            var FirstDraft = TextReaderHelper.FirstLabelParsing(file);

            LoggerService.WriteErrorLog("FirstDraft completed -" + fileName);

            var ParentEobBlock = FirstDraft[0];

            FirstDraft.Remove(ParentEobBlock);

            LoggerService.WriteErrorLog("reading header eob data -" + fileName);

            var headerEobData = TextReaderHelper.ParseParentEob(ParentEobBlock);

            LoggerService.WriteErrorLog("header eob data completed" + fileName);

            LoggerService.WriteErrorLog("parsing second draft -" + fileName);

            var LastDraft = TextReaderHelper.SecondLabelParsing(FirstDraft);

            LoggerService.WriteErrorLog("completed second draft -" + fileName);

            var targetFilename = Path.GetFileName(file).Replace(".txt", ".xlsx");


            LastDraft.ForEach(x =>
            {
                finalLinesData.AddRange(x.LineItems);
            });

            headerEobData[0].Payer = finalLinesData.First().Payer;

            LoggerService.WriteErrorLog("Prepare list of object for export -" + fileName);


            string customParentEobExcelSavingPath = targetLocation + "\\" + "Header-" + targetFilename;

            string customExcelSavingPath = targetLocation + "\\" + targetFilename;

            LoggerService.WriteErrorLog("Export started -" + fileName);


            if (CSVExport.Contains("true"))
            {
                customParentEobExcelSavingPath = customParentEobExcelSavingPath.Replace(".xlsx", ".CSV");
                customExcelSavingPath          = customExcelSavingPath.Replace(".xlsx", ".CSV");

                ExcelExport.ToCSV(Utility.ConvertToDataTable(headerEobData), customParentEobExcelSavingPath);

                var datatable = Utility.ConvertToDataTable(finalLinesData);

                datatable.Columns.Remove("AdjustmentDescription");

                ExcelExport.ToCSV(datatable, customExcelSavingPath);
            }
            else
            {
                CreateExcelFile.CreateExcelDocument(headerEobData, customParentEobExcelSavingPath);
                CreateExcelFile.CreateExcelDocument(finalLinesData, customExcelSavingPath);
            }

            LoggerService.WriteErrorLog("Export completed- " + fileName);
        }