public static string AddOrUpdateAthlete(Models.AthleteModel athlete) { Athlete newAthlete; using (DBEntities db = new DBEntities()) { newAthlete = db.Athlete.FirstOrDefault(x => x.identification_number == athlete.IdNumber); if (newAthlete == null) { newAthlete = new Athlete() { athlete_hash = DBHelper.GetNextId(), gender = athlete.Gender, identification_number = athlete.IdNumber, name = athlete.Name }; db.Athlete.Add(newAthlete); } else { newAthlete.name = athlete.Name; newAthlete.gender = athlete.Gender; } db.SaveChanges(); } return(newAthlete.athlete_hash); }
public static Models.AthleteModel GetAthleteIfExists(string idNumber) { Models.AthleteModel athlete = null; using (DBEntities db = new DBEntities()) { if (db.Athlete.Any(x => x.identification_number == idNumber)) { athlete = db.Athlete.Where(x => x.identification_number == idNumber).Select(x => new Models.AthleteModel() { Gender = x.gender, IdNumber = x.identification_number, Name = x.name }).First(); } } return(athlete); }
private void CheckAthlete() { Models.AthleteModel foundAthlete = DBAccessor.GetAthleteIfExists(ID); if (foundAthlete != null) { AthleteModel = foundAthlete; AthleteFormularyEnabled = "False"; } else { MessageBox.Show("No records found for \"" + ID + "\" Id number." + Environment.NewLine + "Please, add it manually."); AthleteModel.IdNumber = ID; AthleteModel.Gender = ""; AthleteModel.Name = ""; AthleteFormularyEnabled = "True"; RaisePropertyChanged("AthleteModel"); } }
private void Save() { string athleteHash = ""; Models.AthleteModel validationAthlete = DBAccessor.GetAthleteIfExists(AthleteModel.IdNumber); if (AthleteFormularyEnabled == "True") { if (validationAthlete != null) { MessageBoxResult res = MessageBox.Show("Already exists an athlete with id number \"" + AthleteModel.IdNumber + "\" named \"" + validationAthlete.Name + "\"" + Environment.NewLine + "Do you want to update his name?", "Athlete already exists", MessageBoxButton.YesNo); switch (res) { case MessageBoxResult.Yes: break; case MessageBoxResult.No: AthleteModel.Name = validationAthlete.Name; AthleteModel.Gender = validationAthlete.Gender; break; default: break; } } athleteHash = DBUpdater.AddOrUpdateAthlete(AthleteModel); } else { athleteHash = DBAccessor.GetExistingAthleteHash(AthleteModel.IdNumber); } try { DBUpdater.SaveSession(SessionModel, athleteHash); } catch { } Window.CloseAndNotify(true); }