/// <summary> /// Method for parse files from the specified folder /// </summary> /// <param name="destination_name">specified folder</param> public static void StartParsingAllDoc() { string destination_name = "ems-resume"; //PostgreDB.ReadFilesInDB(); if (Directory.Exists(destination_name)) { List <Thread> threads = new List <Thread>(); //Create list with threads DirectoryInfo dir = new DirectoryInfo(destination_name); //Open directory FileInfo[] files = dir.GetFiles("*.doc"); //Get files from directory if (files.Length != 0) { foreach (FileInfo file in files) //For each file, create new thread { threads.Add(new Thread(() => LogicForParsing.NewParse(file.FullName, file.Name))); threads.Last().Start(); } AwaitThreads(ref threads); new Models.Exceptions_and_Events.Info("updating projects and skills", "INFO", "sending projects", 0); PrivateDictionary.SendProjects(Project.FindSimpleProjects(LogicForParsing.ProjectsList)); new Models.Exceptions_and_Events.Info("updating projects and skills", "INFO", "sending skills", 0); PrivateDictionary.UpdateDictionarySkills(); } } else { new Models.Exceptions_and_Events.Exception("finding folder", "ERROR", "folder not found"); } }
private static void WriteDataInDBWithSaving() { var tempList = LogicForTraining.GenerateTrains(LogicForTraining.TrainList); var forWrite = new List <Skill>(); foreach (var item in tempList) { forWrite.Add(item.ForWrite()); } PrivateDictionary.UpdateDictionarySkills(forWrite); }
private static void DeleteSimpleSkills(ref List <BufferSkill> skills) { PrivateDictionary.FindAllСoncurrencesInTemplate(ref skills); for (int i = 0; i < skills.Count; i++) { if (skills[i].Date != null) { skills[i].SimilarSkills.Add(skills[i]); } skills[i].level = FindLevel(skills[i].SimilarSkills); } }
private static void WriteDataInDB() { var list = LogicForTraining.TrainList; LogicForTraining.GenerateData(list); List <Skill> newList = new List <Skill>(); foreach (var skill in list) { newList.Add(skill.ForWrite()); } PrivateDictionary.UpdateDictionarySkills(newList); }
internal static List <TrainSkill> GenerateTrains(List <TrainSkill> afterTrain) { var tempList = new List <TrainSkill>(); var fromDB = PrivateDictionary.GetDataFromDB <Skill>("skills"); foreach (var s in fromDB) { var temp = s.ForTrain(); Rules.CreateRules(temp); foreach (string str in temp.SimilarSkills) { temp.Skills.Add(new TrainSkill { NameOfSkill = str, CodeOfSkill = str }); Rules.CreateRules(temp.Skills[temp.Skills.Count - 1]); } tempList.Add(temp); } PreproccessTech(ref tempList); tempList.AddRange(afterTrain); GenerateData(tempList); return(tempList); }