public ServiceResult <HomeworkDto> CreateHomework(HomeworkRequest homeworkRequest) { string validationMessage = ValidateHomeworkRequest(homeworkRequest); if (!string.IsNullOrEmpty(validationMessage)) { return(errorService.Error <HomeworkDto>(validationMessage)); } if (flytDexContext.Homeworks.Any(h => h.Id == homeworkRequest.Id && h.SchoolId == homeworkRequest.SchoolId && h.LessonId == homeworkRequest.LessonId)) { return(errorService.Error <HomeworkDto>("An error occurred: A homework with this Id already exists")); } //ICollection<LinkHomeworkResource> linkHomeworkResources = mapper.Map<ICollection<LinkHomeworkResourceDto>, ICollection<LinkHomeworkResource>>(homeworkRequest.LinkHomeworkResources); //ICollection<LinkStudentHomework> linkStudentHomeworks = mapper.Map<ICollection<LinkStudentHomeworkDto>, ICollection<LinkStudentHomework>>(homeworkRequest.LinkStudentHomeworks); Homework homework = mapper.Map <HomeworkRequest, Homework>(homeworkRequest); //homework.LinkHomeworkResources = linkHomeworkResources; flytDexContext.Homeworks.Add(homework); if (flytDexContext.SaveChanges() < 0) { return(errorService.Error <HomeworkDto>("An error occurred: Unable to save changes")); } HomeworkDto homeworkDto = mapper.Map <Homework, HomeworkDto>(homework); return(new ServiceResult <HomeworkDto>(homeworkDto, ResultType.Success, "Success")); }
public IActionResult UpdateHomework([FromBody] HomeworkRequest homeworkRequest) { IContainer container = IocService.BeginRequest(); ServiceResult <HomeworkDto> result = container.GetInstance <IHomeworkService>().UpdateHomework(homeworkRequest); IocService.EndRequest(container); if (result.ResultType == ResultType.Error) { return(BadRequest(result.Message)); } return(Ok(result)); }
public void H_Req(HomeworkRequest Req) { Req.ReqDate = DateTime.Now; User usrObjectLec = ctx.Users.FirstOrDefault(x => x.id == Req.H_ID); User usrObjectStu = ctx.Users.FirstOrDefault(x => x.id == Req.S_ID); emailSending mailObject = new emailSending(usrObjectLec.mail, usrObjectStu.mail); mailObject.SendEmail(Req.C_Code, Req.title, Req.note); ctx.HomeworkRequests.Add(Req); ctx.SaveChanges(); }
public ServiceResult <HomeworkDto> UpdateHomework(HomeworkRequest homeworkRequest) { string validationMessage = ValidateHomeworkRequest(homeworkRequest); if (!string.IsNullOrEmpty(validationMessage)) { return(errorService.Error <HomeworkDto>(validationMessage)); } Homework homework = flytDexContext.Homeworks.SingleOrDefault(h => h.Id == homeworkRequest.Id && h.SchoolId == homeworkRequest.SchoolId && h.LessonId == homeworkRequest.LessonId); if (homework == null) { return(errorService.Error <HomeworkDto>("An error occurred: Invalid homework - not found")); } mapper.Map(homeworkRequest, homework); flytDexContext.LinkStudentHomeworks.RemoveRange( flytDexContext.LinkStudentHomeworks.Where(h => h.HomeworkId == homeworkRequest.Id) ); flytDexContext.LinkHomeworkResources.RemoveRange( flytDexContext.LinkHomeworkResources.Where(h => h.HomeworkId == homeworkRequest.Id) ); flytDexContext.Homeworks.Update(homework); if (flytDexContext.SaveChanges() <= 0) { return(errorService.Error <HomeworkDto>("Error updating homework, see log for error message")); } HomeworkDto homeworkDto = mapper.Map <Homework, HomeworkDto>(homework); return(new ServiceResult <HomeworkDto>(homeworkDto, ResultType.Success, "Success")); }
public string ValidateHomeworkRequest(HomeworkRequest homeworkRequest) { if (!flytDexContext.Schools.Any(s => s.Id == homeworkRequest.SchoolId)) { return("An error occurred: Invalid SchoolId"); } if (!flytDexContext.Lessons.Any(l => l.Id == homeworkRequest.LessonId)) { return("An error occurred: Invalid LessonId"); } if (homeworkRequest.HomeworkTemplateId != Guid.Empty && homeworkRequest.HomeworkTemplateId != null) { if (!flytDexContext.HomeworkTemplates.Any(h => h.Id == homeworkRequest.HomeworkTemplateId)) { return("An error occurred: Invalid HomeworkTemplateId"); } } return(null); }