Пример #1
0
        private DateTime DateFromReport(string path)
        {
            var history = PreviousReport.History(path);

            if (history.Count < 1)
            {
                return(default(DateTime));                    // No history makes this a new bill
            }
            string str_date = Regex.Replace(history[1].Trim(), @"<br /> (\w{3} \d{1,2} \d{4}).*", "$1");

            DateTime.TryParse(str_date, out DateTime date_result);
            return(date_result);
        }
Пример #2
0
        private List <string> SelectAllBills()
        {
            LogThis("Regenerating reports for all bills.");
            var           result          = new List <string>();
            List <string> folder_contents = Directory.EnumerateFiles(Config.Instance.HtmlFolder, "*.html").ToList();

            foreach (var path in folder_contents)
            {
                if (!path.Contains("Weekly"))
                {
                    result.Add(Path.GetFileNameWithoutExtension(path));
                    var bill     = Path.GetFileNameWithoutExtension(path);
                    var position = PreviousReport.Position(path);
                }
            }
            return(result);
        }
Пример #3
0
        private List <string> RecognizeChangedBills()
        {
            LogThis("Regenerating reports for those bills that have changed.");
            var           result          = new List <string>();
            List <string> folder_contents = Directory.EnumerateFiles(Config.Instance.HtmlFolder, "*.html").ToList();

            foreach (var path in folder_contents)
            {
                if (!path.Contains("Weekly"))
                {
                    DateTime latest_report_date  = DateFromReport(path);
                    DateTime latest_history_date = DateFromHistoryTable(path);
                    if (latest_history_date > latest_report_date)
                    {
                        result.Add(Path.GetFileNameWithoutExtension(path));
                        var bill     = Path.GetFileNameWithoutExtension(path);
                        var position = PreviousReport.Position(path);
                        var message  = $"{bill} ({position[0].Trim()}) has changed.";
                        LogThis(message);
                    }
                }
            }
            return(result);
        }