public void SavePerson(PersonModelBase person, out int id) { if (CheckIfPersonExists(person)) { id = GetPerson(person.Name).Id; } else { id = SetNewId(); var fileStream = new FileStream(RecognizerConfig.PeopleFilePath, FileMode.Append); var streamWriter = new StreamWriter(fileStream); streamWriter.WriteLine(LocalStorageUtility.PrepareLocalStoragePersonInfo(person, id)); streamWriter.Close(); fileStream.Close(); } }
public void SaveFace(PersonModelBase person, ImageModelBase image) { var possiblePerson = _personRepository.GetPerson(person.Name); int personId; if (possiblePerson != null) { personId = possiblePerson.Id; person.Id = personId; _personRepository.EditPerson(possiblePerson.Id, new PersonModel(person)); } else { var newPerson = _personRepository.AddPerson(person); personId = newPerson.Id; } _imageRepository.AddImage(image, personId); }
public void SaveDetected() { var person = new PersonModelBase() { Name = _controls.Name, Age = Convert.ToInt32(_controls.Age), Address = _controls.Address, Details = _controls.Details }; var image = new ImageModelBase() { Data = BitmapUtility.BitmapToByteArray(_controls.TheNewestFace) }; try { if (_parameters.UseExplorer) { _localStorageService.SaveFace(person, image); } else { _databaseService.SaveFace(new PersonModel(person), new ImageModel(image)); } } catch (Exception e) { MessageBox.Show("Wystąpił błąd podczas zapisu do bazy danych\r\n\r\n" + e); } _controls.KnownPeople = _parameters.UseExplorer ? _localStorageService.GetPeopleNames() : _databaseService.GetPeopleNames(); _controls.StatusText = StatusTypes.SaveCompleted.GetDesciption(); _controls.IsNewUpdate = true; StatusBarUtility.ResestStatus(_controls); }
public bool CheckIfPersonExists(PersonModelBase person) { return(GetPeople().Any(x => x.Name == person.Name)); }
public void SaveFace(PersonModelBase person, ImageModelBase image) { _personRepositoryLs.SavePerson(person, out var id); _imageRepositoryLs.SaveImage(image, id); }
public static string PrepareLocalStoragePersonInfo(PersonModelBase person, int id) { person.Id = id; return($"{person.Id}<_>{person.Name}<_>{person.Age}<_>{person.Address}<_>{person.Details}"); }