Modifica controllo file (con ricerdca ultime modifiche)

This commit is contained in:
Samuele Locatelli
2021-09-13 08:46:52 +02:00
parent 7ce2d0720c
commit 7fb3e35416
+21 -9
View File
@@ -40,20 +40,37 @@ namespace MP.FileData.Controllers
/// </summary>
/// <param name="idxMacchina">cod macchina</param>
/// <param name="path">path ricerca x macchina</param>
/// <param name="numDayPre">Numero giorni x ricerca all'indietro da data corrente / 0 = nessun limite</param>
/// <param name="searchPattern">pattern di ricerca (*.*)</param>
/// <param name="excludePattern">pattern esclusione (separato da spazi</param>
/// <param name="SearchRules">Regole di ricerca applicate</param>
/// <returns></returns>
public bool CheckFileArchived(string idxMacchina, string path, string searchPattern, SearchRules currRule)
public bool CheckFileArchived(string idxMacchina, string path, int numDayPre, string searchPattern, SearchRules currRule)
{
Log.Info($"CheckFileArchived S00 | macchina: {idxMacchina} | path: {path} | pattern: {searchPattern} | # ExcludedFileExt: {currRule.ExcludedFileExt.Count()}");
bool answ = false;
DirectoryInfo dirInfo = new DirectoryInfo(path);
FileInfo[] fileList = dirInfo.GetFiles(searchPattern);
FileInfo[] fileListRaw = dirInfo.GetFiles(searchPattern, SearchOption.AllDirectories);
List<FileInfo> fileList = new List<FileInfo>();
DateTime adesso = DateTime.Now;
// se ho un limite x giorni indietor x modifiche --> limito!
if (numDayPre > 0)
{
foreach (var item in fileListRaw)
{
if (adesso.Subtract(item.LastWriteTime).TotalDays <= numDayPre)
{
fileList.Add(item);
}
}
}
else
{
fileList = fileListRaw.ToList();
}
Log.Info($"CheckFileArchived S01 | file trovati: {fileList.Count()}");
List<FileInfo> fileNew = new List<FileInfo>();
List<FileModel> fileChecked = new List<FileModel>();
List<FileModel> fileMod = new List<FileModel>();
DateTime adesso = DateTime.Now;
// recupera elenco file nel DB
var archivedFile = FileGetByPath(path, true);
@@ -265,7 +282,6 @@ namespace MP.FileData.Controllers
// gestione Tags (da migliorare...)
List<TagModel> currTags = localDbCtx.DbSetTags.ToList();
//List<TagModel> currTags = TagGetAll();
// calcolo MD5 e tags
foreach (var item in newRec)
@@ -311,10 +327,6 @@ namespace MP.FileData.Controllers
}
}
//localDbCtx
//.DbSetTags
//.AddRange(newTags);
// aggiungo in blocco
localDbCtx
.DbSetProgFile