protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ViewState["ID"] = Request.QueryString.Get("id"); ViewState["TypeID"] = Request.QueryString.Get("itemTypeID"); ViewState["BookChapterID"] = Request.QueryString.Get("BookChapterID"); ViewState["RangeType"] = Request.QueryString.Get("RangeType"); ViewState["ExamID"] = Request.QueryString.Get("examId"); ViewState["exculdeIDs"] = Request.QueryString.Get("exculdeIDs"); ViewState["subjectId"] = Request.QueryString.Get("subjectId"); HasExamId(); ViewState["ChooseId"] = ViewState["HasExamId"].ToString(); if (ViewState["RangeType"].ToString() == "4") { BookChapterBLL bookChapterBll = new BookChapterBLL(); BookChapter bookChapter = bookChapterBll.GetBookChapter(Convert.ToInt32(ViewState["BookChapterID"])); lblChapterName.Text = bookChapter.NamePath; } else { BookBLL bookBll = new BookBLL(); RailExam.Model.Book book = bookBll.GetBook(Convert.ToInt32(ViewState["BookChapterID"])); lblChapterName.Text = book.bookName; } ViewState["StartRow"] = 0; ViewState["EndRow"] = Grid1.PageSize; ViewState["EmploySortField"] = "nlssort(a.Item_ID,'NLS_SORT=SCHINESE_PINYIN_M')"; RecordCount = GetCount(); //计算总页数(加上OverPage()函数防止有余数造成显示数据不完整) PageCount = RecordCount / Grid1.PageSize + OverPage(); ViewState["RecordCount"] = RecordCount; //保存总页参数到ViewState(减去ModPage()函数防止SQL语句执行时溢出查询范围,可以用存储过程分页算法来理解这句) ViewState["PageCounts"] = RecordCount / Grid1.PageSize - ModPage(); //保存一个为0的页面索引值到ViewState ViewState["PageIndex"] = 0; //保存PageCount到ViewState,跳页时判断用户输入数是否超出页码范围 ViewState["JumpPages"] = PageCount; //显示LPageCount、LRecordCount的状态 this.lbPageCount.Text = PageCount.ToString(); this.lbRecordCount.Text = RecordCount.ToString(); //判断跳页文本框失效 if (RecordCount <= Grid1.PageSize) { btnJumpPage.Enabled = false; } else { btnJumpPage.Enabled = true; } BindGrid(ViewState["EmploySortField"].ToString()); } }
//数据加载(新增进入) private void DataLoadForInsert(string bookID, string chapterID) { this.hfBookID.Value = bookID; this.hfChapterID.Value = chapterID; string chapterName = String.Empty; BookBLL bookBLL = new BookBLL(); RailExam.Model.Book book = bookBLL.GetBook(Int32.Parse(bookID)); if (book != null) { chapterName += book.bookName; } BookChapterBLL chapterBLL = new BookChapterBLL(); BookChapter chapter = chapterBLL.GetBookChapter(Int32.Parse(chapterID)); if (chapter != null) { chapterName += " " + chapter.ChapterName; } this.lblchapter.Text = chapterName; this.txtCreater.Text = PrjPub.CurrentLoginUser.EmployeeName; this.dateCreate.DateValue = DateTime.Now.Date.ToShortDateString(); this.dateOut.DateValue = (new DateTime(2050, 1, 1)).Date.ToShortDateString(); }
private void SaveBookCover(string bookid) { string strBookUrl = "../Book/" + bookid + "/cover.htm"; BookBLL objBill = new BookBLL(); objBill.UpdateBookUrl(Convert.ToInt32(bookid), strBookUrl); string srcPath = "../Online/Book/" + bookid + "/cover.htm"; RailExam.Model.Book obj = objBill.GetBook(Convert.ToInt32(bookid)); if (File.Exists(Server.MapPath(srcPath))) { File.Delete(Server.MapPath(srcPath)); } string str = "<link href='book.css' type='text/css' rel='stylesheet' />" + "<body oncontextmenu='return false' ondragstart='return false' onselectstart ='return false' oncopy='document.selection.empty()' onbeforecopy='return false'>" + "<br><br><br><br><br><br><br>" + "<div id='booktitle'>" + obj.bookName + "</div>" + "<br>" + "<br><br><br><br><br><br><br><br><br><br><br>" + "<div id='orgtitle'>" + obj.publishOrgName + "</div>" + "<br>" + "<div id='authortitle'></div>" + "</body>"; File.AppendAllText(Server.MapPath(srcPath), str, System.Text.Encoding.UTF8); BookChapterBLL objChapterBll = new BookChapterBLL(); objChapterBll.GetIndex(bookid); }
protected void tvBookChapterChangeCallBack_Callback(object sender, CallBackEventArgs e) { BookChapterBLL objBookChapter = new BookChapterBLL(); RailExam.Model.BookChapter obj = new RailExam.Model.BookChapter(); obj = objBookChapter.GetBookChapterInfo(int.Parse(e.Parameters[0])); int cout = tvBookChapter.FindNodeById(obj.ParentId.ToString()).Nodes.Count; if (e.Parameters[1] == "MoveUp") { if (obj.OrderIndex <= cout && obj.OrderIndex >= 2) { obj.OrderIndex--; if (e.Parameters[2] == "Edit") { obj.IsEdit = true; } else { obj.IsEdit = false; } objBookChapter.UpdateBookChapter(obj); obj = objBookChapter.GetBookChapter(int.Parse(tvBookChapter.FindNodeById(e.Parameters[0]).PreviousSibling.ID)); obj.OrderIndex++; objBookChapter.UpdateBookChapter(obj); } } if (e.Parameters[1] == "MoveDown") { if (obj.OrderIndex <= cout - 1 && obj.OrderIndex >= 1) { obj.OrderIndex++; if (e.Parameters[2] == "Edit") { obj.IsEdit = true; } else { obj.IsEdit = false; } objBookChapter.UpdateBookChapter(obj); obj = objBookChapter.GetBookChapter(int.Parse(tvBookChapter.FindNodeById(e.Parameters[0]).NextSibling.ID)); obj.OrderIndex--; objBookChapter.UpdateBookChapter(obj); } } if (e.Parameters[1] == "Insert") { int maxID = objBookChapter.GetMaxChapterIDByBookID(Convert.ToInt32(hfBookID.Value)); hfMaxID.Value = maxID.ToString(); hfMaxID.RenderControl(e.Output); } tvBookChapter.Nodes.Clear(); BindTree(); tvBookChapter.RenderControl(e.Output); }
private void BindTree() { //添加书名 BookBLL bookBLL = new BookBLL(); RailExam.Model.Book book = bookBLL.GetBook(Convert.ToInt32(ViewState["BookID"].ToString())); TreeViewNode tvn1 = new TreeViewNode(); tvn1.ID = "0"; tvn1.Value = ViewState["BookID"].ToString(); tvn1.Text = book.bookName; tvn1.ToolTip = book.bookName; tvBookChapter.Nodes.Add(tvn1); //添加章节 BookChapterBLL bookChapterBLL = new BookChapterBLL(); IList <RailExam.Model.BookChapter> bookChapterList = bookChapterBLL.GetBookChapterByBookID(Convert.ToInt32(ViewState["BookID"].ToString())); if (bookChapterList.Count > 0) { TreeViewNode tvn = null; foreach (RailExam.Model.BookChapter bookChapter in bookChapterList) { tvn = new TreeViewNode(); tvn.ID = bookChapter.ChapterId.ToString(); tvn.Value = bookChapter.BookId.ToString(); tvn.Text = bookChapter.ChapterName; tvn.ToolTip = bookChapter.ChapterName; if (bookChapter.ParentId == 0) { //tvBookChapter.Nodes.Add(tvn); tvBookChapter.FindNodeById(bookChapter.ParentId.ToString()).Nodes.Add(tvn); } else { try { tvBookChapter.FindNodeById(bookChapter.ParentId.ToString()).Nodes.Add(tvn); } catch { tvBookChapter.Nodes.Clear(); SessionSet.PageMessage = "数据错误!"; return; } } } } tvBookChapter.DataBind(); tvBookChapter.ExpandAll(); }
private ArrayList GetBookChapterList(int nBookID) { ArrayList objList = new ArrayList(); BookChapterBLL objBll = new BookChapterBLL(); IList <RailExam.Model.BookChapter> objBookChapterList = objBll.GetBookChapterByBookID(nBookID); foreach (RailExam.Model.BookChapter chapter in objBookChapterList) { objList.Add(chapter.ChapterId); } return(objList); }
protected void btnSend_Click(object sender, EventArgs e) { BookBLL objbll = new BookBLL(); BookChapterBLL objChapterbll = new BookChapterBLL(); IList <RailExam.Model.Book> objList = objbll.GetAllBookInfo(0); ArrayList objBookIDList = new ArrayList(); foreach (RailExam.Model.Book book in objList) { if (Directory.Exists(Server.MapPath("../Online/Book/" + book.bookId + "/"))) { SaveBookCover(book.bookId.ToString()); objChapterbll.GetIndex(book.bookId.ToString()); } } SessionSet.PageMessage = "发布成功!"; }
protected void fvBookChapter_ItemUpdating(object sender, FormViewUpdateEventArgs e) { string strId = e.Keys["ChapterId"].ToString(); bool isMotherItem = Convert.ToBoolean(e.NewValues["IsMotherItem"]); int ParentId = Convert.ToInt32(e.NewValues["ParentId"]); string strName = e.NewValues["ChapterName"].ToString(); int bookID = Convert.ToInt32(e.NewValues["BookId"]); if (isMotherItem) { BookChapterBLL objBll = new BookChapterBLL(); //RailExam.Model.BookChapter chapter = objBll.GetBookChapter(Convert.ToInt32(strId)); //if(chapter.ParentId == 0) //{ // SessionSet.PageMessage = "章不能为复习要点!"; // e.Cancel = true; // ClientScript.RegisterStartupScript(GetType(), "jsSelectFirstNode", @"setImageBtnVisiblityUpdate()", true); // return; //} IList <RailExam.Model.BookChapter> objList = objBll.GetBookChapterByParentID(Convert.ToInt32(strId)); if (objList.Count > 0) { SessionSet.PageMessage = "当前节点存在下级节点,不能设置为复习要点!"; e.Cancel = true; ClientScript.RegisterStartupScript(GetType(), "jsSelectFirstNode", @"setImageBtnVisiblityUpdate()", true); return; } OracleAccess db = new OracleAccess(); DataSet ds = db.RunSqlDataSet("select * from Book_Chapter where Chapter_ID<>" + strId + " and Book_ID=" + bookID + " and Chapter_Name='" + strName + "'"); if (ds.Tables[0].Rows.Count > 0) { SessionSet.PageMessage = "同一教材下复习要点名称不能重复!"; e.Cancel = true; ClientScript.RegisterStartupScript(GetType(), "jsSelectFirstNode", @"setImageBtnVisiblityInsert()", true); return; } } }
private void FillExcludeCategorysID(string strIDs) { string strName = string.Empty; string[] str1 = strIDs.Split(new char[] { ',' }); for (int i = 0; i < str1.Length; i++) { if (i > 0) { strName += ","; } BookChapterBLL bookChapterBLL = new BookChapterBLL(); BookChapter bookChapter = bookChapterBLL.GetBookChapter(int.Parse(str1[i])); strName += bookChapter.ChapterName; } txtExCludeChapters.Text = strName; }
private void BindKnowledgeTree() { #region Bind knowledge tree KnowledgeBLL knowledgeBLL = new KnowledgeBLL(); IList <RailExam.Model.Knowledge> knowledgeList = knowledgeBLL.GetKnowledges(); if (knowledgeList.Count > 0) { TreeViewNode tvn = null; BookBLL bookBLL = new BookBLL(); foreach (RailExam.Model.Knowledge knowledge in knowledgeList) { tvn = new TreeViewNode(); tvn.ID = "knowledge" + knowledge.KnowledgeId.ToString(); tvn.Value = knowledge.IdPath; tvn.Text = knowledge.KnowledgeName; tvn.ToolTip = knowledge.KnowledgeName; tvn.Attributes.Add("isKnowledge", "true"); tvn.ImageUrl = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Knowledge.gif"; //tvn.ContentCallbackUrl = "/RailExamBao/Common/GetKnowledgeBook.aspx?item=no&id=" + knowledge.IdPath; if (knowledge.ParentId == 0) { tvView.Nodes.Add(tvn); } else { try { tvView.FindNodeById("knowledge" + knowledge.ParentId.ToString()).Nodes.Add(tvn); IList <RailExam.Model.Knowledge> objList = knowledgeBLL.GetKnowledgesByParentID(knowledge.KnowledgeId); if (objList.Count == 0) { IList <RailExam.Model.Book> bookList = bookBLL.GetBookByKnowledgeIDPath(knowledge.IdPath); if (bookList.Count > 0) { foreach (RailExam.Model.Book book in bookList) { tvn = new TreeViewNode(); tvn.ID = "book" + book.bookId.ToString(); tvn.Value = book.bookId.ToString(); tvn.Text = book.bookName; tvn.ToolTip = book.bookName; tvn.Attributes.Add("isBook", "true"); tvn.ImageUrl = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Book.gif"; tvView.FindNodeById("knowledge" + knowledge.KnowledgeId.ToString()).Nodes.Add(tvn); //Ìí¼ÓÕÂ½Ú BookChapterBLL bookChapterBLL = new BookChapterBLL(); IList <RailExam.Model.BookChapter> bookChapterList = bookChapterBLL.GetBookChapterByBookID(book.bookId); if (bookChapterList.Count > 0) { foreach (RailExam.Model.BookChapter bookChapter in bookChapterList) { tvn = new TreeViewNode(); tvn.ID = "chapter" + bookChapter.ChapterId.ToString(); tvn.Value = bookChapter.BookId.ToString(); tvn.Text = bookChapter.ChapterName; tvn.ToolTip = bookChapter.ChapterName; tvn.Attributes.Add("isChapter", "true"); tvn.ImageUrl = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Chapter.gif"; if (bookChapter.ParentId == 0) { tvView.FindNodeById("book" + bookChapter.BookId).Nodes.Add(tvn); } else { tvView.FindNodeById("chapter" + bookChapter.ParentId.ToString()).Nodes.Add(tvn); } } } } } } } catch { tvView.Nodes.Clear(); SessionSet.PageMessage = "Êý¾Ý´íÎó£¡"; return; } } } } #endregion }
protected void btnInput_Click(object sender, EventArgs e) { string strSql; for (int i = 0; i < gvBook.Rows.Count; i++) { CheckBox chk = (CheckBox)gvBook.Rows[i].FindControl("chSelect"); HiddenField hfKownledgeName = (HiddenField)gvBook.Rows[i].FindControl("hfKownledgeName"); HiddenField hfKownledgeId = (HiddenField)gvBook.Rows[i].FindControl("hfKownledgeId"); HiddenField hfTrainTypeName = (HiddenField)gvBook.Rows[i].FindControl("hfTrainTypeName"); HiddenField hfTrainTypeID = (HiddenField)gvBook.Rows[i].FindControl("hfTrainTypeID"); if (chk.Checked && hfKownledgeName.Value.Trim() == "") { SessionSet.PageMessage = "请选择教材体系!"; return; } if (chk.Checked && hfTrainTypeName.Value.Trim() == "") { SessionSet.PageMessage = "请选择培训类别!"; return; } if (chk.Checked) { strSql = "select a.*,b.Short_Name from Book a inner join Org b on a.Publish_Org=b.Org_ID where a.Book_ID=" + gvBook.DataKeys[i].Value.ToString(); DataSet ds = RunSqlDataSet(strSql); DataRow dr = ds.Tables[0].Rows[0]; BookBLL bookBLL = new BookBLL(); RailExam.Model.Book book = new RailExam.Model.Book(); book.bookId = Convert.ToInt32(dr["Book_ID"].ToString()); string strPath = Server.MapPath(ConfigurationManager.AppSettings["BookDesigner"].ToString() + book.bookId + "/"); string strAimPath = Server.MapPath("../Online/Book/" + book.bookId + "/"); if (!Directory.Exists(strPath)) { SessionSet.PageMessage = "有教材还未创建内容,暂不能导入!"; return; } book.bookName = dr["Book_Name"].ToString(); book.bookNo = dr["Book_No"].ToString(); book.authors = dr["Authors"].ToString(); book.bookmaker = dr["BookMaker"].ToString(); book.publishOrg = Convert.ToInt32(dr["Publish_Org"].ToString()); book.publishOrgName = dr["Short_Name"].ToString(); book.revisers = dr["Revisers"].ToString(); book.coverDesigner = dr["Cover_Designer"].ToString(); book.keyWords = dr["Keywords"].ToString(); book.pageCount = Convert.ToInt32(dr["Page_Count"].ToString()); book.wordCount = Convert.ToInt32(dr["Word_Count"].ToString()); book.Description = dr["Description"].ToString(); book.url = "../Book/" + dr["Book_ID"].ToString() + "/index.html"; book.Memo = dr["Remark"].ToString(); book.knowledgeId = Convert.ToInt32(hfKownledgeId.Value); book.knowledgeName = hfKownledgeName.Value; ArrayList typeIDAL = new ArrayList(); string[] strTypeID = hfTrainTypeID.Value.Split(','); for (int j = 0; j < strTypeID.Length; j++) { typeIDAL.Add(strTypeID[j]); } book.trainTypeidAL = typeIDAL; bookBLL.AddBook(book); strSql = "select * from Book_Chapter where Book_ID=" + gvBook.DataKeys[i].Value.ToString() + " order by Level_Num,Order_Index"; ds = RunSqlDataSet(strSql); BookChapterBLL bookChapterBll = new BookChapterBLL(); foreach (DataRow dr1 in ds.Tables[0].Rows) { RailExam.Model.BookChapter bookChapter = new RailExam.Model.BookChapter(); bookChapter.ChapterId = Convert.ToInt32(dr1["Chapter_ID"].ToString()); bookChapter.BookId = Convert.ToInt32(dr1["Book_ID"].ToString()); bookChapter.ChapterName = dr1["Chapter_Name"].ToString(); bookChapter.ParentId = Convert.ToInt32(dr1["Parent_ID"].ToString()); bookChapter.LevelNum = Convert.ToInt32(dr1["Level_Num"].ToString()); bookChapter.OrderIndex = Convert.ToInt32(dr1["Order_Index"].ToString()); bookChapter.ReferenceRegulation = dr1["REFERENCE_REGULATION"].ToString(); bookChapter.Description = dr1["Description"].ToString(); bookChapter.Memo = dr1["Remark"].ToString(); bookChapter.Url = "../Book/" + dr1["Book_ID"].ToString() + "/" + dr1["Chapter_ID"].ToString() + ".htm"; bookChapterBll.AddBookChapter(bookChapter); } CopyTemplate(strPath, strAimPath); } } BindGrid(); }
protected void Page_Load(object sender, EventArgs e) { hfChapterID.Value = Request.QueryString["id"]; hfIsWuhan.Value = PrjPub.IsWuhan().ToString(); if (fvBookChapter.CurrentMode == FormViewMode.Insert) { if (hfInsert.Value == "-1") { ((HiddenField)fvBookChapter.FindControl("hfParentID")).Value = Request.QueryString["ParentID"]; ((HiddenField)fvBookChapter.FindControl("hfBookID")).Value = Request.QueryString["BookID"]; } else { ((HiddenField)fvBookChapter.FindControl("hfParentId")).Value = hfInsert.Value; ((HiddenField)fvBookChapter.FindControl("hfBookID")).Value = Request.QueryString["BookID"]; } if (Request.QueryString["Mode"] == "Edit") { ((HiddenField)fvBookChapter.FindControl("hfIsEdit")).Value = "true"; } else { ((HiddenField)fvBookChapter.FindControl("hfIsEdit")).Value = "false"; } } else if (fvBookChapter.CurrentMode == FormViewMode.Edit) { if (Request.QueryString["Mode"] == "Edit") { ((HiddenField)fvBookChapter.FindControl("hfIsEdit")).Value = "true"; } else { ((HiddenField)fvBookChapter.FindControl("hfIsEdit")).Value = "false"; } } string strRefresh = Request.Form.Get("Refresh"); if (strRefresh != null & strRefresh != "") { string strPath = "../Online/Book/" + Request.QueryString["BookID"].ToString() + "/" + Request.QueryString["id"].ToString() + ".htm"; BookChapterBLL objBill = new BookChapterBLL(); objBill.UpdateBookChapterUrl(Convert.ToInt32(Request.QueryString["id"].ToString()), strPath); RailExam.Model.BookChapter objBookChapter = objBill.GetBookChapter(Convert.ToInt32(Request.QueryString["id"].ToString())); string strChapterName = objBookChapter.ChapterName; string str = File.ReadAllText(Server.MapPath(strPath), Encoding.UTF8); if (str.IndexOf("chaptertitle") < 0) { if (objBookChapter.LevelNum < 3) { str = "<link href='book.css' type='text/css' rel='stylesheet' />" + "<body oncontextmenu='return false' ondragstart='return false' onselectstart ='return false' oncopy='document.selection.empty()' onbeforecopy='return false'>" + "<div id='chaptertitle" + objBookChapter.LevelNum + "'>" + strChapterName + "</div>" + "<br>" + str + "</body>"; } else { str = "<link href='book.css' type='text/css' rel='stylesheet' />" + "<body oncontextmenu='return false' ondragstart='return false' onselectstart ='return false' oncopy='document.selection.empty()' onbeforecopy='return false'>" + "<div id='chaptertitle3'>" + strChapterName + "</div>" + "<br>" + str + "</body>"; } File.WriteAllText(Server.MapPath(strPath), str, Encoding.UTF8); } BookBLL objBookBill = new BookBLL(); if (Request.QueryString.Get("Mode") == "Edit") { objBookBill.UpdateBookVersion(Convert.ToInt32(Request.QueryString["BookID"].ToString())); } string strBookName = objBookBill.GetBook(Convert.ToInt32(Request.QueryString["BookID"].ToString())).bookName; SystemLogBLL objLogBll = new SystemLogBLL(); objLogBll.WriteLog("编辑教材《" + strBookName + "》中“" + strChapterName + "”的章节内容"); fvBookChapter.DataBind(); Grid1.DataBind(); objBill.GetIndex(Request.QueryString["BookID"].ToString()); ItemBLL objBll = new ItemBLL(); IList <RailExam.Model.Item> objList = objBll.GetItemsByBookChapterId(Convert.ToInt32(Request.QueryString["BookID"]), Convert.ToInt32(Request.QueryString["id"]), 0, 0); if (objList.Count > 0) { ClientScript.RegisterStartupScript(GetType(), "jsSelectFirstNode", @"var ret = window.showModalDialog('/RailExamBao/Book/ItemEnabled.aspx?BookID=" + Request.QueryString["BookID"] + @"&ChapterID=" + Request.QueryString["id"] + @"','','help:no; status:no;dialogWidth:300px;dialogHeight:120px;');", true); } } string strRefreshGrid = Request.Form.Get("RefreshGrid"); if (strRefreshGrid != null & strRefreshGrid != "") { fvBookChapter.DataBind(); Grid1.DataBind(); } string strDeleteBookChapterUpdateID = Request.Form.Get("DeleteBookChapterUpdateID"); if (!string.IsNullOrEmpty(strDeleteBookChapterUpdateID)) { DeleteData(int.Parse(strDeleteBookChapterUpdateID)); Grid1.DataBind(); } }
protected void tvBookChapterChangeCallBack_Callback(object sender, CallBackEventArgs e) { BookChapterBLL objBookChapter = new BookChapterBLL(); RailExam.Model.BookChapter obj = new RailExam.Model.BookChapter(); obj = objBookChapter.GetBookChapterInfo(int.Parse(e.Parameters[0])); int cout = tvBookChapter.FindNodeById(obj.ParentId.ToString()).Nodes.Count; if (e.Parameters[1] == "MoveUp") { if (obj.OrderIndex <= cout && obj.OrderIndex >= 2) { obj.OrderIndex--; if (e.Parameters[2] == "Edit") { obj.IsEdit = true; } else { obj.IsEdit = false; } objBookChapter.UpdateBookChapter(obj); obj = objBookChapter.GetBookChapter(int.Parse(tvBookChapter.FindNodeById(e.Parameters[0]).PreviousSibling.ID)); obj.OrderIndex++; objBookChapter.UpdateBookChapter(obj); } } if (e.Parameters[1] == "MoveDown") { if (obj.OrderIndex <= cout - 1 && obj.OrderIndex >= 1) { obj.OrderIndex++; if (e.Parameters[2] == "Edit") { obj.IsEdit = true; } else { obj.IsEdit = false; } objBookChapter.UpdateBookChapter(obj); obj = objBookChapter.GetBookChapter(int.Parse(tvBookChapter.FindNodeById(e.Parameters[0]).NextSibling.ID)); obj.OrderIndex--; objBookChapter.UpdateBookChapter(obj); } } if (e.Parameters[1] == "Insert") { string strSql = "select Max(Chapter_Id) from Book_Chapter where Book_ID=" + hfBookID.Value + " and Parent_ID=" + e.Parameters[0]; OracleAccess db = new OracleAccess(); DataSet ds = db.RunSqlDataSet(strSql); hfMaxID.Value = ds.Tables[0].Rows[0][0].ToString(); hfMaxID.RenderControl(e.Output); } tvBookChapter.Nodes.Clear(); BindTree(); tvBookChapter.RenderControl(e.Output); }
protected void SaveButton_Click(object sender, EventArgs e) { BookUpdateBLL BookUpdateBLL = new BookUpdateBLL(); BookUpdate BookUpdate = new BookUpdate(); string strUpdateObject = Request.QueryString.Get("Object"); if (txtCause.Text == string.Empty) { SessionSet.PageMessage = "更改原因不能为空!"; return; } if (txtContent.Text == string.Empty) { SessionSet.PageMessage = "更改内容不能为空!"; return; } if (ViewState["AddFlag"].ToString() == "1") //新增 { BookBLL objBookBll = new BookBLL(); BookUpdate.BookId = int.Parse(ViewState["BookID"].ToString()); BookUpdate.ChapterId = int.Parse(ViewState["ChapterID"].ToString()); BookUpdate.updatePerson = lblPerson.Text; BookUpdate.updateDate = DateTime.Parse(lblDate.Text); BookUpdate.updateCause = txtCause.Text; BookUpdate.updateContent = txtContent.Text; BookUpdate.Memo = txtMemo.Text; BookUpdate.BookNameBak = objBookBll.GetBook(Convert.ToInt32(ViewState["BookID"].ToString())).bookName; if (ViewState["ChapterID"].ToString() != "0") { BookChapterBLL objChapterBll = new BookChapterBLL(); BookUpdate.ChapterNameBak = objChapterBll.GetBookChapter(Convert.ToInt32(ViewState["ChapterID"].ToString())).ChapterName; } if (strUpdateObject == "insertchapterinfo") { BookUpdate.ChapterNameBak = Server.UrlDecode(Request.QueryString.Get("newchaptername")); BookUpdate.UpdateObject = PrjPub.BOOKUPDATEOBJECT_INSERTCHAPTERINFO; } else if (strUpdateObject == "updatechapterinfo") { BookUpdate.UpdateObject = PrjPub.BOOKUPDATEOBJECT_UPDATECHAPTERINFO; } else if (strUpdateObject == "chaptercontent") { BookUpdate.UpdateObject = PrjPub.BOOKUPDATEOBJECT_CHAPTERCONTENT; } else if (strUpdateObject == "delbook") { BookUpdate.UpdateObject = PrjPub.BOOKUPDATEOBJECT_DELBOOK; } else if (strUpdateObject == "delchapter") { BookUpdate.UpdateObject = PrjPub.BOOKUPDATEOBJECT_DELCHAPTER; } else { BookUpdate.UpdateObject = lblChapterName.Text; } BookUpdateBLL.AddBookUpdate(BookUpdate); Response.Write("<script>top.returnValue='true';window.close();</script>"); } else //修改 { BookUpdate.BookId = int.Parse(ViewState["BookID"].ToString()); BookUpdate.ChapterId = int.Parse(ViewState["ChapterID"].ToString()); BookUpdate.updatePerson = lblPerson.Text; BookUpdate.updateDate = DateTime.Parse(lblDate.Text); BookUpdate.updateCause = txtCause.Text; BookUpdate.updateContent = txtContent.Text; BookUpdate.Memo = txtMemo.Text; BookUpdate.bookUpdateId = int.Parse(Request.QueryString.Get("id")); BookUpdateBLL.UpdateBookUpdate(BookUpdate); if (PrjPub.IsWuhan()) { Response.Write("<script>window.opener.form1.RefreshGrid.value='true';window.opener.form1.submit();window.close();</script>"); } else { Response.Write("<script>top.returnValue='true';window.close();</script>"); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (PrjPub.CurrentLoginUser == null) { Response.Redirect("/RailExamBao/Common/Error.aspx?error=Session过期请重新登录本系统!"); return; } string strMode = Request.QueryString.Get("Mode"); if (strMode != "" && strMode != null && strMode == "ReadOnly") { btnSave.Visible = false; CancelButton.Visible = true; } else { btnSave.Visible = true; CancelButton.Visible = false; } string strUpdateObject = Request.QueryString.Get("Object"); string strBookChapterUpdateID = Request.QueryString.Get("id"); string bookID = Request.QueryString.Get("BookID"); string chapterID = Request.QueryString.Get("ChapterID"); ViewState["BookID"] = bookID; ViewState["ChapterID"] = chapterID; string chapterName = ""; if (!string.IsNullOrEmpty(strBookChapterUpdateID)) //修改 { FillPage(int.Parse(strBookChapterUpdateID)); } else { if (ViewState["ChapterID"].ToString() != "0") { BookChapterBLL objChapterBll = new BookChapterBLL(); chapterName = objChapterBll.GetBookChapter(Convert.ToInt32(chapterID)).ChapterName; } BookBLL objBook = new BookBLL(); lblBookName.Text = objBook.GetBook(Convert.ToInt32(bookID)).bookName; lblPerson.Text = PrjPub.CurrentLoginUser.EmployeeName; lblDate.Text = DateTime.Today.ToLongDateString(); if (strUpdateObject == "delbook") { lblChapterName.Text = "删除教材《" + lblBookName.Text + "》"; } else if (strUpdateObject == "delchapter") { lblChapterName.Text = "删除章节" + chapterName; } else if (strUpdateObject == "insertchapterinfo") { chapterName = Server.UrlDecode(Request.QueryString.Get("newchaptername")); lblChapterName.Text = "新增《" + chapterName + "》章节基本信息"; } else if (strUpdateObject == "bookinfo") { lblChapterName.Text = PrjPub.BOOKUPDATEOBJECT_BOOKINFO; } else if (strUpdateObject == "bookcover") { lblChapterName.Text = PrjPub.BOOKUPDATEOBJECT_BOOKCOVER; } else if (strUpdateObject == "updatechapterinfo") { lblChapterName.Text = "修改《" + chapterName + "》章节基本信息"; } else if (strUpdateObject == "chaptercontent") { lblChapterName.Text = "《" + chapterName + "》" + PrjPub.BOOKUPDATEOBJECT_CHAPTERCONTENT; } ViewState["AddFlag"] = 1; } } }
private void BindTree() { string strBookID = Request.QueryString.Get("BookID"); string strSelectedID = Request.QueryString.Get("StrategyID"); string strItemTypeID = Request.QueryString.Get("itemTypeID"); BookBLL objBll = new BookBLL(); RailExam.Model.Book obj = objBll.GetBook(Convert.ToInt32(strBookID)); ItemBLL objItemBll = new ItemBLL(); TreeViewNode node = new TreeViewNode(); int m = objItemBll.GetItemsByBookID(obj.bookId, Convert.ToInt32(strItemTypeID)); if (m > 0) { node.Text = obj.bookName + "£¨" + m + "Ì⣩"; } else { node.Text = obj.bookName; } node.ID = obj.bookId.ToString(); tvBook.Nodes.Add(node); BookChapterBLL objChapterBll = new BookChapterBLL(); IList <RailExam.Model.BookChapter> objChapterList = objChapterBll.GetBookChapterByBookID(Convert.ToInt32(strBookID)); TreeViewNode tvn = null; foreach (BookChapter bookChapter in objChapterList) { if (bookChapter.IsMotherItem) { continue; } tvn = new TreeViewNode(); tvn.ID = bookChapter.ChapterId.ToString(); tvn.Value = bookChapter.ChapterId.ToString(); int n = objItemBll.GetItemsByBookChapterIdPath(bookChapter.IdPath, Convert.ToInt32(strItemTypeID)); if (n > 0) { tvn.Text = bookChapter.ChapterName + "£¨" + n + "Ì⣩"; } else { tvn.Text = bookChapter.ChapterName; } tvn.ToolTip = bookChapter.ChapterName; tvn.ShowCheckBox = true; if (Request.QueryString.Get("StrategyID") != null) { string str = "," + strSelectedID + ","; if (str.IndexOf("," + tvn.ID + ",") != -1) { tvn.Checked = true; } } tvn.Attributes.Add("isChapter", "true"); tvn.ImageUrl = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Chapter.gif"; if (bookChapter.ParentId == 0) { tvBook.FindNodeById(bookChapter.BookId.ToString()).Nodes.Add(tvn); } else { tvBook.FindNodeById(bookChapter.ParentId.ToString()).Nodes.Add(tvn); } } if (tvBook.Nodes.Count > 0) { tvBook.Nodes[0].Expanded = true; } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (PrjPub.CurrentLoginUser == null) { Response.Redirect("/RailExamBao/Common/Error.aspx?error=Session过期请重新登录本系统!"); return; } string strMode = Request.QueryString.Get("mode"); string strBookId = Request.QueryString.Get("bid"); string strChapterId = Request.QueryString.Get("cid"); switch (strMode) { case "readonly": { if (fvItem.CurrentMode != FormViewMode.ReadOnly) { fvItem.ChangeMode(FormViewMode.ReadOnly); } break; } case "insert": { if (PrjPub.CurrentLoginUser.SuitRange == 0 && PrjPub.IsServerCenter) { BookBLL bookBLL = new BookBLL(); RailExam.Model.Book objBook = bookBLL.GetBook(Convert.ToInt32(strBookId)); if (PrjPub.CurrentLoginUser.StationOrgID != objBook.publishOrg) { Response.Write("<script>alert('您没有新增当前教材章节试题的权限!');window.close();</script>"); return; } } if (fvItem.CurrentMode != FormViewMode.Insert) { fvItem.ChangeMode(FormViewMode.Insert); } if (!string.IsNullOrEmpty(strBookId) && !string.IsNullOrEmpty(strChapterId)) { int employeeID = PrjPub.CurrentLoginUser.EmployeeID; ItemConfigBLL itemConfigBLL = new ItemConfigBLL(); RailExam.Model.ItemConfig itemConfig = itemConfigBLL.GetItemConfig(employeeID); ((DropDownList)fvItem.FindControl("ddlItemTypeInsert")).SelectedValue = itemConfig.DefaultTypeId.ToString(); ((DropDownList)fvItem.FindControl("ddlItemDifficultyInsert")).SelectedValue = itemConfig.DefaultDifficultyId.ToString(); ((TextBox)fvItem.FindControl("txtDefaultScoreInsert")).Text = itemConfig.DefaultScore.ToString(".00"); ((TextBox)fvItem.FindControl("txtCompleteTimeInsert")).Text = CommonTool.ConvertSecondsToTimeString(itemConfig.DefaultCompleteTime); ((TextBox)fvItem.FindControl("txtCreatePersonInsert")).Text = PrjPub.CurrentLoginUser.EmployeeName; ((DropDownList)fvItem.FindControl("ddlAnswerCountInsert")).SelectedValue = itemConfig.DefaultAnswerCount.ToString(); ((DropDownList)fvItem.FindControl("ddlStatusInsert")).SelectedValue = itemConfig.DefaultStatusId.ToString(); ((DropDownList)fvItem.FindControl("ddlHasPictureInsert")).SelectedValue = itemConfig.HasPicture.ToString(); ((HiddenField)fvItem.FindControl("hfBookId")).Value = strBookId; ((HiddenField)fvItem.FindControl("hfChapterId")).Value = strChapterId; ((HiddenField)fvItem.FindControl("hfCategoryId")).Value = "-1"; BookBLL objBll = new BookBLL(); string bookName = objBll.GetBook(Convert.ToInt32(strBookId)).bookName; BookChapterBLL objChapterBll = new BookChapterBLL(); string chapterName = objChapterBll.GetBookChapter(Convert.ToInt32(strChapterId)).NamePath; ((TextBox)fvItem.FindControl("txtBookChapterInsert")).Text = bookName + ">>" + chapterName; if (PrjPub.CurrentLoginUser != null && PrjPub.CurrentLoginUser.StationOrgID > 0) { ((HiddenField)fvItem.FindControl("hfOrganizationId")).Value = PrjPub.CurrentLoginUser.StationOrgID.ToString(); } if (itemConfig.DefaultOutDateDate != DateTime.MinValue) { ((Date)fvItem.FindControl("dateOutDateDateInsert")).DateValue = itemConfig.DefaultOutDateDate.ToString("yyyy-MM-dd"); } ((Date)fvItem.FindControl("dateCreateTimeInsert")).DateValue = DateTime.Today.ToString("yyyy-MM-dd"); } break; } case "edit": { //if(PrjPub.CurrentLoginUser.SuitRange == 0 && PrjPub.IsServerCenter) //{ // int itemID = Convert.ToInt32(Request.QueryString.Get("id")); // ItemBLL itemBLL = new ItemBLL(); // RailExam.Model.Item objItem = itemBLL.GetItem(itemID); // BookBLL bookBLL = new BookBLL(); // RailExam.Model.Book objBook = bookBLL.GetBook(objItem.BookId); // if(PrjPub.CurrentLoginUser.StationOrgID != objBook.publishOrg) // { // Response.Write("<script>alert('您没有修改该试题的权限!');window.close();</script>"); // return; // } //} if (fvItem.CurrentMode != FormViewMode.Edit) { fvItem.ChangeMode(FormViewMode.Edit); } break; } default: { break; } } } }
private void BindBookTree() { tvBook.Nodes.Clear(); BookBLL objBookBll = new BookBLL(); IList <RailExam.Model.Book> objBookList = null; if (Request.QueryString.Get("StandardID") != null && Request.QueryString.Get("StandardID") != "") { objBookList = objBookBll.GetTrainCourseBookChapterTree(Convert.ToInt32(ViewState["PostID"].ToString())); } else { objBookList = objBookBll.GetAllBookInfo(1); } ArrayList objList = GetChapterList(); if (objBookList.Count > 0) { TreeViewNode tvn = null; foreach (RailExam.Model.Book book in objBookList) { tvn = new TreeViewNode(); tvn.ID = book.bookId.ToString(); tvn.Value = book.bookId.ToString(); tvn.Text = book.bookName; tvn.ToolTip = book.bookName; tvn.ShowCheckBox = true; tvBook.Nodes.Add(tvn); if (objList.Count > 0) { if (objList.IndexOf(book.bookId.ToString()) != -1) { tvn.Checked = true; } } BookChapterBLL objBookChapterBll = new BookChapterBLL(); IList <RailExam.Model.BookChapter> objBookChapterList = objBookChapterBll.GetTrainCourseBookChapterTree(book.bookId); if (objBookChapterList.Count > 0) { foreach (BookChapter objBookChapter in objBookChapterList) { tvn = new TreeViewNode(); tvn.ID = objBookChapter.ChapterId.ToString(); tvn.Value = book.bookId.ToString(); tvn.Text = objBookChapter.ChapterName; tvn.ToolTip = objBookChapter.ChapterName; tvn.ShowCheckBox = true; if (objList.Count > 0) { if (objList.IndexOf(objBookChapter.ChapterId) != -1) { tvn.Checked = true; } } if (objBookChapter.ParentId == 0) { try { tvBook.FindNodeById(book.bookId.ToString()).Nodes.Add(tvn); } catch { tvBook.Nodes.Clear(); Response.Write("数据错误!"); return; } } else { try { tvBook.FindNodeById(objBookChapter.ParentId.ToString()).Nodes.Add(tvn); } catch { tvBook.Nodes.Clear(); Response.Write("数据错误!"); return; } } } } } } tvBook.DataBind(); tvBook.ExpandAll(); }
protected void btnShowMother_Click(object sender, EventArgs e) { #region 原母题 //改变教材章节,清空母题 string strSql = "delete from random_exam_strategy " + " where random_exam_strategy_id in (" + " select random_exam_strategy_id from " + " random_exam_strategy a " + " inner join Book_Chapter b on a.Range_ID =b.Chapter_ID " + " where a.Is_Mother_Item = 1 "; if (HfRangeType.Value == "3") { strSql += " and b.Book_ID=" + HfChapterId.Value; } else { strSql += " and b.ID_Path ||'/' like (select ID_Path from Book_Chapter where Chapter_ID=" + HfChapterId.Value + ") ||'/%' "; } //有屏蔽章节 if (!string.IsNullOrEmpty(HfExCludeChaptersId.Value)) { strSql += " and b.Chapter_ID not in (" + HfExCludeChaptersId.Value + ") "; } strSql += ")"; OracleAccess db = new OracleAccess(); db.ExecuteNonQuery(strSql); ItemBLL item = new ItemBLL(); BookChapterBLL bookChapterBll = new BookChapterBLL(); strSql = "select GetBookChapterName(Chapter_ID) ChapterName, Chapter_ID as ChapterId,ID_Path as IDPath" + " from Book_Chapter " + " where Is_Mother_Item=1"; int sumTotalCount = 0; if (HfRangeType.Value == "3") { strSql += " and Book_ID='" + HfChapterId.Value + "'"; sumTotalCount = item.GetItemsByBookID(Convert.ToInt32(HfChapterId.Value), Convert.ToInt32(hfItemType.Value)); } else { BookChapter bookChapter = bookChapterBll.GetBookChapter(Convert.ToInt32(HfChapterId.Value)); strSql += " and ID_Path||'/' like '" + bookChapter.IdPath + "/%'"; sumTotalCount = item.GetItemsByBookChapterIdPath(bookChapter.IdPath, Convert.ToInt32(hfItemType.Value)); } //有屏蔽章节 if (!string.IsNullOrEmpty(HfExCludeChaptersId.Value)) { strSql += " and Chapter_ID not in (" + HfExCludeChaptersId.Value + ")"; } DataSet ds = db.RunSqlDataSet(strSql); if (ds.Tables[0].Rows.Count == 0) { mother1.Visible = false; mother2.Visible = false; } else { mother1.Visible = true; mother2.Visible = true; DataColumn dc1 = ds.Tables[0].Columns.Add("MaxItemCount"); DataColumn dc2 = ds.Tables[0].Columns.Add("ItemCount"); DataColumn dc3 = ds.Tables[0].Columns.Add("RandomExamStrategyId"); int i = 1; int sumCount = 0; foreach (DataRow dr in ds.Tables[0].Rows) { dr["MaxItemCount"] = item.GetItemsByBookChapterIdPath(dr["IDPath"].ToString(), Convert.ToInt32(hfItemType.Value)); dr["ItemCount"] = ""; dr["RandomExamStrategyId"] = -i; sumCount += Convert.ToInt32(dr["MaxItemCount"]); i++; } Grid1.DataSource = ds; Grid1.DataBind(); lblMotherInfo.Text = "其中子题最大题数:" + (sumTotalCount - sumCount) + ";母题最大题数:" + sumCount; } #endregion }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string strID = Request.QueryString.Get("id"); ViewState["mode"] = Request.QueryString.Get("mode"); hfItemType.Value = Request.QueryString.Get("itemTypeID"); ddlType.SelectedValue = hfItemType.Value; if (ViewState["mode"].ToString() == "Insert") { string subjectId = Request.QueryString.Get("subjectid"); hfSubjectId.Value = subjectId; if (!string.IsNullOrEmpty(subjectId)) { RandomExamSubjectBLL paperStrategySubjectBLL = new RandomExamSubjectBLL(); RandomExamSubject paperStrategySubject = paperStrategySubjectBLL.GetRandomExamSubject(int.Parse(subjectId)); if (paperStrategySubject != null) { hfExamID.Value = paperStrategySubject.RandomExamId.ToString(); txtSubjectName.Text = paperStrategySubject.SubjectName; ddlType.SelectedValue = paperStrategySubject.ItemTypeId.ToString(); labelTotalCount.Text = paperStrategySubject.ItemCount.ToString(); RandomExamStrategyBLL randomExamStrategyBLL = new RandomExamStrategyBLL(); IList <RailExam.Model.RandomExamStrategy> RandomExamStrategys = randomExamStrategyBLL.GetRandomExamStrategys(paperStrategySubject.RandomExamSubjectId); int hasCount = 0; foreach (RailExam.Model.RandomExamStrategy randomExamStrategy in RandomExamStrategys) { hasCount += randomExamStrategy.ItemCount; } labelLeaveCount.Text = (paperStrategySubject.ItemCount - hasCount).ToString(); txtNDR.Text = labelLeaveCount.Text; RandomExamResultBLL reBll = new RandomExamResultBLL(); IList <RailExam.Model.RandomExamResult> examResults = reBll.GetRandomExamResultByExamID(paperStrategySubject.RandomExamId); if (examResults.Count > 0) { SaveButton.Visible = false; } } hfSubjectId.Value = subjectId; mother1.Visible = false; mother2.Visible = false; } OracleAccess db = new OracleAccess(); string strSql = "select RANDOM_EXAM_STRATEGY_SEQ.nextval from dual"; DataRow dr = db.RunSqlDataSet(strSql).Tables[0].Rows[0]; hfKeyID.Value = dr[0].ToString(); } else { hfKeyID.Value = strID; FillPage(int.Parse(strID)); } } if (!string.IsNullOrEmpty(HfChapterId.Value)) { if (HfRangeType.Value == "4") { BookChapterBLL chapterBll = new BookChapterBLL(); BookChapter chapter = chapterBll.GetBookChapter(Convert.ToInt32(HfChapterId.Value)); txtChapterName.Text = chapter.ChapterName; } else { BookBLL bookBll = new BookBLL(); RailExam.Model.Book book = bookBll.GetBook(Convert.ToInt32(HfChapterId.Value)); txtChapterName.Text = book.bookName; } } if (!string.IsNullOrEmpty(HfExCludeChaptersId.Value)) { string strSql = "select * from Book_Chapter where Chapter_ID in (" + HfExCludeChaptersId.Value + ")"; OracleAccess db = new OracleAccess(); DataSet ds = db.RunSqlDataSet(strSql); string strName = string.Empty; foreach (DataRow dr in ds.Tables[0].Rows) { if (strName == string.Empty) { strName += dr["Chapter_Name"].ToString(); } else { strName += "," + dr["Chapter_Name"].ToString(); } } txtExCludeChapters.Text = strName; } }
private void FillPage(int nID) { RandomExamStrategyBLL paperStrategyBookChapterBLL = new RandomExamStrategyBLL(); RandomExamStrategy paperStrategyBookChapter = paperStrategyBookChapterBLL.GetRandomExamStrategy(nID); if (paperStrategyBookChapter != null) { txtMemo.Text = paperStrategyBookChapter.Memo; txtChapterName.Text = paperStrategyBookChapter.RangeName; HfRangeName.Value = paperStrategyBookChapter.RangeName; hfSubjectId.Value = paperStrategyBookChapter.SubjectId.ToString(); HfRangeType.Value = paperStrategyBookChapter.RangeType.ToString(); HfChapterId.Value = paperStrategyBookChapter.RangeId.ToString(); ddlType.SelectedValue = paperStrategyBookChapter.ItemTypeId.ToString(); txtNDR.Text = paperStrategyBookChapter.ItemCount.ToString(); RandomExamSubjectBLL paperStrategySubjectBLL = new RandomExamSubjectBLL(); RandomExamSubject paperStrategySubject = paperStrategySubjectBLL.GetRandomExamSubject(int.Parse(hfSubjectId.Value)); if (paperStrategySubject != null) { hfExamID.Value = paperStrategySubject.RandomExamId.ToString(); txtSubjectName.Text = paperStrategySubject.SubjectName; labelTotalCount.Text = paperStrategySubject.ItemCount.ToString(); IList <RailExam.Model.RandomExamStrategy> RandomExamStrategys = paperStrategyBookChapterBLL.GetRandomExamStrategys(paperStrategySubject.RandomExamSubjectId); int hasCount = 0; foreach (RailExam.Model.RandomExamStrategy randomExamStrategy in RandomExamStrategys) { if (randomExamStrategy.RandomExamStrategyId != nID) { hasCount += randomExamStrategy.ItemCount; } } labelLeaveCount.Text = (paperStrategySubject.ItemCount - hasCount).ToString(); RandomExamResultBLL reBll = new RandomExamResultBLL(); IList <RailExam.Model.RandomExamResult> examResults = reBll.GetRandomExamResultByExamID(paperStrategySubject.RandomExamId); if (examResults.Count > 0) { ViewState["mode"] = "ReadOnly"; } } string strSql = "select a.random_exam_strategy_id as RandomExamStrategyId,a.Item_Count as ItemCount," + "GetBookChapterName(b.Chapter_ID) ChapterName, b.Chapter_ID as ChapterId,b.ID_Path as IDPath " + "from random_exam_strategy a" + " inner join Book_Chapter b on a.Range_ID=b.Chapter_ID " + " where a.Is_Mother_Item=1 and a.Mother_ID=" + nID; OracleAccess db = new OracleAccess(); DataSet ds = db.RunSqlDataSet(strSql); if (paperStrategyBookChapter.RangeType == 3 && ds.Tables[0].Rows.Count == 0) { txtExCludeChapters.Text = paperStrategyBookChapter.ExcludeChapterId; if (string.IsNullOrEmpty(paperStrategyBookChapter.ExcludeChapterId) == false) { FillExcludeCategorysID(paperStrategyBookChapter.ExcludeChapterId); } } int sumTotalCount = 0; ItemBLL itembll = new ItemBLL(); if (HfRangeType.Value == "3") { sumTotalCount = itembll.GetItemsByBookID(Convert.ToInt32(HfChapterId.Value), Convert.ToInt32(hfItemType.Value)); } else { BookChapterBLL bookChapterBll = new BookChapterBLL(); BookChapter bookChapter = bookChapterBll.GetBookChapter(Convert.ToInt32(HfChapterId.Value)); sumTotalCount = itembll.GetItemsByBookChapterIdPath(bookChapter.IdPath, Convert.ToInt32(hfItemType.Value)); } if (ds.Tables[0].Rows.Count == 0) { mother1.Visible = false; mother2.Visible = false; } else { mother1.Visible = true; mother2.Visible = true; DataColumn dc1 = ds.Tables[0].Columns.Add("MaxItemCount"); ItemBLL item = new ItemBLL(); int sumCount = 0; int sumMaxCount = 0; foreach (DataRow dr in ds.Tables[0].Rows) { dr["MaxItemCount"] = item.GetItemsByBookChapterIdPath(dr["IDPath"].ToString(), Convert.ToInt32(hfItemType.Value)); sumCount += Convert.ToInt32(dr["ItemCount"].ToString()); sumMaxCount += Convert.ToInt32(dr["MaxItemCount"].ToString()); } txtNDR.Text = (paperStrategyBookChapter.ItemCount + sumCount).ToString(); Grid1.DataSource = ds; Grid1.DataBind(); lblMotherInfo.Text = "其中子题最大题数:" + (sumTotalCount - sumMaxCount) + ";母题最大题数:" + sumMaxCount; } strSql = "select * from Item a inner join Book_Chapter b on a.Chapter_ID=b.Chapter_ID " + GetSelectSql(); lblTotalCount.Text = db.RunSqlDataSet(strSql).Tables[0].Rows.Count.ToString(); strSql = " select * from Random_Exam_Item_Select where RANDOM_EXAM_STRATEGY_ID=" + nID; lblSelectCount.Text = db.RunSqlDataSet(strSql).Tables[0].Rows.Count.ToString(); } if (ViewState["mode"].ToString() == "ReadOnly") { SaveButton.Visible = false; CancelButton.Visible = true; ddlType.Enabled = false; txtMemo.Enabled = false; } }
protected void GetItems() { ViewState["Refresh"] = "ok"; ViewState["Answers"] = ""; ViewState["SelectItem"] = ""; ItemBLL itemBLL = new ItemBLL(); string strBookID = Server.UrlDecode(Request.QueryString.Get("BookID")); string strRangeType = Request.QueryString.Get("RangeType"); int nDifficultR = Convert.ToInt32(Request.QueryString.Get("Num")); string[] strBook = strBookID.Split('/'); string[] strType = strRangeType.Split('/'); IList <RailExam.Model.Item> itemList = new List <RailExam.Model.Item>(); int m = 0; if (strType[0] == "2" || strType[0] == "1") { itemList = itemBLL.GetItemsByStrategy(Convert.ToInt32(strType[0]), Convert.ToInt32(strBook[0])); } else { BookChapterBLL objChapterBll = new BookChapterBLL(); ArrayList objItemID = new ArrayList(); for (int i = 0; i < strBook.Length; i++) { if (strType[i] == "4") { BookChapter objChapter = objChapterBll.GetBookChapter(Convert.ToInt32(strBook[i])); if (objChapter.IsCannotSeeAnswer) { m = m + 1; break; } IList <RailExam.Model.Item> objList = itemBLL.GetItemsByStrategy(4, Convert.ToInt32(strBook[i])); foreach (RailExam.Model.Item item in objList) { if (objItemID.IndexOf(item.ItemId) == -1) { itemList.Add(item); objItemID.Add(item.ItemId); } } } } } if (m > 0) { Response.Write("<script>alert('存在被屏蔽试题的章节,请重新设置取题范围');window.parent.close();</script>"); return; } if (itemList.Count >= nDifficultR) { Random ObjRandom = new Random(); Hashtable hashTable = new Hashtable(); int n = 0; while (hashTable.Count < nDifficultR) { int i = ObjRandom.Next(itemList.Count); hashTable[itemList[i].ItemId] = itemList[i].ItemId; if (string.IsNullOrEmpty(itemList[i].StandardAnswer)) { n = n + 1; break; } } if (n == 1) { Response.Write("<script>alert('存在没有标准答案的试题,请重新设置取题范围');window.parent.close();</script>"); return; } foreach (int key in hashTable.Keys) { string strItemId = hashTable[key].ToString(); if (ViewState["SelectItem"] != null && ViewState["SelectItem"].ToString() != "") { ViewState["SelectItem"] += "|" + strItemId; } else { ViewState["SelectItem"] = strItemId; } } } else { //Items = itemList; //for (int i = 0; i < Items.Count; i++) //{ // if (i == 0) // { // ViewState["SelectItem"] = Items[i].ItemId.ToString(); // } // else // { // ViewState["SelectItem"] += "|" + Items[i].ItemId.ToString(); // } //} Response.Write("<script>alert('自主考试在设定的取题范围内的试题量不够,请重新设置取题范围');window.parent.close();</script>"); return; } }
protected void btnInput_Click(object sender, EventArgs e) { string strSql; for (int i = 0; i < gvBook.Rows.Count; i++) { CheckBox chk = (CheckBox)gvBook.Rows[i].FindControl("chSelect"); string strKnowledgeId = ((HiddenField)gvBook.Rows[i].FindControl("hfKownledgeId")).Value; if (chk.Checked) { strSql = "select a.*,b.Short_Name from Book a inner join Org b on a.Publish_Org=b.Org_ID where a.Book_ID=" + gvBook.DataKeys[i].Value.ToString(); DataSet ds = RunSqlDataSet(strSql); DataRow dr = ds.Tables[0].Rows[0]; BookBLL objBookbll = new BookBLL(); RailExam.Model.Book objBookNew = new RailExam.Model.Book(); objBookNew.bookId = Convert.ToInt32(dr["Book_ID"].ToString()); string strPath = Server.MapPath(ConfigurationManager.AppSettings["BookDesigner"].ToString() + objBookNew.bookId + "/"); string strAimPath = Server.MapPath("../Online/Book/" + objBookNew.bookId + "/"); if (!Directory.Exists(strPath)) { SessionSet.PageMessage = "有教材还未创建内容,暂不能导入!"; return; } objBookNew.bookName = dr["Book_Name"].ToString(); objBookNew.bookNo = dr["Book_No"].ToString(); objBookNew.authors = dr["Authors"].ToString(); objBookNew.bookmaker = dr["BookMaker"].ToString(); objBookNew.publishOrg = Convert.ToInt32(dr["Publish_Org"].ToString()); objBookNew.publishOrgName = dr["Short_Name"].ToString(); objBookNew.revisers = dr["Revisers"].ToString(); objBookNew.coverDesigner = dr["Cover_Designer"].ToString(); objBookNew.keyWords = dr["Keywords"].ToString(); objBookNew.pageCount = Convert.ToInt32(dr["Page_Count"].ToString()); objBookNew.wordCount = Convert.ToInt32(dr["Word_Count"].ToString()); objBookNew.Description = dr["Description"].ToString(); objBookNew.url = "../Book/" + dr["Book_ID"].ToString() + "/index.html"; objBookNew.Memo = dr["Remark"].ToString(); objBookNew.knowledgeId = Convert.ToInt32(strKnowledgeId); //objBookbll.UpdateBook(objBookNew, ref errorCode); strSql = "select * from Book_Chapter where Book_ID=" + gvBook.DataKeys[i].Value.ToString(); ds = RunSqlDataSet(strSql); BookChapterBLL objBookChapterBll = new BookChapterBLL(); //取得Access数据库中当前教材的所有的章节ID ArrayList objAccessChapterList = new ArrayList(); //取得当前教材在oracle数据中所有章节ID ArrayList objList = GetBookChapterList(Convert.ToInt32(gvBook.DataKeys[i].Value.ToString())); foreach (DataRow dr1 in ds.Tables[0].Rows) { RailExam.Model.BookChapter objBookChapter = new RailExam.Model.BookChapter(); objBookChapter.ChapterId = Convert.ToInt32(dr1["Chapter_ID"].ToString()); objBookChapter.BookId = Convert.ToInt32(dr1["Book_ID"].ToString()); objBookChapter.ChapterName = dr1["Chapter_Name"].ToString(); objBookChapter.ParentId = Convert.ToInt32(dr1["Parent_ID"].ToString()); objBookChapter.LevelNum = Convert.ToInt32(dr1["Level_Num"].ToString()); objBookChapter.OrderIndex = Convert.ToInt32(dr1["Order_Index"].ToString()); objBookChapter.ReferenceRegulation = dr1["REFERENCE_REGULATION"].ToString(); objBookChapter.Description = dr1["Description"].ToString(); objBookChapter.Memo = dr1["Remark"].ToString(); objBookChapter.Url = "../Book/" + dr1["Book_ID"].ToString() + "/" + dr1["Chapter_ID"].ToString() + ".htm"; //如果该章节的ID已存在当前oracle数据库中则只需修改章节信息,否则添加信息 if (objList.IndexOf(objBookChapter.ChapterId) != -1) { objBookChapterBll.UpdateBookChapter(objBookChapter); } else { objBookChapterBll.AddBookChapter(objBookChapter); } objAccessChapterList.Add(objBookChapter.ChapterId); } //取得当前教材在oracle中的所有教材信息 IList <RailExam.Model.BookChapter> objOracleBookChapterList = objBookChapterBll.GetBookChapterByBookID(objBookNew.bookId); foreach (RailExam.Model.BookChapter chapter in objOracleBookChapterList) { //如果oracle数据库中某章节ID不在Access数据库中 if (objAccessChapterList.IndexOf(chapter.ChapterId) == -1) { ItemBLL objItemBll = new ItemBLL(); IList <RailExam.Model.Item> objItemList = objItemBll.GetItemsByBookBookId(objBookNew.bookId); foreach (RailExam.Model.Item item in objItemList) { item.StatusId = 2; objItemBll.UpdateItem(item); } objBookChapterBll.DeleteBookChapter(chapter.ChapterId); } } if (Directory.Exists(Server.MapPath("../Online/Book/" + objBookNew.bookId + "/"))) { //Directory.Delete(Server.MapPath("../Online/Book/" + objBookNew.bookId + "/"), true); DeleteFile(Server.MapPath("../Online/Book/" + objBookNew.bookId + "/")); } CopyTemplate(strPath, strAimPath); } } BindGrid(); }
protected void Page_Load(object sender, EventArgs e) { string strBookChapterId = Request.QueryString.Get("id"); ItemBLL objItemBll = new ItemBLL(); string strItemTypeID = Request.QueryString.Get("itemTypeID"); if (!string.IsNullOrEmpty(strBookChapterId)) { ComponentArt.Web.UI.TreeView tvBookChapterChapter = new ComponentArt.Web.UI.TreeView(); BookChapterBLL bookChapterBLL = new BookChapterBLL(); IList <RailExam.Model.BookChapter> bookChapterList = bookChapterBLL.GetBookChapterByBookID(int.Parse(strBookChapterId)); if (bookChapterList.Count > 0) { TreeViewNode tvn = null; foreach (RailExam.Model.BookChapter bookChapter in bookChapterList) { if (bookChapter.IsMotherItem) { continue; } tvn = new TreeViewNode(); tvn.ID = bookChapter.ChapterId.ToString(); tvn.Value = bookChapter.ChapterId.ToString(); if (Request.QueryString.Get("item") != null && Request.QueryString.Get("item") == "no") { tvn.Text = bookChapter.ChapterName; } else { int n = objItemBll.GetItemsByBookChapterIdPath(bookChapter.IdPath, Convert.ToInt32(strItemTypeID)); if (n > 0) { tvn.Text = bookChapter.ChapterName + "(" + n + "题)"; } else { tvn.Text = bookChapter.ChapterName; } } tvn.ToolTip = bookChapter.ChapterName; string strflag = Request.QueryString.Get("flag"); if (strflag != null && (strflag == "2" || strflag == "1")) { tvn.ShowCheckBox = true; } if (Request.QueryString.Get("state") != null) { tvn.Checked = Convert.ToBoolean(Request.QueryString.Get("state")); } else { if (Request.QueryString.Get("StrategyID") != null) { string str = "," + Request.QueryString.Get("StrategyID") + ","; if (str.IndexOf("," + tvn.ID + ",") != -1) { tvn.Checked = true; } } } tvn.Attributes.Add("isChapter", "true"); tvn.ImageUrl = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Chapter.gif"; if (bookChapter.ParentId == 0) { tvBookChapterChapter.Nodes.Add(tvn); } else { tvBookChapterChapter.FindNodeById(bookChapter.ParentId.ToString()).Nodes.Add(tvn); } } } Response.Clear(); Response.ClearHeaders(); Response.ContentType = "text/xml"; Response.Cache.SetNoStore(); string strXmlEncoding = string.Empty; try { strXmlEncoding = System.Configuration.ConfigurationManager.AppSettings["CallbackEncoding"]; } catch { strXmlEncoding = "gb2312"; #if DEBUG System.Diagnostics.Debug.WriteLine("Error Accessing Web.Config File!\r\n" + "Using \"gb2312\"!"); #endif } if (string.IsNullOrEmpty(strXmlEncoding)) { strXmlEncoding = "gb2312"; #if DEBUG System.Diagnostics.Debug.WriteLine("CallbackEncoding Empty in Web.Config File!\r\n" + "Using \"gb2312\"!"); #endif } else { try { System.Text.Encoding enc = System.Text.Encoding.GetEncoding(strXmlEncoding); } catch { #if DEBUG System.Diagnostics.Debug.WriteLine("Invalid Encoding in Web.Config File!\r\n" + "Using \"gb2312\"!"); #endif strXmlEncoding = "gb2312"; } } Response.Write("<?xml version=\"1.0\" encoding=\"" + strXmlEncoding + "\" standalone=\"yes\" ?>\r\n" + tvBookChapterChapter.GetXml()); Response.Flush(); Response.End(); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack && !Grid1.IsCallback) { if (PrjPub.CurrentLoginUser == null) { Response.Redirect("/RailExamBao/Common/Error.aspx?error=Session过期请重新登录本系统!"); return; } //if(HfChapterId.Value != "") //{ // BookChapterBLL objBll = new BookChapterBLL(); // BookChapter obj = objBll.GetBookChapter(Convert.ToInt32(HfChapterId.Value)); // txtChapterName.Text = obj.NamePath; //} HfChapterId.Value = Request.QueryString.Get("cid"); HfBookId.Value = Request.QueryString.Get("bid"); if (!string.IsNullOrEmpty(HfBookId.Value) && HfBookId.Value != "-1") { BookBLL objbookbill = new BookBLL(); RailExam.Model.Book objBook = objbookbill.GetBook(Convert.ToInt32(HfBookId.Value)); if (PrjPub.CurrentLoginUser.SuitRange == 0 && PrjPub.IsServerCenter) { if (PrjPub.CurrentLoginUser.StationOrgID != objBook.publishOrg) { Response.Write("<script>alert('您没有导入当前教材章节试题的权限!');window.close();</script>"); return; } } if (HfChapterId.Value != "-1") { BookChapterBLL objBll = new BookChapterBLL(); BookChapter obj = objBll.GetBookChapter(Convert.ToInt32(HfChapterId.Value)); txtChapterName.Text = objBook.bookName + ">>" + obj.NamePath; if (obj.IsCannotSeeAnswer) { ddlMode.Visible = true; } else { ddlMode.Visible = false; ddlMode.SelectedValue = "0"; } } else { txtChapterName.Text = objBook.bookName; ddlMode.Visible = false; ddlMode.SelectedValue = "0"; } lblTitle.Visible = true; btnDelAll.Visible = true; } else { lblTitle.Visible = false; btnDelAll.Visible = false; } if (!PrjPub.IsWuhanOnly()) { ddlMode.Visible = false; ddlMode.SelectedValue = "0"; } ddlMode.Visible = false; ddlMode.SelectedValue = "0"; if (Session["table"] != null) { Session.Remove("table"); } } string str = Request.Form.Get("Refresh"); if (str != null && str == "refresh") { if (Session["table"] != null) { Grid1.DataSource = (DataTable)Session["table"]; Grid1.DataBind(); } } }
private void FillPaperNoAnswer() { ItemBLL itemBLL = new ItemBLL(); string strBookId = Request.QueryString.Get("bookid"); string strChapterId = Request.QueryString.Get("ChapterId"); if (strChapterId == "0") { IList <RailExam.Model.Item> Items1 = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 1); IList <RailExam.Model.Item> Items2 = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 2); IList <RailExam.Model.Item> Items3 = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 3); IList <RailExam.Model.Item> Items4 = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 4); Response.Write("<div class='ExamBigTitle' style='text-align:center;' >"); Response.Write(" 本教材共有" + Items1.Count + "道单选题、" + Items2.Count + "道多选题、<br>" + Items3.Count + "道判断题、" + Items4.Count + "道综合选择题,请点击章节查看练习题!"); Response.Write("</div>"); } else { BookChapterBLL objBll = new BookChapterBLL(); BookChapter obj = objBll.GetBookChapter(Convert.ToInt32(strChapterId)); hfCannotSeeAnswer.Value = obj.IsCannotSeeAnswer.ToString(); if (Convert.ToBoolean(hfCannotSeeAnswer.Value)) { Response.Write("<div class='ExamBigTitle' style='text-align:center;' >"); Response.Write(" 本章节练习题已被屏蔽!"); Response.Write("</div>"); return; } int nCount = 0; //单选 IList <RailExam.Model.Item> Items = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 1); decimal decTotalScore = 0; for (int i = 0; i < Items.Count; i++) { RailExam.Model.Item item = Items[i]; decTotalScore += item.Score; } nCount += Items.Count; if (Items != null) { Response.Write("<table class='ExamContent'>"); Response.Write("<tr><td class='ExamBigTitle' >"); Response.Write(" 一、单选(共" + Items.Count + "题)</td></tr>"); for (int j = 0; j < Items.Count; j++) { RailExam.Model.Item item = Items[j]; int k = j + 1; Response.Write("<tr><td id='Item-1-" + j + "' class='ExamItem'> " + k + ". " + item.Content + "</td></tr>"); string[] strAnswer = item.SelectAnswer.Split(new char[] { '|' }); for (int n = 0; n < strAnswer.Length; n++) { string strN = intToString(n + 1); string strij = "-1-" + item.ItemId + "-" + j.ToString() + "-" + n.ToString(); string strName = "1" + j.ToString(); Response.Write( "<tr><td class='ExamItemAnswer'> <input type='Radio' onclick='CheckStyle(this)' id='RAnswer" + strij + "' name='RAnswer" + strName + "'> " + strN + "." + strAnswer[n] + "</td></tr>"); } } Response.Write(" </table> "); } //多选 Items = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 2); decTotalScore = 0; for (int i = 0; i < Items.Count; i++) { RailExam.Model.Item item = Items[i]; decTotalScore += item.Score; } nCount += Items.Count; hfPaperItemsCount.Value = nCount.ToString(); if (Items != null) { Response.Write("<table class='ExamContent'>"); Response.Write("<tr> <td class='ExamBigTitle' >"); Response.Write(" 二、多选(共" + Items.Count + "题)</td></tr>"); for (int j = 0; j < Items.Count; j++) { RailExam.Model.Item item = Items[j]; int k = j + 1; Response.Write("<tr><td id='Item-2-" + j + "' class='ExamItem'> " + k + ". " + item.Content + "</td></tr>"); string[] strAnswer = item.SelectAnswer.Split(new char[] { '|' }); for (int n = 0; n < strAnswer.Length; n++) { string strN = intToString(n + 1); string strij = "-2-" + +item.ItemId + "-" + j.ToString() + "-" + n.ToString(); string strName = "2" + j.ToString(); Response.Write( "<tr><td class='ExamItemAnswer'> <input type='checkbox' onclick='CheckStyle(this)' id='RAnswer" + strij + "' name='RAnswer" + strName + "'> " + strN + "." + strAnswer[n] + "</td></tr>"); } } Response.Write("</table> "); } //判断 Items = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 3); decTotalScore = 0; for (int i = 0; i < Items.Count; i++) { RailExam.Model.Item item = Items[i]; decTotalScore += item.Score; } nCount += Items.Count; hfPaperItemsCount.Value = nCount.ToString(); if (Items != null) { Response.Write("<table class='ExamContent'>"); Response.Write("<tr><td class='ExamBigTitle' >"); Response.Write("三、判断(共" + Items.Count + "题)</td></tr>"); for (int j = 0; j < Items.Count; j++) { RailExam.Model.Item item = Items[j]; int k = j + 1; Response.Write("<tr><td id='Item-3-" + j + "' class='ExamItem'> " + k + ". " + item.Content + "</td></tr>"); string[] strAnswer = item.SelectAnswer.Split(new char[] { '|' }); for (int n = 0; n < strAnswer.Length; n++) { string strN = intToString(n + 1); string strij = "-3-" + item.ItemId + "-" + j.ToString() + "-" + n.ToString(); string strName = "3" + j.ToString(); Response.Write( "<tr><td class='ExamItemAnswer'> <input type='Radio' onclick='CheckStyle(this)' id='RAnswer" + strij + "' name='RAnswer" + strName + "'> " + strN + "." + strAnswer[n] + "</td></tr>"); } } Response.Write(" </table> "); } //综合选择题 Items = itemBLL.GetExerciseItems(int.Parse(strBookId), int.Parse(strChapterId), 4); decTotalScore = 0; for (int i = 0; i < Items.Count; i++) { RailExam.Model.Item item = Items[i]; decTotalScore += item.Score; } nCount += Items.Count; hfPaperItemsCount.Value = nCount.ToString(); if (Items != null) { Response.Write("<table class='ExamContent'>"); Response.Write("<tr><td class='ExamBigTitle' colspan='3'>"); Response.Write("四、综合选择题(共" + Items.Count + "题)</td></tr>"); for (int j = 0; j < Items.Count; j++) { RailExam.Model.Item item = Items[j]; int k = j + 1; Response.Write("<tr><td id='Item" + j + "' class='ExamItem' colspan='3'> " + k + ". " + item.Content + "</td></tr>"); IList <RailExam.Model.Item> objChildList = itemBLL.GetItemsByParentItemID(item.ItemId); foreach (RailExam.Model.Item item1 in objChildList) { string[] strAnswer = item1.SelectAnswer.Split(new char[] { '|' }); for (int n = 0; n < strAnswer.Length; n++) { string strN = intToString(n + 1); string strij = "-4-" + item1.ItemId + "-" + item1.ItemId + "-" + n.ToString(); string strName = "4" + item1.ItemId; if (n == 0) { int row = strAnswer.Length % 2 == 0 ? strAnswer.Length / 2 : strAnswer.Length / 2 + 1; Response.Write("<tr><td id='Item-4-" + item1.ItemId + "' class='ExamItemOther' style='width:10%;' RowSpan='" + row + "'> (" + item1.ItemIndex + "). </td>"); } if (n % 2 == 0 && n != 0) { Response.Write("<tr>"); } Response.Write( "<td class='ExamItemAnswer'> <input type='Radio' onclick='CheckStyle(this)' id='RAnswer" + strij + "' name='RAnswer" + strName + "'> " + strN + "." + strAnswer[n] + "</td>"); if (n % 2 == 1) { Response.Write("</tr>"); } } } } Response.Write(" </table> "); } if (!Convert.ToBoolean(hfCannotSeeAnswer.Value)) { Response.Write("<div class='ExamButton'><input class='button' type='button' onclick='SaveRecord()' value='提交练习'/></div>"); } Response.Write("<br><br>"); } }