/// <summary> /// /// </summary> /// <param name="traineeDto"></param> /// <returns></returns> public override int Add(DTO.TraineeDTO traineeDto) { try { POCO.Trainee trainee = new POCO.Trainee(); trainee.Name = traineeDto.Name ?? string.Empty; trainee.FirstName = traineeDto.FirstName ?? string.Empty; if (traineeDto.Courses != null) { POCO.Course course = null; foreach (DTO.CourseDTO courseDto in traineeDto.Courses) { course = ContextDAO.Instance.Course.FirstOrDefault(_course => _course.ID == courseDto.ID); if (course != null) { trainee.Course.Add(course); } } } ContextDAO.Instance.Trainee.AddObject(trainee); SaveChanges(); return(trainee.ID); } catch (Exception) { throw; } }
/// <summary> /// /// </summary> /// <param name="courseDto"></param> public override void Delete(DTO.CourseDTO courseDto) { try { POCO.Course course = DAO.ContextDAO.Instance.Course.FirstOrDefault(_course => _course.ID == courseDto.ID); if (course != null && course.Trainee.Count <= 0) { DAO.ContextDAO.Instance.Course.DeleteObject(course); SaveChanges(); } } catch (Exception) { throw; } }
/// <summary> /// /// </summary> /// <param name="courseDto"></param> /// <returns></returns> public override int Add(DTO.CourseDTO courseDto) { try { POCO.Course course = new POCO.Course(); course.NumberOfDays = courseDto.NumberOfDays; course.Wording = courseDto.Wording; DAO.ContextDAO.Instance.Course.AddObject(course); SaveChanges(); return(course.ID); } catch (Exception) { throw; } }
/// <summary> /// /// </summary> /// <param name="traineeDto"></param> public override void Update(DTO.TraineeDTO traineeDto) { try { // Modification du nom et prènom du stagiaire POCO.Trainee trainee = ContextDAO.Instance.Trainee.FirstOrDefault(_trainee => _trainee.ID == traineeDto.ID); trainee.Name = traineeDto.Name ?? string.Empty; trainee.FirstName = traineeDto.FirstName ?? string.Empty; // Cours à supprimés if (trainee.Course != null) { IList <POCO.Course> coursesToDelete = trainee.Course.Where(course => traineeDto.Courses.FirstOrDefault(_courseDto => _courseDto.ID == course.ID) == null).ToList(); if (coursesToDelete != null && coursesToDelete.Count > 0) { foreach (POCO.Course course in coursesToDelete) { trainee.Course.Remove(course); } } } // Cours à ajoutés if (traineeDto.Courses != null) { IList <DTO.CourseDTO> coursesToAdd = traineeDto.Courses.Where(courseDto => trainee.Course.FirstOrDefault(_course => _course.ID == courseDto.ID) == null).ToList(); if (coursesToAdd != null && coursesToAdd.Count > 0) { POCO.Course course = null; foreach (DTO.CourseDTO courseDto in coursesToAdd) { course = ContextDAO.Instance.Course.FirstOrDefault(_course => _course.ID == courseDto.ID); if (course != null) { trainee.Course.Add(course); } } } } SaveChanges(); } catch (Exception) { throw; } }
/// <summary> /// /// </summary> /// <param name="courseDto"></param> public override void Update(DTO.CourseDTO courseDto) { try { if (courseDto != null) { POCO.Course course = DAO.ContextDAO.Instance.Course.FirstOrDefault(_course => _course.ID == courseDto.ID); if (course != null) { course.NumberOfDays = courseDto.NumberOfDays; course.Wording = courseDto.Wording; SaveChanges(); } } } catch (Exception) { throw; } }