918博天堂

Server : Microsoft-IIS/10.0
System : Windows NT EBS-6136 10.0 build 17763 (Windows Server 2016) i586
User : jxgj ( 0)
PHP Version : 7.0.33
Disable Function : passthru,exec,system,shell_exec,proc_open,popen,pcntl_exec,socket_bind,stream_socket_server
Directory :  D:/tmp_aspnet/root/8346f1f3/9c1cfaad/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : D:/tmp_aspnet/root/8346f1f3/9c1cfaad/App_Web_1xg41kxm.1.cs
?#pragma checksum "D:\wwwroot\bujuan\wwwroot\PersonInfo\ShowAnswer.aspx.cs" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "10CCC25EA30E7D8556266F6F741A22EC32C4240D"

#line 1 "D:\wwwroot\bujuan\wwwroot\PersonInfo\ShowAnswer.aspx.cs"
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
using System.Text;
using System.Text.RegularExpressions;


namespace EasyExam.PersonalInfo
{
	/// <summary>
	/// ShowAnswer 的提要注明。
	/// </summary>
	public partial class ShowAnswer : System.Web.UI.Page
	{

		protected string strPaperName="";
		protected string strTestCount="";
		protected string strPaperMark="";
		protected string strPaperContent="";

		protected string strLoginID="";
		protected string strUserName="";
		protected string strExamTime="";
		protected string strPassMark="";
		protected string strTotalMark="";

		protected int intPaperID=0;
		protected int intUserID=0;
		protected int intUserScoreID=0;
		protected int intTestNum=0;

		string myUserID="";
		string myLoginID="";
		PublicFunction ObjFun=new PublicFunction();
		int k=0,intProduceWay=0,intOptionNum=0,intSeeResult=0;
		double dblTotalMark=0;
		string strTestContent="";
		string strManageUser="";
		string[] strArrOptionContent,strArrTypeStandardAnswer,strArrTypeUserAnswer;

