public void SaveSurvey(int userId, SurveySaveDTO survey) { if (this.HasCompleted(userId)) { // TODO: Handle already saved return; } foreach (var answer in survey.Answers) { var userAnswer = Mapper.Map <UserAnswer>(answer); userAnswer.UserId = userId; userAnswer.SurveyId = survey.Id; this.userAnswerRepository.Create(userAnswer); } }
public ValidateSaveDTO ValidateSave(int userId, SurveySaveDTO surveySave) { var survey = this.GetSurvey(null); // truncate milliseconds var created = survey.CreatedDate.AddMilliseconds(-survey.CreatedDate.Millisecond); var modified = surveySave.Modified.AddMilliseconds(-surveySave.Modified.Millisecond); var result = new ValidateSaveDTO() { AlreadyCompleted = this.userAnswerRepository.HasCompleted(surveySave.Id, userId), ContentChanged = created > modified, }; return(result); }