public static BaseResultInfo GetLastItem(LOGTYPE logType, string server) { LogItemRepository repository = new LogItemRepository(); BaseResultInfo res = repository.GetLastLogItem(logType.ToString(), server); return(res); }
public static BaseResultInfo FileToNewDB(string fileName, LOGTYPE logType, bool isUnified) { SiteLogger.ILogger logger = SiteLogger.LoggingFactory.GetLogger; List <string> file = LogReader.LogFileReader.ReadFile(fileName); if (isUnified) { file = LogReader.LogFileReader.UnifiedLogLines(file); } List <LogItem> items = LogReader.LogFileReader.LinesToLogs(file.ToArray(), logType); LogItemRepository repository = new LogItemRepository(); BaseResultInfo res = repository.GetLastLogItem(logType.ToString(), null); LogItem last = res.GetResult <LogItem>(); int itemsSentToDB = items.Count; LogItem lastFound = last == null? null: items.FirstOrDefault(l => l.InsertDate == last.InsertDate); if (lastFound == null) { res = repository.InsertLogItem(items); } else { List <LogItem> itemsToSend = items.FindAll(l => l.Index > lastFound.Index); itemsSentToDB = itemsToSend.Count; res = repository.InsertLogItem(itemsToSend); } logger.Debug(string.Format("FILE NAME = {0} , TOTAL ITEMS = {1} , ITEM TRY INSERT = {2}, TOTAL SUCCESS = {3}, TOTAL FAILD = {4}", fileName, items.Count, itemsSentToDB, res.ReturnValue, itemsSentToDB - res.ReturnValue)); return(res); }