Пример #1
0
 public QuestionnaireVm(List <CategorieQuest> categories, Questionnaire questionnaire)
 {
     CategorieQuestions = new List <CategorieQuestVm>();
     foreach (var category in categories)
     {
         var questions = new List <QuestionReponse>();
         foreach (var q in category.QuestionsCateg)
         {
             var questionReponse = new QuestionReponse {
                 Question = q
             };
             if (questionnaire != null && questionnaire.QuestionnaireID > 0)
             {
                 var questionRep = questionnaire.Questions.FirstOrDefault(qr => qr.QuestionID == q.QuestionID);
                 if (questionRep != null)
                 {
                     questionReponse.ReponseSelected = questionRep.ReponseSelected;
                     questionReponse.ReponseString   = questionRep.ReponseString;
                 }
             }
             questions.Add(questionReponse);
         }
         var categorieQuestVm = new CategorieQuestVm
         {
             CategorieQuest = category,
             Questions      = questions
         };
         CategorieQuestions.Add(categorieQuestVm);
     }
 }
Пример #2
0
        public IHttpActionResult Update([FromBody] QuestionReponse qr)
        {
            //Il faut comparer les lists de questionreponse dans question(obj1 passé en paramètre) et questionToUpdate.
            //Pour les objets existants il faut les modifier et pour les objets nouveaux, les créers (besoin d'un questionReponseAccessLayer)

            var qrToUpdate = new FR_DataAccessLayer.Models.QuestionReponse
            {
                QuestionId = qr.QuestionId,
                ReponseId  = qr.ReponseId,
                Vraie      = qr.Vraie
            };

            qrAccessLayer.Update(qrToUpdate);

            return(this.Ok("updated"));
        }
Пример #3
0
        public IHttpActionResult Get(int?id)
        {
            if (id == null)
            {
                return(this.BadRequest());
            }
            var questionReponse = qrAccessLayer.Get((int)id);

            if (questionReponse == null)
            {
                return(this.NotFound());
            }
            var result = new QuestionReponse
            {
                QuestionId = questionReponse.QuestionId,
                ReponseId  = questionReponse.ReponseId,
                Vraie      = questionReponse.Vraie
            };

            return(this.Ok(result));
        }
Пример #4
0
        public ActionResult Index(QuestionnaireVm model)
        {
            // _emailService.SendAcountCredentiel(new Domain.Model.User { AdresseEmail = "*****@*****.**", Password = "" });
            Questionnaire questionnaire;
            var           questions = new List <QuestionReponse>();

            foreach (var cat in model.CategorieQuestions)
            {
                foreach (var q in cat.Questions)
                {
                    var questionReponse = new QuestionReponse
                    {
                        QuestionID      = q.Question.QuestionID,
                        ReponseSelected = q.ReponseSelected,
                        ReponseString   = q.ReponseString
                    };

                    questions.Add(questionReponse);
                }
            }
            if (model.QuestionnaireId == 0)
            {
                questionnaire = new Questionnaire();

                questionnaire.Questions    = questions;
                questionnaire.UserId       = SecurityHelper.GetCurrentUserId();
                questionnaire.DateCreation = DateTime.Now;
                //Anayse
                var anlysePointsForts = string.Empty;
                foreach (var q in questions)
                {
                    if (q.ReponseSelected > 0)
                    {
                        var rep = _reponseService.getReponseById(q.ReponseSelected);
                        anlysePointsForts = anlysePointsForts + rep.AnalyseReponsePointsForts;
                    }
                }
                questionnaire.AnalysePointForts = anlysePointsForts;
                _questionnaireService.Create(questionnaire);
            }
            else
            {
                questionnaire = _questionnaireService.getQuestionnaireById(model.QuestionnaireId);
                _questionnaireService.DeleteQuestionReponseByQuestionnaireId(model.QuestionnaireId);
                questionnaire.Questions = questions;
                questionnaire.UserId    = SecurityHelper.GetCurrentUserId();
                //Anayse
                var anlysePointsForts = string.Empty;
                foreach (var q in questions)
                {
                    if (q.ReponseSelected > 0)
                    {
                        var rep = _reponseService.getReponseById(q.ReponseSelected);
                        anlysePointsForts = anlysePointsForts + rep.AnalyseReponsePointsForts;
                    }
                }
                questionnaire.AnalysePointForts = anlysePointsForts;
                _questionnaireService.Update(questionnaire);
            }
            var categories = categorieService.getCategories();

            model = new QuestionnaireVm(categories, questionnaire);
            // return View(model);
            return(RedirectToAction("ListQuestionnaire"));
        }