예제 #1
0
        public ActionResult SubmitAnswer(int id)
        {
            //题目类型
            int questionTypeId = int.Parse(Request.Params["questionTypeId"]);
            //题目ID
            int questionId = int.Parse(Request.Params["questionId"]);
            //题目答案
            string answerContent = Request.Params["answerContent"];
            string time          = Request.Params["timer1"];

            if (answerContent == null)
            {
                answerContent = "";
            }
            //根据答卷人ID找到对应的答卷
            //取出答卷人ID
            MODEL.T_InterviewerInfo interviewerInfo = (MODEL.T_InterviewerInfo)Session["interviewerInfo"];
            //根据答卷人ID查找对应的答卷ID
            int asId = OperateContext.Current.BLLSession
                       .IAnswerSheetBLL.GetListBy(a => a.InterviewerID == interviewerInfo.ID).Select(a => a.ID).First();

            //将答案插入答卷
            //选择题
            if (questionTypeId == 1)
            {
                MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                {
                    AnswerSheetID = asId,
                    QuestionID    = questionId,
                    Answer        = answerContent
                };
                OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
            }
            //简答题
            else if (questionTypeId == 2)
            {
                MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                {
                    AnswerSheetID = asId,
                    QuestionID    = questionId,
                    Answer        = answerContent
                };
                OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
            }
            //从题目列表中移除已提交题目
            if (id == 1)
            {
                List <int> questionList = (List <int>)Session["questionList1"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList1"] = questionList;
                if (questionList.Count == 1)
                {
                    ViewData["lastone"] = 1;
                }
                else
                {
                    ViewData["lastone"] = 0;
                }
                if (time == "intime")
                {
                    return(Redirect("/JoinUs/BeginTest/DoQuestion/" + id));
                }
                else
                {
                    List <MODEL.T_Question> model = OperateContext.Current.BLLSession
                                                    .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList1"]   = null;
                    return(Redirect("/JoinUs/BeginTest/AccessCommit"));
                }
            }
            else if (id == 2)
            {
                List <int> questionList = (List <int>)Session["questionList2"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList2"] = questionList;
                if (time == "intimer")
                {
                    return(Redirect("/JoinUs/BeginTest/DoQuestion/" + id));
                }
                else
                {
                    List <MODEL.T_Question> model = OperateContext.Current.BLLSession
                                                    .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList2"]   = null;
                    return(Redirect("/JoinUs/BeginTest/AccessCommit"));
                }
            }
            else
            {
                List <int> questionList = (List <int>)Session["questionList3"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList3"] = questionList;
                if (time == "intimer")
                {
                    return(Redirect("/JoinUs/BeginTest/DoQuestion/" + id));
                }
                else
                {
                    List <MODEL.T_Question> model = OperateContext.Current.BLLSession
                                                    .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID    = q.ID,
                                Answer        = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList3"]   = null;
                    return(Redirect("/JoinUs/BeginTest/AccessCommit"));
                }
            }
        }
        public ActionResult SubmitAnswer(int id)
        {
            //题目类型
            int questionTypeId = int.Parse(Request.Params["questionTypeId"]);
            //题目ID
            int questionId = int.Parse(Request.Params["questionId"]);
            //题目答案
            string answerContent = Request.Params["answerContent"];
            string time = Request.Params["timer1"];

            if (answerContent == null)
            {
                answerContent = "";
            }
            //根据答卷人ID找到对应的答卷
            //取出答卷人ID
            MODEL.T_InterviewerInfo interviewerInfo = (MODEL.T_InterviewerInfo)Session["interviewerInfo"];
            //根据答卷人ID查找对应的答卷ID
            int asId = OperateContext.Current.BLLSession
                .IAnswerSheetBLL.GetListBy(a => a.InterviewerID == interviewerInfo.ID).Select(a => a.ID).First();
            //将答案插入答卷
            //选择题
            if (questionTypeId == 1)
            {
                MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                {
                    AnswerSheetID = asId,
                    QuestionID = questionId,
                    Answer = answerContent
                };
                OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
            }
            //简答题
            else if (questionTypeId == 2)
            {
                MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                {
                    AnswerSheetID = asId,
                    QuestionID = questionId,
                    Answer = answerContent
                };
                OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
            }
            //从题目列表中移除已提交题目
            if (id == 1)
            {
                List<int> questionList = (List<int>)Session["questionList1"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList1"] = questionList;
                if (questionList.Count == 1)
                {
                    ViewData["lastone"] = 1;
                }
                else
                {
                    ViewData["lastone"] = 0;
                }
                if (time == "intime")
                {
                    return Redirect("/JoinUs/BeginTest/DoQuestion/" + id);
                }
                else
                {

                    List<MODEL.T_Question> model = OperateContext.Current.BLLSession
                         .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList1"] = null;
                    return Redirect("/JoinUs/BeginTest/AccessCommit");
                }
            }
            else if (id == 2)
            {
                List<int> questionList = (List<int>)Session["questionList2"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList2"] = questionList;
                if (time == "intimer")
                {
                    return Redirect("/JoinUs/BeginTest/DoQuestion/" + id);
                }
                else
                {
                    List<MODEL.T_Question> model = OperateContext.Current.BLLSession
                         .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList2"] = null;
                    return Redirect("/JoinUs/BeginTest/AccessCommit");
                }
            }
            else
            {
                List<int> questionList = (List<int>)Session["questionList3"];
                questionList.RemoveAt(0);
                //题号列表保存到Session
                Session["questionList3"] = questionList;
                if (time == "intimer")
                {
                    return Redirect("/JoinUs/BeginTest/DoQuestion/" + id);
                }
                else
                {
                    List<MODEL.T_Question> model = OperateContext.Current.BLLSession
                         .IQuestionBLL.GetListBy(q => questionList.Contains(q.ID)).ToList();
                    foreach (MODEL.T_Question q in model)
                    {
                        if (q.QuestionTypeID == 1)
                        {
                            MODEL.T_ChoiceAnswerSheet cas = new MODEL.T_ChoiceAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IChoiceAnswerSheetBLL.Add(cas);
                        }
                        //简答题
                        else if (q.QuestionTypeID == 2)
                        {
                            MODEL.T_BriefAnswerSheet bas = new MODEL.T_BriefAnswerSheet()
                            {
                                AnswerSheetID = asId,
                                QuestionID = q.ID,
                                Answer = ""
                            };
                            OperateContext.Current.BLLSession.IBriefAnswerSheetBLL.Add(bas);
                        }
                    }
                    Session["interviewerInfo"] = null;
                    Session["questionList3"] = null;
                    return Redirect("/JoinUs/BeginTest/AccessCommit");
                }
            }
        }