protected override int OnDrawTree() { if (tvLeft == null) { return(-1); } Neusoft.HISFC.Models.RADT.InStateEnumService inState = new Neusoft.HISFC.Models.RADT.InStateEnumService(); inState.ID = Neusoft.HISFC.Models.Base.EnumInState.I.ToString(); ArrayList emplList = managerIntegrate.QueryPatientBasic(base.employee.Dept.ID, inState); TreeNode parentTreeNode = new TreeNode("±¾¿Æ»¼Õß"); tvLeft.Nodes.Add(parentTreeNode); foreach (Neusoft.HISFC.Models.RADT.PatientInfo empl in emplList) { TreeNode emplNode = new TreeNode(); emplNode.Tag = empl.ID; emplNode.Text = empl.Name; parentTreeNode.Nodes.Add(emplNode); } parentTreeNode.ExpandAll(); return(base.OnDrawTree()); }
/// <summary> ///初始化树 /// </summary> /// <returns></returns> protected override int OnDrawTree() { if (tvLeft == null) { return(-1); } base.OnDrawTree(); this.tvLeft.Nodes.Clear(); //左侧多选 this.tvLeft.CheckBoxes = true; if (isShowAllInDeptPatient == false) { //在院患者 Neusoft.HISFC.Models.RADT.InStateEnumService inState = new Neusoft.HISFC.Models.RADT.InStateEnumService(); inState.ID = Neusoft.HISFC.Models.Base.EnumInState.I.ToString(); ArrayList emplList = managerIntegrate.QueryPatientBasic(base.employee.Dept.ID, inState); TreeNode parentTreeNode = new TreeNode("本科患者"); parentTreeNode.Checked = false; parentTreeNode.Tag = "ROOT"; tvLeft.Nodes.Add(parentTreeNode); foreach (Neusoft.HISFC.Models.RADT.PatientInfo empl in emplList) { TreeNode emplNode = new TreeNode(); emplNode.Tag = empl; emplNode.Text = empl.Name; parentTreeNode.Nodes.Add(emplNode); } parentTreeNode.ExpandAll(); parentTreeNode.Checked = false; } else { Neusoft.FrameWork.WinForms.Classes.Function.ShowWaitForm("正在加载全院患者列表,请稍等......"); Application.DoEvents(); //全院患者列表 //在院患者 ArrayList emplList = managerIntegrate.QueryPatient(Neusoft.HISFC.Models.Base.EnumInState.I); //构建树列表 Dictionary <string, TreeNode> deptDic = new Dictionary <string, TreeNode>(); TreeNode parentTreeNode = new TreeNode("全院患者"); parentTreeNode.Tag = "ROOT"; tvLeft.Nodes.Add(parentTreeNode); int index = 0; foreach (Neusoft.HISFC.Models.RADT.PatientInfo empl in emplList) { if (deptDic.ContainsKey(empl.PVisit.PatientLocation.Dept.ID)) { TreeNode patient = new TreeNode(); patient.Tag = empl; patient.Text = empl.Name + "【" + empl.PID.PatientNO.ToString() + "】"; patient.Checked = false; deptDic[empl.PVisit.PatientLocation.Dept.ID].Nodes.Add(patient); } else { TreeNode dept = new TreeNode(); dept.ForeColor = Color.Blue; dept.Tag = empl.PVisit.PatientLocation.Dept; dept.Text = empl.PVisit.PatientLocation.Dept.Name + "【" + empl.PVisit.PatientLocation.Dept.ID.ToString() + "】"; TreeNode patient = new TreeNode(); patient.Tag = empl; patient.Text = empl.Name + "【" + empl.PID.PatientNO.ToString() + "】"; patient.Checked = false; dept.Nodes.Add(patient); deptDic.Add(empl.PVisit.PatientLocation.Dept.ID, dept); dept.Checked = false; parentTreeNode.Nodes.Add(dept); } index++; } parentTreeNode.ExpandAll(); parentTreeNode.Checked = false; Neusoft.FrameWork.WinForms.Classes.Function.HideWaitForm(); } this.tvLeft.AfterSelect -= new TreeViewEventHandler(tvLeft_AfterSelect); this.tvLeft.AfterSelect += new TreeViewEventHandler(tvLeft_AfterSelect); this.tvLeft.AfterCheck -= new TreeViewEventHandler(tvLeft_AfterCheck); this.tvLeft.AfterCheck += new TreeViewEventHandler(tvLeft_AfterCheck); return(1); }