/// <summary> /// Remove Trainee /// </summary> /// <param name="traineeToDelete">The Trainee to remove</param> public void RemoveTrainee(Trainee traineeToDelete) { if (AllTrainees.All(trainee => trainee.Id != traineeToDelete.Id)) { throw new Exception("Trainee doesn't exist"); } if (AllTests.Any(x => x.TraineeId == traineeToDelete.Id)) { throw new Exception("Trainee Has " + AllTests.Count(x => x.TraineeId == traineeToDelete.Id) + " Tests. Please Delete Them First."); } _dalImp.RemoveTrainee(traineeToDelete); }
/// <summary> /// Update Trainee /// </summary> /// <param name="updatedTrainee">The Trainee to update</param> public void UpdateTrainee(Trainee updatedTrainee) { if (AllTrainees.All(trainee => trainee.Id != updatedTrainee.Id)) { throw new Exception("Trainee doesn't exist"); } if (Tools.GetAge(updatedTrainee.BirthDate) < Configuration.MinTraineeAge) { throw new Exception("The trainee is too young"); } if (updatedTrainee.BirthDate == DateTime.MinValue) { throw new Exception("Invalid birth date"); } _dalImp.UpdateTrainee(updatedTrainee); }