public async Task <ActionResult <Logic.Objects.Question> > PostSurveyQuestion([FromBody, Bind("questionText, isSurveyOptionList")] Models.ApiQuestion question) { try { Logic.Objects.Question newQuestion = new Logic.Objects.Question() { questionID = Guid.NewGuid(), questionText = question.questionText, isSurveyOptionList = question.isSurveyOptionList }; try { await repository.CreateSurveyQuestionAsync(newQuestion); await repository.SaveAsync(); return(Ok(await repository.GetSurveyQuestionByIDAsync(newQuestion.questionID))); } catch (Exception e) { return(BadRequest(e.Message)); } } catch (Exception e) { return(StatusCode(StatusCodes.Status500InternalServerError, e.Message)); } }
public async Task <ActionResult <Logic.Objects.Option> > PutQuestionReadability(Guid surveyQuestionID, [FromBody] ApiQuestionReadability questionReadability) { try { Logic.Objects.Question logicQuestion = await repository.GetSurveyQuestionByIDAsync(surveyQuestionID); logicQuestion.senderCanView = questionReadability.senderCanView; try { await repository.UpdateSurveyQuestionByIDAsync(logicQuestion); await repository.SaveAsync(); return(Ok(await repository.GetSurveyQuestionByIDAsync(surveyQuestionID))); } catch (Exception e) { throw e.InnerException; } } catch (Exception e) { throw e.InnerException; } }
public async Task <ActionResult <Logic.Objects.Option> > PutQuestionIsSurveyOptionList(Guid surveyQuestionID, [FromBody, Bind("isSurveyOptionList")] Models.Question_Models.ApiQuestionIsSurveyOptionList questionIsSurveyOptionList) { try { Logic.Objects.Question logicQuestion = await repository.GetSurveyQuestionByIDAsync(surveyQuestionID); logicQuestion.isSurveyOptionList = questionIsSurveyOptionList.isSurveyOptionList; try { await repository.UpdateSurveyQuestionByIDAsync(logicQuestion); await repository.SaveAsync(); return(Ok(await repository.GetSurveyQuestionByIDAsync(surveyQuestionID))); } catch (Exception e) { throw e.InnerException; } } catch (Exception e) { throw e.InnerException; } }
public static SurveyQuestionXref MapQuestionXref(Logic.Objects.Question logicQuestion) { Data.Entities.SurveyQuestionXref contextQuestionXref = new SurveyQuestionXref() { SurveyQuestionId = logicQuestion.questionID, }; return(contextQuestionXref); }
/// <summary> /// maps a logic question to a context question /// </summary> /// <param name="newQuestion"></param> /// <returns></returns> public static Data.Entities.SurveyQuestion MapQuestion(Logic.Objects.Question newQuestion) { Entities.SurveyQuestion contextQuestion = new SurveyQuestion() { SurveyQuestionId = newQuestion.questionID, QuestionText = newQuestion.questionText, IsSurveyOptionList = newQuestion.isSurveyOptionList }; return(contextQuestion); }
public async Task <Question> GetSurveyQuestionByIDAsync(Guid questionID) { Logic.Objects.Question logicQuestion = Mapper.MapQuestion(await santaContext.SurveyQuestions .Include(sq => sq.SurveyResponses) .Include(sq => sq.SurveyQuestionOptionXrefs) .ThenInclude(sqoxr => sqoxr.SurveyOption) .Include(sq => sq.SurveyQuestionXrefs) .FirstOrDefaultAsync(q => q.SurveyQuestionId == questionID)); return(logicQuestion); }
public async Task <ActionResult <Logic.Objects.Question> > GetQuestionsByIDAsync(Guid surveyQuestionID) { try { Logic.Objects.Question logicQuestion = await repository.GetSurveyQuestionByIDAsync(surveyQuestionID); return(Ok(logicQuestion)); } catch (Exception e) { throw e.InnerException; } }
public async Task <ActionResult <List <Logic.Objects.Option> > > GetQuestionOptionFromQuestionInSurveyAsync(Guid surveyID, Guid surveyQuestionID) { try { Logic.Objects.Survey logicSurvey = await repository.GetSurveyByID(surveyID); Logic.Objects.Question logicQuestion = logicSurvey.surveyQuestions.FirstOrDefault(q => q.questionID == surveyQuestionID); return(Ok(logicQuestion.surveyOptionList)); } catch { throw new NotImplementedException(); } }