protected void btnInput_Click(object sender, EventArgs e) { BookBLL bookBLL = new BookBLL(); for (int i = 0; i < gvBook.Rows.Count; i++) { bool bChecked = ((CheckBox)gvBook.Rows[i].FindControl("chSelect")).Checked; if (bChecked) { ItemBLL objBll = new ItemBLL(); IList <RailExam.Model.Item> objItemList = objBll.GetItemsByBookBookId(Convert.ToInt32(gvBook.DataKeys[i].Value.ToString())); foreach (RailExam.Model.Item item in objItemList) { item.StatusId = 2; objBll.UpdateItem(item); } if (Directory.Exists(Server.MapPath("../Online/Book/" + gvBook.DataKeys[i].Value + "/"))) { DeleteFile(Server.MapPath("../Online/Book/" + gvBook.DataKeys[i].Value + "/")); } bookBLL.DeleteBook(Convert.ToInt32(gvBook.DataKeys[i].Value.ToString())); } } BindGrid(); }
private void BindGrid() { if (!string.IsNullOrEmpty(hfChapterID.Value) && hfChapterID.Value != "0") { int bookID = Convert.ToInt32(Request.QueryString["BookID"]); int chapterID = Convert.ToInt32(hfChapterID.Value); ItemBLL objItemBll = new ItemBLL(); IList <RailExam.Model.Item> objItemList = objItemBll.GetItemsByBookChapterId(bookID, chapterID, 0, int.MaxValue); itemsGrid.DataSource = objItemList; itemsGrid.DataBind(); } else { int bookID = Convert.ToInt32(Request.QueryString["BookID"]); ItemBLL objItemBll = new ItemBLL(); IList <RailExam.Model.Item> objItemList = objItemBll.GetItemsByBookBookId(bookID); itemsGrid.DataSource = objItemList; itemsGrid.DataBind(); } }
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(); }