public QuoteDTO SaveQuote(QuoteDTO dto)
        {
            using (var context = new QuestionnaireEntities())
            {
                Quote dao = null;
                if (dto.QuoteID != 0)
                {
                    dao = context.Quotes.Where(q => q.Quote_ID == dto.QuoteID).FirstOrDefault();
                }
                else
                {
                    dao = new Quote();
                    context.Quotes.Add(dao);
                }

                dao.Scheme_ID = dto.SchemeID;
                dao.Reference = dto.Reference;
                dao.QuoteDate = dto.QuoteDate;

                context.SaveChanges();
                QuestionnaireCacheManager.Instance.ClearListQuotesForDisplayFromCache();
                dto.QuoteID = dao.Quote_ID;
            }
            return(dto);
        }
        public List <QuoteQuestionAnswerDTO> SaveAnswers(List <QuoteQuestionAnswerDTO> dtos)
        {
            using (var context = new QuestionnaireEntities())
            {
                Quote_Question_Answer dao = null;
                foreach (QuoteQuestionAnswerDTO dto in dtos)
                {
                    if (dto.QuoteQuestionAnswerID > 0)
                    {
                        //existing answer - load it
                        dao = context.Quote_Question_Answer.Find(dto.QuoteQuestionAnswerID);
                    }
                    else
                    {
                        //new answer
                        dao = new Quote_Question_Answer()
                        {
                            Quote_ID    = dto.QuoteID,
                            Question_ID = dto.QuestionID
                        };
                        context.Quote_Question_Answer.Add(dao);
                    }

                    dao.Question_Possible_Answer_ID = dto.QuestionPossibleAnswerID;
                    dao.Answer = dto.Answer;
                    dto.QuoteQuestionAnswerID = dao.Quote_Question_Answer_ID;
                }
                context.SaveChanges();
                //re-load questions to get question id's
                dtos = ListAnswersByQuote(dtos[0].QuoteID);
            }
            return(dtos);
        }
        public QuestionTemplateDTO SaveQuestionTemplate(QuestionTemplateDTO dto)
        {
            using (var context = new QuestionnaireEntities())
            {
                Question_Template dao = null;
                if (dto.QuestionTemplateID > 0)
                {
                    dao = context.Question_Template.Find(dto.QuestionTemplateID);
                }
                else
                {
                    dao = new Question_Template()
                    {
                        LastRenderDate = DateTime.Now
                    };
                    context.Question_Template.Add(dao);
                }

                dao.Name             = dto.Name;
                dao.Template         = dto.Template;
                dao.Question_Type_ID = dto.QuestionTypeID;
                dao.LastRenderDate   = dto.LastRenderDate;

                context.SaveChanges();
                dto.QuestionTemplateID = dao.Question_Template_ID;
                QuestionnaireCacheManager.Instance.ClearQuestion(dto.QuestionTemplateID);
            }
            return(dto);
        }
Beispiel #4
0
        public void SaveQuestion(IQuestionDTO questionDTO)
        {
            var      portalDb  = new QuestionnaireEntities();
            Question questionE = null;

            if (questionDTO.QuestionId == -1)
            {
                questionE                 = new Question();
                questionE.Text            = questionDTO.Text;
                questionE.Marks           = questionDTO.Marks;
                questionE.QuestionPaperNo = questionDTO.QuestionPaperNo;

                portalDb.Questions.Add(questionE);
            }
            else
            {
                questionE                 = portalDb.Questions.SingleOrDefault(n => n.Id == questionDTO.QuestionId);
                questionE.Text            = questionDTO.Text;
                questionE.Marks           = questionDTO.Marks;
                questionE.QuestionPaperNo = questionDTO.QuestionPaperNo;
            }

            portalDb.SaveChanges();

            questionDTO.QuestionId = questionE.Id;
        }
        public void SavePaper(IPaperDTO paperDTO)
        {
            var           portalDb = new QuestionnaireEntities();
            QuestionPaper paperE   = null;

            if (paperDTO.PaperId == -1)
            {
                paperE             = new QuestionPaper();
                paperE.Name        = paperDTO.Name;
                paperE.Description = paperDTO.Description;
                paperE.Duration    = paperDTO.Duration;
                portalDb.QuestionPapers.Add(paperE);
            }
            else
            {
                paperE             = portalDb.QuestionPapers.SingleOrDefault(n => n.Id == paperDTO.PaperId);
                paperE.Name        = paperDTO.Name;
                paperE.Description = paperDTO.Description;
                paperE.Duration    = paperDTO.Duration;
            }

            portalDb.SaveChanges();

            paperDTO.PaperId = paperE.Id;
        }