		#region//*********初始信息*******
		protected void Page_Load(object sender, System.EventArgs e)
		{
			try
			{
				myUserID=Session["UserID"].ToString();
				myLoginID=Session["LoginID"].ToString();
			}
			catch
			{
			}
			if (myLoginID=="")
			{
				Response.Redirect("../Login.aspx");
			}
			//断根缓存
			Response.Expires=0;
			Response.Buffer=true;
			Response.Clear();

			strPaperContent="";
			intUserScoreID=Convert.ToInt32(Request["UserScoreID"]);
			strManageUser=Convert.ToString(Request["ManageUser"]);
			//if (!IsPostBack)
			//{
				//权限判断

				if (intUserScoreID!=0)
				{
					string strConn=ConfigurationSettings.AppSettings["strConn"];
					SqlConnection SqlConn=new SqlConnection(strConn);
					SqlCommand ObjCmd=null; 
					SqlDataAdapter SqlCmd=null,SqlCmdTestType=null,SqlCmdTest=null;
					DataSet SqlDS=null,SqlDSTestType=null,SqlDSTest=null;

					SqlCmd=new SqlDataAdapter("select a.*,b.LoginID,b.UserName from UserScore a,UserInfo b where a.UserScoreID="+intUserScoreID+" and b.UserID=a.UserID order by a.UserScoreID asc",SqlConn);
					SqlDS=new DataSet();
					SqlCmd.Fill(SqlDS,"UserScore");
					strLoginID=SqlDS.Tables["UserScore"].Rows[0]["LoginID"].ToString();
					strUserName=SqlDS.Tables["UserScore"].Rows[0]["UserName"].ToString();
					intPaperID=Convert.ToInt32(SqlDS.Tables["UserScore"].Rows[0]["PaperID"]);
					strExamTime=SqlDS.Tables["UserScore"].Rows[0]["StartTime"].ToString()+"/"+SqlDS.Tables["UserScore"].Rows[0]["EndTime"].ToString();
					strTotalMark=SqlDS.Tables["UserScore"].Rows[0]["TotalMark"].ToString();
					
					SqlCmd=new SqlDataAdapter("select * from PaperInfo where PaperID="+intPaperID+" order by PaperID asc",SqlConn);
					SqlDS=new DataSet();
					SqlCmd.Fill(SqlDS,"PaperInfo");
					strPaperName=SqlDS.Tables["PaperInfo"].Rows[0]["PaperName"].ToString();
					intProduceWay=Convert.ToInt32(SqlDS.Tables["PaperInfo"].Rows[0]["ProduceWay"]);
					strTestCount=SqlDS.Tables["PaperInfo"].Rows[0]["TestCount"].ToString();
					strPaperMark=SqlDS.Tables["PaperInfo"].Rows[0]["PaperMark"].ToString();
					strPassMark=SqlDS.Tables["PaperInfo"].Rows[0]["PassMark"].ToString();
					intSeeResult=Convert.ToInt32(SqlDS.Tables["PaperInfo"].Rows[0]["SeeResult"]);
					if ((intSeeResult==0)&&(strManageUser!="1"))
					{
						ObjFun.Alert("该试卷不允许查看了局!");
					}

					intTestNum=0;
					SqlCmdTestType=new SqlDataAdapter("select a.TestTypeID,b.BaseTestType,a.TestTypeTitle,a.TestTypeMark,a.TestAmount,a.TestTotalMark from PaperTestType a,TestTypeInfo b where a.TestTypeID=b.TestTypeID and a.PaperID="+intPaperID+" order by a.PaperTestTypeID asc",SqlConn);
					SqlDSTestType=new DataSet();
					SqlCmdTestType.Fill(SqlDSTestType,"PaperTestType");
					for(int i=0;i<SqlDSTestType.Tables["PaperTestType"].Rows.Count;i++)
					{
						if (intProduceWay==3)//试题随机
						{
							dblTotalMark=System.Math.Round(Convert.ToDouble(ObjFun.GetValues("select sum(a.TestMark) as TotalMark from UserAnswer a,RubricInfo b where a.RubricID=b.RubricID and b.TestTypeID="+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestTypeID"]+" and a.UserScoreID="+intUserScoreID+"","TotalMark")),2);
						}
						else//试题固定、题序随机
						{
							dblTotalMark=System.Math.Round(Convert.ToDouble(SqlDSTestType.Tables["PaperTestType"].Rows[0]["TestTotalMark"].ToString()),2);
						}
						strPaperContent=strPaperContent+"<tr>";
						strPaperContent=strPaperContent+"<td colspan='2' bgcolor='#CEE7FF' height='20' style='CURSOR:hand' onclick='jscomFlexObject(trTestTypeContent"+Convert.ToString(i+1)+")' title='点击伸缩该大题'>"+ObjFun.convertint(Convert.ToString(i+1))+"."+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestTypeTitle"].ToString()+"(共"+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestAmount"].ToString()+"题,共"+dblTotalMark.ToString()+"分)</td>";
						strPaperContent=strPaperContent+"</tr>";
						strPaperContent=strPaperContent+"<tr>";
						strPaperContent=strPaperContent+"<td width='10' nowrap></td>";
						strPaperContent=strPaperContent+"<td width='100%'>";
						strPaperContent=strPaperContent+"<table cellSpacing='0' cellPadding='1' width='100%' align='center' border='0' id='trTestTypeContent"+Convert.ToString(i+1)+"'>";

						SqlCmdTest=new SqlDataAdapter("select a.TestOrder,a.RubricID,b.TestTypeID,b.TestDiff,b.OptionNum,a.TestMark,b.TestContent,a.TestFile,a.TestFileName,b.OptionContent,b.StandardAnswer,b.TestParse,a.UserAnswer,a.UserScore from UserAnswer a,RubricInfo b where a.RubricID=b.RubricID and b.TestTypeID="+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestTypeID"]+" and a.UserScoreID="+intUserScoreID+" order by a.TestOrder asc",SqlConn);
						SqlDSTest=new DataSet();
						SqlCmdTest.Fill(SqlDSTest,"UserAnswer");
						for(int j=0;j<SqlDSTest.Tables["UserAnswer"].Rows.Count;j++)
						{
							intTestNum=intTestNum+1;
							strTestContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["TestContent"].ToString();
							if ((RadioButAll.Checked)||((RadioButWrong.Checked)&&(Convert.ToDouble(SqlDSTest.Tables["UserAnswer"].Rows[j]["UserScore"].ToString())==0)))
							{
								strPaperContent=strPaperContent+"<tr>";
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="填空类")
								{
									intOptionNum=0;
									Regex Reg=new Regex("___",RegexOptions.IgnoreCase);
									while (strTestContent.IndexOf("___")>=0)
									{
										strTestContent=Reg.Replace(strTestContent,"",1);
										intOptionNum=intOptionNum+1;
									}
									strTestContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["TestContent"].ToString();
									strArrOptionContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().Split(',');
									for(k=1;k<=intOptionNum;k++)
									{
										if (k<=strArrOptionContent.Length)
										{
											strTestContent=Reg.Replace(strTestContent,"<input type='text' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' size='16' class=filltext value='"+strArrOptionContent[k-1]+"' onBlur='textcheck()' readonly title='试题答案中不能蕴含半角逗号“,”'>",1);
										}
										else
										{
											strTestContent=Reg.Replace(strTestContent,"<input type='text' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' size='16' class=filltext value='' onBlur='textcheck()' readonly title='试题答案中不能蕴含半角逗号“,”'>",1);
										}
									}
								}
								strPaperContent=strPaperContent+"<td colspan='2' width='100%'><input type='hidden' id='TestTypeTitle"+intTestNum.ToString()+"' name='TestTypeTitle"+intTestNum.ToString()+"' value='"+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestTypeTitle"].ToString()+"'><input type='hidden' id='RubricID"+intTestNum.ToString()+"' name='RubricID"+intTestNum.ToString()+"' value='"+SqlDSTest.Tables["UserAnswer"].Rows[j]["RubricID"].ToString()+"'><input type='hidden' id='BaseTestType"+intTestNum.ToString()+"' name='BaseTestType"+intTestNum.ToString()+"' value='"+SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()+"'><a id='l"+intTestNum.ToString()+"' style='color:black'>"+intTestNum.ToString()+"</a>."+strTestContent+"<font color='red'>("+SqlDSTest.Tables["UserAnswer"].Rows[j]["TestMark"].ToString()+"分)</font></td>";
								strPaperContent=strPaperContent+"</tr>";
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="单选类")
								{
									intOptionNum=Convert.ToInt32(SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionNum"]);
									strArrOptionContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionContent"].ToString().Split('|');
									for(k=1;k<=intOptionNum;k++)
									{
										strPaperContent=strPaperContent+"<tr>";
										if (SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf(Convert.ToChar(64+k))>=0)
										{
											strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='"+Convert.ToChar(64+k)+"' checked disabled>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";
										}
										else
										{
											strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='"+Convert.ToChar(64+k)+"' disabled>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";
										}
										strPaperContent=strPaperContent+"</tr>";
									}
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="多选类")
								{
									intOptionNum=Convert.ToInt32(SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionNum"]);
									strArrOptionContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionContent"].ToString().Split('|');
									for(k=1;k<=intOptionNum;k++)
									{
										strPaperContent=strPaperContent+"<tr>";
										if (SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf(Convert.ToChar(64+k))>=0)
										{
											strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><input type='checkbox' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='"+Convert.ToChar(64+k)+"' checked disabled>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";
										}
										else
										{
											strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><input type='checkbox' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='"+Convert.ToChar(64+k)+"' disabled>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";
										}
										strPaperContent=strPaperContent+"</tr>";
									}
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="判断类")
								{
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td width='10' nowrap>";
									if (SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf("正确")>=0)
									{
										strPaperContent=strPaperContent+"<td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='正确' checked disabled>正确</td>";
									}
									else
									{
										strPaperContent=strPaperContent+"<td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='正确' disabled>正确</td>";
									}
									strPaperContent=strPaperContent+"</tr>";
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td width='10' nowrap>";
									if (SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf("谬误")>=0)
									{
										strPaperContent=strPaperContent+"<td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='谬误' checked disabled>谬误</td>";
									}
									else
									{
										strPaperContent=strPaperContent+"<td width='100%'><input type='radio' id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' value='谬误' disabled>谬误</td>";
									}
									strPaperContent=strPaperContent+"</tr>";
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="填空类")
								{
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="问答类")
								{
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><TEXTAREA rows=6 cols=40 id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' style='width:100%' class=Text readonly>"+SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString()+"</TEXTAREA></td>";
									strPaperContent=strPaperContent+"</tr>";
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="作文类")
								{
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><TEXTAREA rows=10 cols=40 id='Answer"+intTestNum.ToString()+"' name='Answer"+intTestNum.ToString()+"' style='width:100%' class=Text readonly>"+SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString()+"</TEXTAREA></td>";
									strPaperContent=strPaperContent+"</tr>";
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="打字类")
								{
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="操作类")
								{
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td width='10px' nowrap><td width='100%'><a href='../PersonInfo/DownLoadFile.aspx?UserScoreID="+intUserScoreID+"&RubricID="+SqlDSTest.Tables["UserAnswer"].Rows[j]["RubricID"].ToString()+"' title='点击下载'>下载文件:</a><b>"+SqlDSTest.Tables["UserAnswer"].Rows[j]["TestFileName"].ToString()+"</b></td>";
									strPaperContent=strPaperContent+"</tr>";
								}
								if (SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="打字类")
								{
									strArrTypeStandardAnswer=SqlDSTest.Tables["UserAnswer"].Rows[j]["StandardAnswer"].ToString().Split(',');
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>尺度答案:尺度快率:"+strArrTypeStandardAnswer[1]+"个字/分钟&nbsp;正确率:100%</font></td>";
									strPaperContent=strPaperContent+"</tr>";

									if (SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf(",")>=0)
									{
										strArrTypeUserAnswer=SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().Split(',');
									}
									else
									{
										strArrTypeUserAnswer="0,0".Split(',');
									}
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>考生答案:打字快率:"+strArrTypeUserAnswer[0]+"个字/分钟&nbsp;正确率:"+strArrTypeUserAnswer[1]+"%</font></td>";
									strPaperContent=strPaperContent+"</tr>";
								}
								else
								{
									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>尺度答案:"+SqlDSTest.Tables["UserAnswer"].Rows[j]["StandardAnswer"].ToString()+"</font></td>";
									strPaperContent=strPaperContent+"</tr>";

									strPaperContent=strPaperContent+"<tr>";
									strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>考生答案:"+SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString()+"</font></td>";
									strPaperContent=strPaperContent+"</tr>";
								}

								strPaperContent=strPaperContent+"<tr>";
								if (Convert.ToDouble(SqlDSTest.Tables["UserAnswer"].Rows[j]["UserScore"])==0)
								{
									strPaperContent=strPaperContent+"<td colspan='2'><font color='red'>本题得分:"+SqlDSTest.Tables["UserAnswer"].Rows[j]["UserScore"].ToString()+"</font></td>";
								}
								else
								{
									strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>本题得分:"+SqlDSTest.Tables["UserAnswer"].Rows[j]["UserScore"].ToString()+"</font></td>";
								}
								strPaperContent=strPaperContent+"</tr>";

								strPaperContent=strPaperContent+"<tr>";
								strPaperContent=strPaperContent+"<td colspan='2'><font color='blue'>试题解析:"+SqlDSTest.Tables["UserAnswer"].Rows[j]["TestParse"].ToString()+"</font></td>";
								strPaperContent=strPaperContent+"</tr>";

								strPaperContent=strPaperContent+"<tr>";
								strPaperContent=strPaperContent+"<td colspan='2' height='10'></td>";
								strPaperContent=strPaperContent+"</tr>";
							}
						}
						strPaperContent=strPaperContent+"</table>";
						strPaperContent=strPaperContent+"</td>";
						strPaperContent=strPaperContent+"</tr>";
					}

					SqlConn.Close();
					SqlConn.Dispose();
				}
			//}
		}
		#endregion

		#region Web 窗体设计器天生的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该挪用是 ASP.NET Web 窗体设计器所必须的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的步骤 - 不要使用代码编纂器批改
		/// 此步骤的内容。
		/// </summary>
		private void InitializeComponent()
		{    

		}
		#endregion

		#region
		protected void RadioButAll_CheckedChanged(object sender, System.EventArgs e)
		{
			Page_Load(sender,e);
		}
		#endregion

		#region
		protected void RadioButWrong_CheckedChanged(object sender, System.EventArgs e)
		{
			Page_Load(sender,e);
		}
		#endregion
	}
}


#line default
#line hidden