Ejemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string orgID = Request.QueryString.Get("orgid");
            string strId = Request.QueryString.Get("id");

            ViewState["NowOrgID"] = Convert.ToInt32(ConfigurationManager.AppSettings["StationID"]);

            if (!string.IsNullOrEmpty(strId))
            {
                FillHeading(strId, orgID);
            }

            if (!IsPostBack)
            {
                if (PrjPub.CurrentLoginUser != null)
                {
                    hfLoginEmployeeID.Value = PrjPub.CurrentLoginUser.EmployeeID.ToString();
                }
                else
                {
                    RandomExamResultBLL bll    = new RandomExamResultBLL();
                    RandomExamResult    result = bll.GetRandomExamResult(Convert.ToInt32(strId));
                    hfLoginEmployeeID.Value = result.ExamineeId.ToString();

                    if (hfLoginEmployeeID.Value == "0")
                    {
                        RandomExamResult result1 = bll.GetRandomExamResultTemp(Convert.ToInt32(strId));
                        hfLoginEmployeeID.Value = result1.ExamineeId.ToString();
                    }
                }
            }
        }
Ejemplo n.º 2
0
        protected void FillPaper()
        {
            // QueryString id stands for EXAM_RESULT_ID
            string strId = Request.QueryString.Get("id");
            string orgid = Request.QueryString.Get("orgid");

            // Not pass id
            if (string.IsNullOrEmpty(strId))
            {
                SessionSet.PageMessage = "参数错误!";

                return;
            }

            RandomExamResultBLL randomExamResultBLL = new RandomExamResultBLL();
            RandomExamResult    randomExamResult    = new RandomExamResult();

            if (ViewState["NowOrgID"].ToString() != orgid)
            {
                randomExamResult = randomExamResultBLL.GetRandomExamResultByOrgID(int.Parse(strId), int.Parse(orgid));
            }
            else
            {
                randomExamResult = randomExamResultBLL.GetRandomExamResultTemp(int.Parse(strId));
            }
            int RandomExamId       = randomExamResult.RandomExamId;
            int randomExamResultId = int.Parse(strId);

            OracleAccess  db     = new OracleAccess();
            RandomExamBLL objBll = new RandomExamBLL();
            int           year   = objBll.GetExam(RandomExamId).BeginTime.Year;

            RandomExamItemBLL              randomItemBLL             = new RandomExamItemBLL();
            RandomExamSubjectBLL           subjectBLL                = new RandomExamSubjectBLL();
            RandomExamResultAnswerBLL      randomExamResultAnswerBLL = new RandomExamResultAnswerBLL();
            IList <RandomExamSubject>      randomExamSubjects        = subjectBLL.GetRandomExamSubjectByRandomExamId(RandomExamId);
            IList <RandomExamResultAnswer> examResultAnswers         = new List <RandomExamResultAnswer>();

            if (ViewState["NowOrgID"].ToString() != orgid)
            {
                examResultAnswers = randomExamResultAnswerBLL.GetExamResultAnswersByOrgID(int.Parse(strId), int.Parse(orgid));
            }
            else
            {
                examResultAnswers = randomExamResultAnswerBLL.GetExamResultAnswers(randomExamResultId);
            }

            int z = 1;

            if (randomExamSubjects != null)
            {
                for (int i = 0; i < randomExamSubjects.Count; i++)
                {
                    RandomExamSubject      paperSubject = randomExamSubjects[i];
                    IList <RandomExamItem> PaperItems   = new List <RandomExamItem>();
                    if (ViewState["NowOrgID"].ToString() != orgid)
                    {
                        PaperItems = randomItemBLL.GetItemsByOrgID(paperSubject.RandomExamSubjectId, randomExamResultId, int.Parse(orgid), year);
                    }
                    else
                    {
                        PaperItems = randomItemBLL.GetItems(paperSubject.RandomExamSubjectId, randomExamResultId, year);
                    }

                    Response.Write("<table width='100%'>");
                    Response.Write(" <tr > <td class='ExamBigTitle' >");
                    Response.Write(" " + GetNo(i) + "");
                    Response.Write(".&nbsp;" + paperSubject.SubjectName + "");
                    Response.Write("  (共" + paperSubject.ItemCount + "题,共" + System.String.Format("{0:0.##}", paperSubject.ItemCount * paperSubject.UnitScore) + "分)</td></tr >");

                    if (PaperItems != null)
                    {
                        for (int j = 0; j < PaperItems.Count; j++)
                        {
                            RandomExamItem paperItem = PaperItems[j];
                            int            k         = j + 1;

                            if (paperItem.TypeId != 5)
                            {
                                z = 1;
                                Response.Write("<tr > <td class='ExamResultItem'>&nbsp;&nbsp;&nbsp;"
                                               + k + ".&nbsp; " + paperItem.Content + "&nbsp;&nbsp;(" +
                                               System.String.Format("{0:0.##}", paperSubject.UnitScore) +
                                               "分)</td></tr >");
                            }
                            else
                            {
                                string strSql = "select * from Random_Exam_Item_" + year + " where Item_ID='" +
                                                paperItem.ItemId + "' and Random_Exam_ID=" + RandomExamId;
                                DataRow dr = db.RunSqlDataSet(strSql).Tables[0].Rows[0];

                                IList <RandomExamItem> randomExamItems = randomItemBLL.GetItemsByParentItemID(Convert.ToInt32(dr["Parent_Item_ID"]), RandomExamId, year);

                                Response.Write("<tr > <td class='ExamResultItem'>&nbsp;&nbsp;&nbsp;("
                                               + z + ").&nbsp; " + paperItem.Content + "&nbsp;&nbsp;(" + System.String.Format("{0:0.##}", (decimal)paperSubject.UnitScore / (decimal)randomExamItems.Count) +
                                               "分)</td></tr >");
                                z++;
                            }

                            // 组织用户答案
                            RandomExamResultAnswer theExamResultAnswer = null;
                            string[] strUserAnswers = new string[0];
                            string   strUserAnswer  = string.Empty;

                            foreach (RandomExamResultAnswer resultAnswer in examResultAnswers)
                            {
                                if (resultAnswer.RandomExamItemId == paperItem.RandomExamItemId)
                                {
                                    theExamResultAnswer = resultAnswer;
                                    break;
                                }
                            }

                            // 若子表无记录,结束页面输出
                            if (theExamResultAnswer == null)
                            {
                                SessionSet.PageMessage = "数据错误!";
                            }

                            // 否则组织考生答案
                            if (theExamResultAnswer.Answer != null || theExamResultAnswer.Answer == string.Empty)
                            {
                                strUserAnswers = theExamResultAnswer.Answer.Split(new char[] { '|' });
                            }


                            for (int n = 0; n < strUserAnswers.Length; n++)
                            {
                                string strN = intToString(int.Parse(strUserAnswers[n]) + 1);
                                if (n == 0)
                                {
                                    strUserAnswer += strN;
                                }
                                else
                                {
                                    strUserAnswer += "," + strN;
                                }
                            }

                            //多选


                            if (paperSubject.ItemTypeId == 2)
                            {
                                string[] strAnswer = paperItem.SelectAnswer.Split(new char[] { '|' });
                                for (int n = 0; n < strAnswer.Length; n++)
                                {
                                    string strN = intToString(n + 1);
                                    Response.Write(" <tr ><td class='ExamItemAnswer'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "
                                                   + strN + "." + strAnswer[n] + "</td></tr >");
                                }
                            }
                            else if (paperSubject.ItemTypeId == 1 || paperSubject.ItemTypeId == 3 || paperItem.TypeId == 5)
                            {
                                //单选


                                string[] strAnswer = paperItem.SelectAnswer.Split(new char[] { '|' });
                                for (int n = 0; n < strAnswer.Length; n++)
                                {
                                    string strN = intToString(n + 1);

                                    Response.Write("<tr > <td class='ExamItemAnswer'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "
                                                   + strN + "." + strAnswer[n] + "</td></tr >");
                                }
                            }

                            if (paperSubject.ItemTypeId == 1 || paperSubject.ItemTypeId == 2 || paperSubject.ItemTypeId == 3 || paperItem.TypeId == 5)
                            {
                                // 组织正确答案
                                string[] strRightAnswers = paperItem.StandardAnswer.Split(new char[] { '|' });
                                string   strRightAnswer  = "";
                                for (int n = 0; n < strRightAnswers.Length; n++)
                                {
                                    string strN = intToString(int.Parse(strRightAnswers[n]) + 1);
                                    if (n == 0)
                                    {
                                        strRightAnswer += strN;
                                    }
                                    else
                                    {
                                        strRightAnswer += "," + strN;
                                    }
                                }

                                string strScore = "0";

                                if (paperItem.TypeId == 5)
                                {
                                    if (strRightAnswer == strUserAnswer)
                                    {
                                        strScore = System.String.Format("{0:0.##}", paperItem.Score);
                                    }
                                }
                                else
                                {
                                    if (strRightAnswer == strUserAnswer)
                                    {
                                        strScore = System.String.Format("{0:0.##}", paperSubject.UnitScore);
                                    }
                                }


                                if (strScore == "0")
                                {
                                    Response.Write(" <tr><td class='ExamAnswerZero'>&nbsp;&nbsp;&nbsp;★标准答案:"
                                                   + "<span id='span-" + paperItem.RandomExamItemId + "-0' name='span-" +
                                                   paperItem.RandomExamItemId
                                                   + "'>" + strRightAnswer + "</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考生答案:"
                                                   + "<span id='span-" + paperItem.RandomExamItemId + "-1' name='span-" +
                                                   paperItem.RandomExamItemId
                                                   + "'>" + strUserAnswer + "</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;得分:" + strScore + "</td></tr>");
                                }
                                else
                                {
                                    Response.Write(" <tr><td class='ExamAnswer'>&nbsp;&nbsp;&nbsp;★标准答案:"
                                                   + "<span id='span-" + paperItem.RandomExamItemId + "-0' name='span-" +
                                                   paperItem.RandomExamItemId
                                                   + "'>" + strRightAnswer + "</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;考生答案:"
                                                   + "<span id='span-" + paperItem.RandomExamItemId + "-1' name='span-" +
                                                   paperItem.RandomExamItemId
                                                   + "'>" + strUserAnswer + "</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;得分:" + strScore + "</td></tr>");
                                }
                            }
                        }
                    }
                    Response.Write(" </table> ");
                }
            }
            else
            {
                SessionSet.PageMessage = "数据错误!";

                return;
            }
        }