Beispiel #6
0
        public void DeleteQuestion(int questionId)
        {
            var portalDb  = new QuestionnaireEntities();
            var questionE = portalDb.Questions.SingleOrDefault(n => n.Id == questionId);

            portalDb.Questions.Remove(questionE);
            portalDb.SaveChanges();
        }
 public void DeleteAnswers(List <QuoteQuestionAnswerDTO> dtos)
 {
     using (var context = new QuestionnaireEntities())
     {
         foreach (QuoteQuestionAnswerDTO dto in dtos)
         {
             var dao = context.Quote_Question_Answer.Find(dto.QuoteQuestionAnswerID);
             if (dao != null)
             {
                 context.Quote_Question_Answer.Remove(dao);
             }
         }
         context.SaveChanges();
     }
 }
        public bool DeletePaper(int paperId)
        {
            var  portalDb = new QuestionnaireEntities();
            var  paperE   = portalDb.QuestionPapers.SingleOrDefault(n => n.Id == paperId);
            bool rv       = false;

            if (paperE.Questions.Count == 0)
            {
                portalDb.QuestionPapers.Remove(paperE);
                rv = true;
            }

            portalDb.SaveChanges();

            return(rv);
        }
        public RenderedPageDTO SaveRenderedPage(RenderedPageDTO dto)
        {
            using (var context = new QuestionnaireEntities())
            {
                Rendered_Page dao = null;
                if (dto.RenderedPageID > 0)
                {
                    //existing rendered page
                    dao = context.Rendered_Page.Find(dto.RenderedPageID);
                }
                else if (dto.PageID > 0 && context.Rendered_Page.Any(rp => rp.Page_ID == dto.PageID))
                {
                    dao = context.Rendered_Page.Where(rp => rp.Page_ID == dto.PageID).FirstOrDefault();
                }
                else
                {
                    dao = context.Rendered_Page.Where(rp => rp.Page_ID == dto.PageID).FirstOrDefault();
                    if (dao == null)
                    {
                        dao = new Rendered_Page()
                        {
                            Page_ID = dto.PageID
                        };
                    }
                    context.Rendered_Page.Add(dao);
                }

                dao.PageContent    = dto.PageContent;
                dao.LastRenderDate = dto.LastRenderDate;

                context.SaveChanges();

                int schemeId = (from s in context.Schemes
                                join p in context.Pages on s.Scheme_ID equals p.Scheme_ID
                                where p.Page_ID == dto.PageID
                                select s.Scheme_ID).First();
                QuestionnaireCacheManager.Instance.ClearPage(dto.PageID, schemeId);

                dto.RenderedPageID = dao.Rendered_Page_ID;
            }
            return(dto);
        }
        public PageTemplateDTO SavePageTemplate(PageTemplateDTO dto)
        {
            using (var context = new QuestionnaireEntities())
            {
                Page_Template dao = null;
                if (dto.PageTemplateID > 0)
                {
                    dao = context.Page_Template.Find(dto.PageTemplateID);
                }
                else
                {
                    dao = new Page_Template();
                    context.Page_Template.Add(dao);
                }

                dao.Name            = dto.Name;
                dao.TemplateContent = dto.TemplateContent;

                context.SaveChanges();
            }
            return(dto);
        }