internal static Distractor ConvertDto(DistractorDTO q, Distractor instance, bool updateQuestionDate, FileModel fileModel, QuestionModel questionModel, UserModel userModel, SubModuleItemModel subModuleItemModel) { instance = instance ?? new Distractor(); instance.IsActive = q.isActive; instance.DistractorName = q.distractor; instance.DistractorOrder = q.distractorOrder; instance.Score = q.score; instance.IsCorrect = q.isCorrect; if (instance.IsTransient()) { instance.DateCreated = DateTime.Now; } instance.DateModified = DateTime.Now; instance.Image = q.imageId.HasValue ? fileModel.GetOneById(q.imageId.Value).Value : null; instance.LeftImage = q.leftImageId.HasValue ? fileModel.GetOneById(q.leftImageId.Value).Value : null; instance.RightImage = q.rightImageId.HasValue ? fileModel.GetOneById(q.rightImageId.Value).Value : null; instance.Question = q.questionId.HasValue ? questionModel.GetOneById(q.questionId.Value).Value : null; instance.ModifiedBy = q.modifiedBy.HasValue ? userModel.GetOneById(q.modifiedBy.Value).Value : null; instance.CreatedBy = q.createdBy.HasValue ? userModel.GetOneById(q.createdBy.Value).Value : null; instance.DistractorType = q.distractorType; if (instance.Question != null && updateQuestionDate) { var subModuleItem = instance.Question.SubModuleItem; subModuleItem.DateModified = DateTime.Now; subModuleItemModel.RegisterSave(subModuleItem); } return(instance); }
public IHttpActionResult sendImage([FromBody] string image) { int userId = TokenHelper.GetUserId(User.Identity); try { if (_affitsApiAdapter.processImage(image, userId)) { List <Pad> lastEmoStates = _affitsApiAdapter.getResults(userId); DistractorDTO distractor = _eduService.KickTheStudent(userId, lastEmoStates); return(Ok(distractor)); } return(BadRequest("unprocessed")); } catch (Exception e) { return(BadRequest(e.ToString())); } }
/// <summary> /// The save update. /// </summary> /// <param name="resultDto"> /// The user. /// </param> /// <returns> /// The <see cref="DistractorDTO"/>. /// </returns> public DistractorDTO Save(DistractorDTO resultDto) { ValidationResult validationResult; if (this.IsValid(resultDto, out validationResult)) { var distractorModel = this.DistractorModel; var isTransient = resultDto.distractorId == 0; var entity = isTransient ? null : distractorModel.GetOneById(resultDto.distractorId).Value; entity = ConvertDto(resultDto, entity, true, this.FileModel, this.QuestionModel, this.UserModel, this.SubModuleItemModel); distractorModel.RegisterSave(entity); return(new DistractorDTO(entity)); } var error = this.GenerateValidationError(validationResult); this.LogError("Distractor.Save", error); throw new FaultException <Error>(error, error.errorMessage); }