public HttpResponseMessage UnassignHomework(int id, HomeworkAssignementDTO dto) { try { this._homeworkManagement.UnassignHomework(dto); return(Request.CreateResponse(HttpStatusCode.OK)); } catch (Exception) { // Log exception code goes here return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Error occured while executing method.")); } }
/// <summary> /// Assigns the homework. /// </summary> /// <param name="dto"></param> /// <exception cref="CustomException"> /// </exception> public void AssignHomework(HomeworkAssignementDTO dto) { try { using (var db = new ELearningDatabaseEntities()) { HomeworkAssignements ha = db.HomeworkAssignements .Where(a => a.AssignementId == dto.AssignementId) .FirstOrDefault(); if (ha != null) { if (dto.StudentId != null && dto.StudentId > 0) { ha.StudentId = dto.StudentId; } if (dto.GroupId != null && dto.GroupId > 0) { ha.GroupId = dto.GroupId; } db.HomeworkAssignements.Attach(ha); db.Entry(ha).State = System.Data.EntityState.Modified; db.SaveChanges(); } else { HomeworkAssignements newAssignement = new HomeworkAssignements(); newAssignement.AnswerId = dto.AnswerId; newAssignement.AssignementId = dto.AssignementId; newAssignement.CourseId = dto.CourseId; newAssignement.CourseModuleId = dto.CourseModuleId; newAssignement.GradeId = dto.GradeId; newAssignement.GroupId = dto.GroupId; newAssignement.HomeworkId = dto.HomeworkId; newAssignement.StudentId = dto.StudentId; db.HomeworkAssignements.Add(newAssignement); db.SaveChanges(); } } } catch (ArgumentNullException ane) { throw new CustomException(ane.Message); } catch (InvalidOperationException ex) { throw new CustomException(ex.Message); } }
/// <summary> /// Unassigns the homework. /// </summary> /// <param name="dto"></param> /// <exception cref="CustomException"> /// </exception> public void UnassignHomework(HomeworkAssignementDTO dto) { try { using (var db = new ELearningDatabaseEntities()) { HomeworkAssignements ha = db.HomeworkAssignements .Where(a => a.AssignementId == dto.AssignementId) .First(); db.HomeworkAssignements.Remove(ha); db.SaveChanges(); } } catch (ArgumentNullException ane) { throw new CustomException(ane.Message); } catch (InvalidOperationException ex) { throw new CustomException(ex.Message); } }
/// <summary> /// Gets the view model for a homework assignement DTO. /// </summary> /// <param name="homeworkAssignement">The homework assignement.</param> /// <returns></returns> /// <exception cref="CustomException"></exception> public HomeworkAssignementViewModel GetViewModel(HomeworkAssignementDTO homeworkAssignement) { try { HomeworkAssignementViewModel havm = new HomeworkAssignementViewModel(); havm.AnswerId = homeworkAssignement.AnswerId; havm.AssignementId = homeworkAssignement.AssignementId; havm.CourseId = homeworkAssignement.CourseId; havm.CourseModuleId = homeworkAssignement.CourseModuleId; havm.GradeId = homeworkAssignement.GradeId; havm.GroupId = homeworkAssignement.GroupId; havm.HomeworkId = homeworkAssignement.HomeworkId; havm.StudentId = homeworkAssignement.StudentId; havm.RecipientName = homeworkAssignement.RecipientName; return(havm); } catch (Exception ex) { throw new CustomException(ex.Message); } }