private void tvKnowlTree_AfterSelect(object sender, TreeViewEventArgs e) { this.CurSelKnol = (KnowledgePoint)this.tvKnowlTree.SelectedNode.Tag; //MessageBox.Show("AfterSelect" + this.CurrentSelKnol.Name); this.initProblem(); }
/// <summary> /// 叶子节点深度递归,一直传参过来的都是叶子节点啊说 /// </summary> private void RecursionNode(TreeNode treeNode) { //首先判断是否为叶子节点 //if (treeNode.Nodes.Count > 0)//有叶子节点,就去遍历叶子节点 //{ // foreach (TreeNode node in treeNode.Nodes) // { // this.RecursionNode(node); // } //} //else//本身就是叶子节点,查看当前叶子节点是否存在孩子节点 { KnowledgePoint KnowledgePointItem = (KnowledgePoint)treeNode.Tag; List <KnowledgePoint> KnowlListChild = this.IKnowltAndProblemFormReq.QuerySingleKnowlBySuperID(KnowledgePointItem.Id); if (KnowlListChild.Count > 0) { foreach (KnowledgePoint KnowledgePoint in KnowlListChild) { treeNode.Nodes.Add(KnowledgePoint.Name).Tag = KnowledgePoint; } //为叶子节点添加孩子节点后,查看孩子节点是否有孙子节点 foreach (TreeNode node in treeNode.Nodes) { this.RecursionNode(node); } } } }
public List <KnowledgePoint> QueryConnectKnowlBySuperID(string upperID, string courseID) { List <KnowledgePoint> KnowlList = new List <KnowledgePoint>(); //连接查询 //string cmdText = "SELECT knowledge_point.id,knowledge_point.`name`,knowledge_point.uk_upper_knowledge_point_id FROM knowledge_point WHERE knowledge_point.uk_upper_knowledge_point_id = @upperID;"; //string querySQL = "SELECT knowledge_point.id,knowledge_point.`name`,knowledge_point.other,knowledge_point.uk_upper_knowledge_point_id FROM course_spread_knowledge_point INNER JOIN knowledge_point ON course_spread_knowledge_point.uk_knowledge_point_id = knowledge_point.id WHERE knowledge_point.uk_upper_knowledge_point_id = @upperID;"; string querySQL = "SELECT knowledge_point.id,knowledge_point.`name`,knowledge_point.other,knowledge_point.uk_upper_knowledge_point_id FROM course_spread_knowledge_point INNER JOIN knowledge_point ON course_spread_knowledge_point.uk_knowledge_point_id = knowledge_point.id WHERE knowledge_point.uk_upper_knowledge_point_id = @upperID AND course_spread_knowledge_point.uk_course_id = @courseId;"; MySqlDataReader mySqlDataReader = Model.MySqlHelper.ExecuteReader( Model.MySqlHelper.Conn, CommandType.Text, querySQL, new MySqlParameter("@upperID", upperID), new MySqlParameter("@courseId", courseID)); while (mySqlDataReader.Read()) { KnowledgePoint KnowledgePoint = new KnowledgePoint(); KnowledgePoint.Id = mySqlDataReader.IsDBNull(0) ? "" : mySqlDataReader.GetString(0); KnowledgePoint.Name = mySqlDataReader.IsDBNull(1) ? "" : mySqlDataReader.GetString(1); KnowledgePoint.Other = mySqlDataReader.IsDBNull(2) ? "" : mySqlDataReader.GetString(2); KnowledgePoint.UpperKnowlId = mySqlDataReader.IsDBNull(3) ? "" : mySqlDataReader.GetString(3); KnowlList.Add(KnowledgePoint); } mySqlDataReader.Close(); return(KnowlList); }
private void btnSubmit_Click(object sender, EventArgs e) { KnowledgePoint knowl = new KnowledgePoint(); knowl.Id = Guid.NewGuid().ToString("N"); knowl.Create = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); knowl.Modify = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); knowl.Name = this.tbKnowlName.Text.Trim(); knowl.Other = this.rtbOther.Text; if (this.rbRoot.Checked) { knowl.UpperKnowlId = "root"; } if (this.rbNotRoot.Checked) { knowl.UpperKnowlId = this.CurrentSelKnowl.Id; } CourseSpreadKnowl courseSpreadKnowl = new CourseSpreadKnowl(); courseSpreadKnowl.Id = Guid.NewGuid().ToString("N"); courseSpreadKnowl.Create = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); courseSpreadKnowl.Modify = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); courseSpreadKnowl.KnowlId = knowl.Id; courseSpreadKnowl.CourseId = this.courseId; this.addKnowlPoint(knowl, courseSpreadKnowl); this.Close(); }
public KnowledgePointEidtForm(UpdateKnowlPoint updateKnowlPoint, KnowledgePoint CurrentSelKnol) { InitializeComponent(); this.updateKnowlPoint = updateKnowlPoint; this.CurrentSelKnol = CurrentSelKnol; this.tbKnowlName.Text = this.CurrentSelKnol.Name; this.rtbOther.Text = this.CurrentSelKnol.Other; }
public bool SaveKnowledgePoint(KnowledgePoint knowledge) { KnowledgePoint knowledgePoint = _myDbContext.KnowledgePoint.FirstOrDefault(c => c.Id == knowledge.Id); if (knowledgePoint == null) { return(false); } knowledgePoint.KnowledgePointName = knowledge.KnowledgePointName; _myDbContext.SaveChanges(); return(true); }
public bool DeleteKnowledgePoint(int id) { KnowledgePoint knowledgePoint = _myDbContext.KnowledgePoint.FirstOrDefault(c => c.Id == id); if (knowledgePoint == null) { return(false); } _myDbContext.KnowledgePoint.Remove(knowledgePoint); _myDbContext.SaveChanges(); return(true); }
public void UpdateOneKnowl(KnowledgePoint knowlPoint) { string updateSql = "UPDATE knowledge_point SET knowledge_point.utc8_modify = @modify,knowledge_point.other = @other,knowledge_point.`name` = @name WHERE knowledge_point.id = @id;"; MySqlConnection mySqlConnection = new MySqlConnection(Model.MySqlHelper.Conn); mySqlConnection.Open(); Model.MySqlHelper.ExecuteNonQuery(mySqlConnection, CommandType.Text, updateSql, new MySqlParameter("@modify", knowlPoint.Modify), new MySqlParameter("@other", knowlPoint.Other), new MySqlParameter("@name", knowlPoint.Name), new MySqlParameter("@id", knowlPoint.Id)); mySqlConnection.Close(); }
/// <summary> /// 叶子节点深度递归,一直传参过来的都是叶子节点啊说 /// </summary> private void RecursionNode(TreeNode treeNode) { //首先判断是否为叶子节点 //if (treeNode.Nodes.Count > 0)//有叶子节点,就去遍历叶子节点 //{ // foreach (TreeNode node in treeNode.Nodes) // { // this.RecursionNode(node); // } //} //else//本身就是叶子节点,查看当前叶子节点是否存在孩子节点 { KnowledgePoint KnowledgePointItem = (KnowledgePoint)treeNode.Tag; List <KnowledgePoint> KnowlListChild = this.IKnowltAndProblemFormReq.QuerySingleKnowlBySuperID(KnowledgePointItem.Id); if (KnowlListChild.Count > 0) { foreach (KnowledgePoint KnowledgePoint in KnowlListChild) { TreeNode treeNodeChild = treeNode.Nodes.Add(KnowledgePoint.Name); treeNodeChild.Tag = KnowledgePoint; if (this.currentSelKnowlID != null) { if (KnowledgePoint.Id.Equals(this.currentSelKnowlID)) { treeNodeChild.Checked = true; this.currentSelKnowlID = null; } } if (this.checkIDs.Count > 0) { foreach (string id in this.checkIDs) { if (KnowledgePoint.Id.Equals(id)) { treeNodeChild.Checked = true; this.checkIDs.Remove(id); break; } } } } //为叶子节点添加孩子节点后,查看孩子节点是否有孙子节点 foreach (TreeNode node in treeNode.Nodes) { this.RecursionNode(node); } } } }
public KnowledgePointForm(string courseId, AddKnowlPoint addKnowlPoint, KnowledgePoint CurrentSelKnowl) { InitializeComponent(); this.CurrentSelKnowl = CurrentSelKnowl; this.addKnowlPoint = addKnowlPoint; this.courseId = courseId; //如果没有上层知识点,就只能是根节点了 if (this.CurrentSelKnowl == null) { this.rbNotRoot.Hide(); this.rbNotRoot.Checked = false; this.rbRoot.Checked = true; } }
private void tvKnowl_AfterCheck(object sender, TreeViewEventArgs e) { TreeNode node = e.Node; KnowledgePoint KnowledgePointItem = (KnowledgePoint)node.Tag; if (node.Checked == false) { this.checkIDs.Remove(KnowledgePointItem.Id); } else { this.checkIDs.Add(KnowledgePointItem.Id); } //MessageBox.Show("" + this.checkIDs.Count); }
//注意本次添加应该是一个事务,对两个表进行添加操作才对。 public void InsertOneKnowl(KnowledgePoint knowlPoint, CourseSpreadKnowl courseSpreadKnowl) { MySqlConnection mySqlConnection = new MySqlConnection(Model.MySqlHelper.Conn); mySqlConnection.Open(); MySqlTransaction mySqlTransaction = mySqlConnection.BeginTransaction(); string insertSql_knowledge_point = "INSERT INTO knowledge_point(knowledge_point.id,knowledge_point.utc8_create,knowledge_point.utc8_modify,knowledge_point.other,knowledge_point.`name`,knowledge_point.uk_upper_knowledge_point_id) VALUES (@id,@create,@modife,@other,@name,@upperId);"; string insertSql_course_spread_knowledge_point = "INSERT INTO course_spread_knowledge_point(course_spread_knowledge_point.id,course_spread_knowledge_point.utc8_create,course_spread_knowledge_point.utc8_modify,course_spread_knowledge_point.other,course_spread_knowledge_point.uk_knowledge_point_id,course_spread_knowledge_point.uk_course_id)VALUES(@id,@create,@modife,@other,@knowlId,@courseId);"; try { Model.MySqlHelper.ExecuteNonQuery(mySqlConnection, CommandType.Text, insertSql_knowledge_point, new MySqlParameter("@id", knowlPoint.Id), new MySqlParameter("@create", knowlPoint.Create), new MySqlParameter("@modife", knowlPoint.Modify), new MySqlParameter("@other", knowlPoint.Other), new MySqlParameter("@name", knowlPoint.Name), new MySqlParameter("@upperId", knowlPoint.UpperKnowlId)); Model.MySqlHelper.ExecuteNonQuery(mySqlConnection, CommandType.Text, insertSql_course_spread_knowledge_point, new MySqlParameter("@id", courseSpreadKnowl.Id), new MySqlParameter("@create", courseSpreadKnowl.Create), new MySqlParameter("@modife", courseSpreadKnowl.Modify), new MySqlParameter("@other", courseSpreadKnowl.Other), new MySqlParameter("@knowlId", courseSpreadKnowl.KnowlId), new MySqlParameter("@courseId", courseSpreadKnowl.CourseId)); } catch (Exception exc) { Console.WriteLine(exc.ToString()); mySqlTransaction.Rollback(); mySqlConnection.Close(); MessageBox.Show("操作失败,操作已回滚。"); } finally { Console.WriteLine("操作成功,状态:" + mySqlConnection.State); if (mySqlConnection.State != ConnectionState.Closed) { mySqlTransaction.Commit(); mySqlConnection.Close(); } } }
private void UpdateKnowlPoint(KnowledgePoint knowlPoint) { this.IKnowltAndProblemFormReq.UpdateOneKnowl(knowlPoint); this.initData(); }
//===============委托们 private void AddKnowlPoint(KnowledgePoint knowlPoint, CourseSpreadKnowl courseSpreadKnowl) { this.IKnowltAndProblemFormReq.InsertOneKnowl(knowlPoint, courseSpreadKnowl); this.initData(); }
/// <summary> /// 下载同步数据。 /// </summary> /// <param name="teacherID"></param> /// <param name="complete"></param> public void TeaDownSync(string teacherID, EventHandler complete) { lock (this) { this.RaiseChanged("【准备下载同步数据...】"); try { this.RaiseChanged("【开始下载同步数据...】"); this.poxy.BeginDownloadTeaSyncData(teacherID, new AsyncCallback(delegate(IAsyncResult callback) { this.RaiseChanged("【正在下载同步数据,请稍候...】"); Impl.GeneralCallResultOfTeaSyncData result = this.poxy.EndDownloadTeaSyncData(callback); if (result != null) { this.RaiseChanged("【下载同步数据完成,开始分析数据...】"); if (result.ResultCode == 0 && result.Data != null) { this.RaiseChanged("【开始装载数据...】"); TeaSyncData sync = new TeaSyncData(); sync.Time = DateTime.Now; #region 同步学校信息。 Impl.School school = result.Data.School; if (school != null) { sync.School.SchoolID = school.SchoolID; sync.School.SchoolCode = school.SchoolCode; sync.School.SchoolName = school.SchoolName; sync.School.SchoolType = (EnumSchoolType)((int)school.SchoolType); this.RaiseChanged("【已装载学校数据:" + sync.School + "】"); #region 同步教师信息。 Impl.Teacher teacher = school.Teacher; if (teacher != null) { sync.School.Teacher.TeacherID = teacher.TeacherID; sync.School.Teacher.TeacherCode = teacher.TeacherCode; sync.School.Teacher.TeacherName = teacher.TeacherName; #region 同步年级。 Impl.Grade[] grades = teacher.Grades; if (grades != null && grades.Length > 0) { foreach (Impl.Grade grade in grades) { this.RaiseChanged(string.Format("【开始装载年级数据[{0}]..】", grade.GradeName)); Grade g = new Grade(); g.GradeID = grade.GradeID; g.GradeCode = grade.GradeCode; g.GradeName = grade.GradeName; g.OrderNO = grade.OrderNO; #region 客观评价。 Impl.Evaluate evaluate = grade.Evaluate; if (evaluate != null) { this.RaiseChanged(string.Format("【开始装载年级[{0}]下客观评价[{1}]数据..】", grade.GradeName, evaluate.EvaluateName)); g.Evaluate.EvaluateID = evaluate.EvaluateID; g.Evaluate.EvaluateName = evaluate.EvaluateName; g.Evaluate.Type = (EnumEvaluateType)((int)evaluate.Type); g.Evaluate.MinValue = evaluate.MinValue; g.Evaluate.MaxValue = evaluate.MaxValue; Impl.EvaluateItem[] items = evaluate.Items; if (items != null && items.Length > 0) { for (int i = 0; i < items.Length; i++) { EvaluateItem item = new EvaluateItem(); item.ItemID = items[i].ItemID; item.ItemName = items[i].ItemName; item.ItemValue = items[i].ItemValue; g.Evaluate.Items.Add(item); } } } #endregion #region 目录。 Impl.Catalog[] catalogs = grade.Catalogs; if (catalogs != null && catalogs.Length > 0) { for (int i = 0; i < catalogs.Length; i++) { Catalog catalog = new Catalog(); catalog.CatalogID = catalogs[i].CatalogID; catalog.CatalogCode = catalogs[i].CatalogCode; catalog.CatalogName = catalogs[i].CatalogName; catalog.TypeName = catalogs[i].TypeName; catalog.OrderNO = catalogs[i].OrderNO; this.RaiseChanged(string.Format("【开始装载年级[{0}]下科目[{1}]数据..】", grade.GradeName, catalogs[i].CatalogName)); #region 知识要点。 Impl.KnowledgePoint[] points = catalogs[i].Points; if (points != null && points.Length > 0) { this.RaiseChanged(string.Format("【开始装载年级[{0}]下科目[{1}]下知识要点数据..】", grade.GradeName, catalogs[i].CatalogName)); for (int j = 0; j < points.Length; j++) { KnowledgePoint point = new KnowledgePoint(); point.PointID = points[j].PointID; point.PointCode = points[j].PointCode; point.PointName = points[j].PointName; point.Description = points[j].Description; point.OrderNO = points[j].OrderNO; catalog.Points.Add(point); } } #endregion g.Catalogs.Add(catalog); } } #endregion #region 班级。 Impl.Class[] classes = grade.Classes; if (classes != null && classes.Length > 0) { for (int i = 0; i < classes.Length; i++) { Class c = new Class(); c.ClassID = classes[i].ClassID; c.ClassCode = classes[i].ClassCode; c.ClassName = classes[i].ClassName; c.OrderNO = classes[i].OrderNO; this.RaiseChanged(string.Format("【开始装载年级[{0}]下班级[{1}]数据..】", grade.GradeName, classes[i].ClassName)); #region 学生。 Impl.Student[] students = classes[i].Students; if (students != null && students.Length > 0) { for (int k = 0; k < students.Length; k++) { Student s = new Student(); s.StudentID = students[k].StudentID; s.StudentCode = students[k].StudentCode; s.StudentName = students[k].StudentName; c.Students.Add(s); this.RaiseChanged(string.Format("{0}.{1}[{2},{3}]", k + 1, s.StudentName, classes[i].ClassName, grade.GradeName)); } } #endregion g.Classes.Add(c); } } #endregion sync.School.Teacher.Grades.Add(g); this.RaiseChanged("【已装载完成年级数据:" + g.ToString() + "】"); } } else this.RaiseChanged("同步年级信息失败!"); #endregion } else this.RaiseChanged("同步教师信息失败!"); #endregion } else this.RaiseChanged("同步学校信息失败!"); #endregion this.RaiseChanged("【已完成装载数据,保存数据到本地存储...】"); TeaSyncData.Serialize(sync, FolderStructure.UserSyncDataFile(callback.AsyncState.ToString())); this.RaiseChanged("【完成数据同步!】"); if (complete != null) complete(null, EventArgs.Empty); } else { this.RaiseChanged("【数据发生异常:" + result.ResultMessage + "】"); } } }), teacherID); } catch (Exception e) { this.RaiseChanged("【下载同步数据发生异常】" + e.Message); } } }