public void ProcessPendingLogs() { var db = new SySDB(); var pendingProcessLogs = db.LogFiles.Where(x => !x.ProcessDate.HasValue).ToList(); foreach (var pendingProcessLog in pendingProcessLogs) { ProcessLogFile(pendingProcessLog); } }
public IList <SensorLogDataViewModel> GetLogs() { var db = new SySDB(); var dateFrom = new DateTime(2017, 08, 31, 9, 0, 0); var dateTo = new DateTime(2017, 08, 31, 12, 0, 0); return(db.SensorLogs.Where(x => x.ReadDate >= dateFrom && x.ReadDate <= dateTo).Select(x => new SensorLogDataViewModel { Date = x.ReadDate, Temperature = x.Temperature, Humidity = x.Humidity }).ToList()); }
public ActionResult Index() { var db = new SySDB(); var model = new List <LogFileViewModel>(); foreach (var f in db.LogFiles.OrderByDescending(x => x.ProcessDate).ThenByDescending(x => x.DateCreated).ToList()) { model.Add(new LogFileViewModel { Filename = f.FileName, DateCreated = f.DateCreated }); } return(View(model)); }
private void ProcessRecords(List <string> logRecords, string fileName) { Debug.WriteLine("Total records: " + logRecords.Count); var db = new SySDB(); foreach (var logRecord in logRecords) { if (string.IsNullOrWhiteSpace(logRecord) || logRecord.Length < 13) { continue; } var fields = logRecord.Split(','); var readDate = ParseToDate(fields[0]); var exist = db.SensorLogs.Any(x => x.ReadDate == readDate); if (!exist) { db.SensorLogs.Add(new SensorLog { SensorId = "001", ReadDate = readDate, Temperature = ToDouble(fields[1]), Humidity = ToDouble(fields[2]) }); } } db.SaveChanges(); // Mark the file as processed var logFile = db.LogFiles.FirstOrDefault(x => x.FileName.Equals(fileName, StringComparison.InvariantCultureIgnoreCase)); if (logFile != null) { logFile.ProcessDate = DateTime.Now; db.SaveChanges(); } Debug.WriteLine("SAVED!!!"); }
public int SaveLogFile(string fileName, string fileContent) { var db = new SySDB(); var logFile = db.LogFiles.FirstOrDefault(x => x.FileName == fileName); if (logFile != null) { return(-1); } logFile = new LogFile { FileName = fileName, FileContent = fileContent, DateCreated = DateTime.Now }; db.LogFiles.Add(logFile); db.SaveChanges(); return(logFile.Id); }
public bool CheckLogFile(string filename) { var db = new SySDB(); return(db.LogFiles.Any(x => x.FileName.Equals(filename, StringComparison.InvariantCultureIgnoreCase))); }