Ejemplo n.º 3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                try
                {
                    string strExamType     = Request.QueryString.Get("ExamType");
                    string strExamResultID = Request.QueryString.Get("ExamResultID");
                    if (strExamType == "1")
                    {
                        RandomExamResultBLL             objBll = new RandomExamResultBLL();
                        RailExam.Model.RandomExamResult obj    = new RandomExamResult();
                        if (string.IsNullOrEmpty(Request.QueryString.Get("IsResult")))
                        {
                            //正常提交
                            obj =
                                objBll.GetRandomExamResultTemp(Convert.ToInt32(strExamResultID));
                        }
                        else
                        {
                            //后台终止考试或结束考试
                            obj =
                                objBll.GetRandomExamResult(Convert.ToInt32(strExamResultID));
                        }
                        RandomExamBLL             objExamBll    = new RandomExamBLL();
                        RailExam.Model.RandomExam objRandomExam = objExamBll.GetExam(obj.RandomExamId);

                        if (objRandomExam.CanSeeScore)
                        {
                            hfIsShowResult.Value = "1";
                            lblScore.Text        = "成绩:" + System.String.Format("{0:0.##}", obj.Score) + "分";

                            if (objRandomExam.CanSeeAnswer)
                            {
                                hfIsShowAnswer.Value = "1";
                            }

                            //if (lblScore.Text == string.Empty)
                            //{
                            //    lblScore.Text = "成绩:" + String.Format("{0:0.##}", Request.QueryString.Get("nowScore")) + "分";
                            //}
                        }

                        if (objRandomExam.IsPublicScore)
                        {
                            if (obj.Score >= objRandomExam.PassScore)
                            {
                                lblPass.Text = "祝贺您本次考试合格通过!";
                            }
                            else
                            {
                                lblPass.Text = "您本次考试未合格未通过!";
                            }
                        }
                        else
                        {
                            lblPass.Text = "";
                        }

                        if (string.IsNullOrEmpty(Request.QueryString.Get("IsResult")))
                        {
                            //正常提交
                            try
                            {
                                OracleAccess dbPhoto = new OracleAccess();
                                string       strSql  = "select * from Random_Exam_Result_Detail_Temp where Random_Exam_Result_ID=" +
                                                       strExamResultID + " and Random_Exam_ID=" + obj.RandomExamId;
                                DataSet dsPhoto = dbPhoto.RunSqlDataSet(strSql);

                                if (dsPhoto.Tables[0].Rows.Count > 0)
                                {
                                    DataRow drPhoto    = dsPhoto.Tables[0].Rows[0];
                                    int     employeeId = Convert.ToInt32(drPhoto["Employee_ID"]);
                                    if (drPhoto["FingerPrint"] != DBNull.Value)
                                    {
                                        Pub.SavePhotoToLocal(obj.RandomExamId, employeeId, (byte[])drPhoto["FingerPrint"], 0, Convert.ToInt32(strExamResultID));
                                    }
                                    if (drPhoto["Photo1"] != DBNull.Value)
                                    {
                                        Pub.SavePhotoToLocal(obj.RandomExamId, employeeId, (byte[])drPhoto["Photo1"], 1, Convert.ToInt32(strExamResultID));
                                    }
                                    if (drPhoto["Photo2"] != DBNull.Value)
                                    {
                                        Pub.SavePhotoToLocal(obj.RandomExamId, employeeId, (byte[])drPhoto["Photo2"], 2, Convert.ToInt32(strExamResultID));
                                    }
                                    if (drPhoto["Photo3"] != DBNull.Value)
                                    {
                                        Pub.SavePhotoToLocal(obj.RandomExamId, employeeId, (byte[])drPhoto["Photo3"], 3, Convert.ToInt32(strExamResultID));
                                    }
                                }
                            }
                            catch
                            {
                                hfOrgID.Value = ConfigurationManager.AppSettings["StationID"];
                            }
                        }
                    }

                    hfOrgID.Value = ConfigurationManager.AppSettings["StationID"];
                }
                catch
                {
                    lblPass.Text = "";
                }
            }
        }