protected override void OnLoad(EventArgs e) { person = Neusoft.FrameWork.Management.Connection.Operator as Neusoft.HISFC.Models.Base.Employee; if (person.PermissionGroup == null) { return; } this.lvGroup.Items.Clear(); foreach (Neusoft.FrameWork.Models.NeuObject obj in person.PermissionGroup) { if (obj.Name.Trim() != "") { ListViewItem item = new ListViewItem(obj.Name, 0); item.Text = obj.Name; item.ImageIndex = 0; item.Tag = obj; this.lvGroup.Items.Add(item); } } Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager manager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //System.Collections.ArrayList alDepts = manager.GetMultiDept(person.ID); System.Collections.ArrayList alDepts = manager.GetMultiDeptNew(person.ID); this.cmbDept.AddItems(alDepts); this.cmbDept.Tag = person.Dept.ID; this.lvGroup.Items[0].Selected = true; if (person.PermissionGroup.Count <= 1 && alDepts.Count <= 1) { isEnterToLogin = true; } base.OnLoad(e); this.SetCurrentGroup(person.CurrentGroup, person.Dept); }
/// <summary> /// 取全部科室列表 /// </summary> public void BeforeLoad(string statCode) { try { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager statMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //创建科室分类等级树,返回一级节点列表 ArrayList depts = statMgr.LoadLevelViewDepartemt(statCode); foreach (Neusoft.HISFC.Models.Base.DepartmentStat info in depts) { hashTable.Add(info.PkID, info); } //{31FD985A-A165-4812-8CBE-CA2E2C7B9A7B} 加载科室编码、名称对照字典 Neusoft.HISFC.BizLogic.Manager.Department deptManager = new Neusoft.HISFC.BizLogic.Manager.Department(); ArrayList alDept = deptManager.GetDeptAllUserStopDisuse(); if (alDept != null) { this.deptNameDictionary = new Dictionary <string, string>(); foreach (Neusoft.HISFC.Models.Base.Department info in alDept) { this.deptNameDictionary.Add(info.ID, info.Name); } } //在TreeView总显示科室信息 AddView(statCode); } catch { } }
private int QueryTermalDept() { //Neusoft.HISFC.BizProcess.Integrate.Manager managerInt = new Neusoft.HISFC.BizProcess.Integrate.Manager(); Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager dsmManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); alTermalDept = dsmManager.LoadDepartmentStatAndByNodeKind("98", "1"); //this.alTermalDept = managerInt.GetConstantList("Termin"); return(1); }
/// <summary> /// 取科室分类最大编码 /// </summary> private int GetMaxCode() { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); string deptCode = deptManager.GetMaxCode(this.departmentStat.StatCode); if (deptCode == "-1") { MessageBox.Show(deptManager.Err); return(-1); } this.txtDeptCode.Text = deptCode; return(1); }
public void Init() { this.ImageList = this.deptImageList; this.Nodes.Clear(); #region 显示各个权限科室 Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptMagr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); Neusoft.HISFC.BizLogic.Manager.Department depts = new Neusoft.HISFC.BizLogic.Manager.Department(); ArrayList deptList = new ArrayList(); TreeNode root = new TreeNode(); root.Text = "所有科室"; root.Tag = "ALL"; root.ImageIndex = 1; this.Nodes.Add(root); TreeNode node; if (this.isAllDept == false) { deptList = deptMagr.GetMultiDeptNew(deptMagr.Operator.ID); foreach (Neusoft.HISFC.Models.Base.DepartmentStat dept in deptList) { node = new TreeNode(); node.Text = dept.Name; node.Tag = dept.ID; node.ImageIndex = 0; root.Nodes.Add(node); } } else { deptList = depts.GetInHosDepartment(); foreach (Neusoft.HISFC.Models.Base.Department dept in deptList) { node = new TreeNode(); node.Text = dept.Name; node.Tag = dept.ID; node.ImageIndex = 0; root.Nodes.Add(node); } } root.ExpandAll(); #endregion }
/// <summary> /// 数据初始化 /// </summary> private void Init() { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); this.alChooseDept = deptStatManager.LoadChildrenUnionDept(this.statCode, "AAAA"); if (this.alChooseDept == null) { MessageBox.Show(Language.Msg("取科室列表错误:" + deptStatManager.Err)); return; } Neusoft.HISFC.BizProcess.Integrate.Manager managerIntegrate = new Neusoft.HISFC.BizProcess.Integrate.Manager(); this.deptTypeHelper = new Neusoft.FrameWork.Public.ObjectHelper(); this.deptTypeHelper.ArrayObject = this.alChooseDept; //{CFC740A1-77C6-4722-A6BF-DCDC94171838} by nxy this.SetColumnFormat(); }
/// <summary> /// 获取病案科室结构 /// </summary> protected ArrayList QueryDeptStat() { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager myDeptManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //ArrayList al = myDeptManager.LoadDepartmentStat("72"); ArrayList al = myDeptManager.LoadDepartmentStatAndByNodeKind("72", "1"); //Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager myDepartmentStatManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //ArrayList al = myDepartmentStatManager.LoadDepartmentStatAndByNodeKind("72", "0"); if (al == null) { MessageBox.Show("获取病案科室结构失败"); return(null); } return(al); }
/// <summary> /// 加载多科室 /// </summary> private void AddDeptDetial(string EmployeCode) { if (EmployeCode == "") { this.neuSpread1_Sheet1.RowCount = 0; } Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //根据人员编码提取操作员可以登陆的科室信息 ArrayList list = deMgr.GetMultiDept(EmployeCode); foreach (Neusoft.HISFC.Models.Base.DepartmentStat info in list) { this.neuSpread1_Sheet1.Rows.Add(0, 1); this.neuSpread1_Sheet1.Cells[0, 0].Text = info.DeptName; } }
/// <summary> /// 获取科室结构信息 /// </summary> /// <returns></returns> private int ShowDeptStat() { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); ArrayList alDeptStat = deptStatManager.LoadDepartmentStat("03"); if (alDeptStat == null) { MessageBox.Show(Language.Msg("获取科室节点信息失败")); return(-1); } foreach (Neusoft.HISFC.Models.Base.DepartmentStat deptStat in alDeptStat) { if (this.hsphaDept.ContainsKey(deptStat.DeptCode)) { continue; } if (deptStat.DeptCode.Substring(0, 1) == "S") { continue; } Neusoft.HISFC.Models.Pharmacy.DeptConstant deptConstant = new Neusoft.HISFC.Models.Pharmacy.DeptConstant(); deptConstant.ID = deptStat.DeptCode; deptConstant.Name = deptStat.DeptName; int iCount = this.neuSpread1_Sheet1.Rows.Count; this.neuSpread1_Sheet1.Rows.Add(iCount, 1); this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColDeptID].Value = deptConstant.ID; //部门编码 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColDeptName].Value = deptConstant.Name; //部门名称 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColIsStore].Value = false; this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColIsBatch].Value = false; //是否按批号管理 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColUnitFlag].Value = "最小单位"; //库存管理默认单位:0最小单位,1包装单位 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColIsArk].Value = false; //药柜管理标志 是否药柜管理 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColInListNO].Value = ""; //药柜管理标志 是否药柜管理 this.neuSpread1_Sheet1.Cells[iCount, (int)ColumnSet.ColOutListNO].Value = ""; //药柜管理标志 是否药柜管理 } return(1); }
/// <summary> /// 科室结构信息显示 /// </summary> public void ShowDeptStruct() { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); ArrayList alDeptStat = deptStatManager.LoadDepartmentStat("05"); if (alDeptStat == null) { MessageBox.Show(Language.Msg("获取科室节点信息失败")); return; } ArrayList al = new ArrayList(); foreach (Neusoft.HISFC.Models.Base.DepartmentStat deptStat in alDeptStat) { if (this.hsphaDept.ContainsKey(deptStat.DeptCode)) { continue; } if (deptStat.DeptCode.Substring(0, 1) == "S") { continue; } Neusoft.HISFC.Models.Material.MaterialStorage storage = new Neusoft.HISFC.Models.Material.MaterialStorage(); storage.ID = deptStat.DeptCode; storage.Name = this.deptHelper.GetName(deptStat.DeptCode); storage.Name = storage.Name; storage.ID = deptStat.DeptCode; storage.SpellCode = deptStat.SpellCode; storage.WBCode = deptStat.WBCode; al.Add(storage); } this.AddDataToTable(al, true); }
/// <summary> /// 保存 /// </summary> private void Save() { //判断输入有效性 if (!ValidateValue()) { return; } //取控件中的科室数据信息 if (this.departmentStat == null) { this.departmentStat = new Neusoft.HISFC.Models.Base.DepartmentStat(); } //如果是科室分类,则取科室分类的最大编码。 if (this.chbClass.Checked) { this.departmentStat.NodeKind = 0; //如果是新增科室分类,则取 if (this.departmentStat.DeptCode == "") { this.GetMaxCode(); } } else { this.departmentStat.NodeKind = 1; } Neusoft.HISFC.Models.Base.Department deptment = new Neusoft.HISFC.Models.Base.Department(); //在增加科室时判断该科室是否已经存在 if (!this.DoEvent(this.txtDeptCode.Text.Trim())) { MessageBox.Show("该科室在本科室结构中已存在,请重新选择!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } #region 科室基本信息 if (!this.chbClass.Checked) //不是科室分类 { deptment.ID = this.txtDeptCode.Text.Trim(); //科室编码 deptment.Name = this.comboDeptName.Text.Trim(); //科室名称 deptment.SpellCode = this.txtSpellCode.Text.Trim(); //拼音码 deptment.WBCode = this.txtWbCode.Text.Trim(); //五笔码 deptment.UserCode = this.txtUserCode.Text.Trim(); //自定义码 deptment.ShortName = this.txtDeptSimpleName.Text.Trim(); //科室简称 //如果英文名称不为空 if (this.txtDeptEnglish.Text != "") { deptment.EnglishName = this.txtDeptEnglish.Text.Trim();//科室英文名称 } if (this.comboDeptType.SelectedIndex != -1) { deptment.DeptType.ID = this.comboDeptType.Tag;//科室类型ID } //停用 if (this.chbStop.Checked) { deptment.ValidState = Neusoft.HISFC.Models.Base.EnumValidState.Valid;//有效性状态 } else { deptment.ValidState = Neusoft.HISFC.Models.Base.EnumValidState.Invalid; } //排序ID if (txtSortID.Text != "") { deptment.SortID = Neusoft.FrameWork.Function.NConvert.ToInt32(txtSortID.Text.Trim()); //排序ID } deptment.SpecialFlag = this.comboDeptPro.SelectedIndex.ToString(); //特殊科室标识 deptment.IsRegDept = this.chbReg.Checked; //是否挂号科室 deptment.IsStatDept = this.chbTat.Checked; //是否统计科室 deptment.Memo = this.txtMark.Text.Trim(); //备注 #region 是否已经存在编码相同但名称不同的科室 Neusoft.HISFC.Models.Base.Department depttempt = deptMgr.GetDeptmentById(deptment.ID); if (depttempt == null) { MessageBox.Show("该科室编码没有与之相对应的科室" + deptMgr.Err); return; } if ((depttempt.ID == deptment.ID) && (depttempt.Name != deptment.Name)) { if (MessageBox.Show("已经存在编码为" + depttempt.ID + "的记录" + depttempt.Name + "是否要替换为:" + deptment.Name + "吗", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No) { return; } } } #endregion //将控件中的数据保存到实体中 this.departmentStat.DeptCode = this.txtDeptCode.Text.Trim(); //科室编码 this.departmentStat.DeptName = this.comboDeptName.Text.Trim(); //科室名称 this.departmentStat.SpellCode = this.txtSpellCode.Text.Trim(); //拼音码 this.departmentStat.WBCode = this.txtWbCode.Text.Trim(); //五笔码 this.departmentStat.ValidState = Neusoft.HISFC.Models.Base.EnumValidState.Valid; //有效标志。0 在用。1停用 this.departmentStat.SortId = Neusoft.FrameWork.Function.NConvert.ToInt32(this.txtSortID.Text.Trim()); //排序号 this.departmentStat.Memo = this.txtMark.Text.Trim(); //备注 //保存时,如果没有拼音码或者五笔码,则自动生成 if (this.txtSpellCode.Text.Trim() == "" || this.txtWbCode.Text.Trim() == "") { CreateSpell(); //产生拼音码和五笔码 } //定义科室分类表管理类 Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatManager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); ////定义事务 //Neusoft.FrameWork.Management.Transaction trans = new Neusoft.FrameWork.Management.Transaction(deptStatManager.Connection); //trans.BeginTransaction(); ////管理类设置当前事务 //deptStatManager.SetTrans(trans.Trans); deptMgr.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); try { //Do科室分类表,先保存,如果不存在则插入一条记录 int parm = deptStatManager.UpdateDepartmentStat(this.departmentStat); if (parm == 0) { parm = deptStatManager.InsertDepartmentStat(this.departmentStat); } if (parm != 1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("数据保存失败:" + deptStatManager.Err); return; } #region 基础数据维护 if (!this.chbClass.Checked) { if (deptMgr.Insert(deptment) == -1) { if (deptMgr.DBErrCode == 1) { if (deptMgr.Update(deptment) == -1 || deptMgr.Update(deptment) == 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("保存科室信息失败" + deptMgr.Err); return; } } else { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show("保存科室信息失败" + deptMgr.Err); return; } } } #endregion } catch (Exception a) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(a.Message); return; } Neusoft.FrameWork.Management.PublicTrans.Commit(); this.FindForm().DialogResult = DialogResult.OK; #endregion }
private void tvDepartmentLevelTree1_DragDrop(object sender, DragEventArgs e) { /*该程序段变量注释! * dragNode为【拖动】节点 * objectNode为【目标】节点 * */ try { //获得进行"Drag"操作中【拖动】的节点 TreeNode dragNode = null; ListViewItem item = null; //是在内部拖动 dragNode = e.Data.GetData("System.Windows.Forms.TreeNode") as TreeNode; //是从ListView拖动 if (dragNode == null) { item = e.Data.GetData("System.Windows.Forms.ListViewItem") as ListViewItem; dragNode = (item.Tag) as TreeNode; } if (dragNode != null) { //根据窗口位置转换成TreeView位置 Point position = this.tvDepartmentLevelTree1.PointToClient(new Point(e.X, e.Y)); //根据TreeView位置取当前【目标】节点 TreeNode objectNode = this.tvDepartmentLevelTree1.GetNodeAt(position); //在目标组件中加入拖入的项目 if (objectNode != null) { //如果拖动后的位置跟拖动前的位置没变,则提示不能拖动 if (dragNode.Parent == objectNode) { MessageBox.Show("无法移动科室:源科室与目标科室相同!", "提示"); return; } //如果目标节点是拖动节点的子节点,则不允许拖动 if (objectNode.FullPath.IndexOf(dragNode.FullPath) > 0) { MessageBox.Show("无法移动科室:不能将科室移动到其下级科室中!", "提示"); return; } //更改拖动科室的父级科室编码和名称 Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); Neusoft.HISFC.Models.Base.DepartmentStat parentDept = objectNode.Tag as Neusoft.HISFC.Models.Base.DepartmentStat; Neusoft.HISFC.Models.Base.DepartmentStat dept = dragNode.Tag as Neusoft.HISFC.Models.Base.DepartmentStat; //目标节点的统计大类编码,用于比较拖动的科室是否在同一个统计大类中 string statCode = ""; //如果目标节点是统计大类(一级节点),则将大类付与拖动科室的父级 if (parentDept == null) { //取目标节点统计大类的编码 statCode = objectNode.Tag.ToString(); //只能在同一大类下进行拖动 if (statCode != dept.StatCode) { MessageBox.Show("无法移动科室:不能将科室移动到另一个科室分类中。", "提示"); return; } if (MessageBox.Show("确定要把科室" + dept.DeptName + "转到" + objectNode.Text + "下吗?", "科室转移提示", MessageBoxButtons.OKCancel) == DialogResult.OK) { dept.PardepCode = "AAAA"; dept.PardepName = objectNode.Text; } } else { //取目标节点的统计大类编码 statCode = parentDept.StatCode; //只能在同一大类下进行拖动 if (statCode != dept.StatCode) { MessageBox.Show("无法移动科室:不能将科室移动到另一个科室分类中。", "提示"); return; } if (MessageBox.Show("确定要把科室“" + dept.DeptName + "”转到“" + parentDept.DeptName + "”下吗?", "科室转移提示", MessageBoxButtons.OKCancel) == DialogResult.Cancel) { return; } //如果目标节点是科室,则将科室信息付与拖动科室的父级 dept.PardepCode = parentDept.DeptCode; dept.PardepName = parentDept.DeptName; } if (deptMgr.UpdateDepartmentStat(dept) != 1) { MessageBox.Show("更新科室信息时出错:" + deptMgr.Err); return; } //删除拖动的节点以前的位置 this.tvDepartmentLevelTree1.DelDepartment(dragNode); //在新的位置插入拖动的节点 this.tvDepartmentLevelTree1.AddDepartment(objectNode, dragNode); } } } catch { } }
/// <summary> /// 设置菜单和工具栏中的项目是否可用 /// </summary> private void SetEnable() { //取当前TreeView中选中的节点 Neusoft.HISFC.Models.Base.DepartmentStat departmentStat = this.tvDepartmentLevelTree1.SelectedNode.Tag as Neusoft.HISFC.Models.Base.DepartmentStat; //如果当前的TreeView选中的节点不是统计大类(一级节点),则根据属性判断是否可以增加人,否则不允许增加人员 if (departmentStat != null) { Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); #region 根据大类权限数量来判断是否可以增加人员(路志鹏、2007-6-15) int resultValue = deptStatMgr.DepartMentClassCount(departmentStat.StatCode); if (resultValue <= 0) { this.menuItemAddUser.Enabled = false; } else { this.menuItemAddUser.Enabled = true; } #endregion } else { this.menuItemAddUser.Enabled = false; } //如果当前的ListView中选中了项目,则属性菜单项可用,否则不可用 if (this.neuListView1.SelectedItems.Count > 0 && this.neuListView1.Focused) { //当ListView中选中项目时,允许查看其属性 this.menuItemProperty.Enabled = true; this.toolBarService.SetToolButtonEnabled("属性", true); //如果当前的ListView中选中了科室,则删除菜单项可用,否则不可用。人员不能在此处删除。 Neusoft.HISFC.Models.Admin.UserPowerDetail userPower = this.neuListView1.SelectedItems[0].Tag as Neusoft.HISFC.Models.Admin.UserPowerDetail; if (userPower == null) { this.menuItemDelete.Enabled = true; this.toolBarService.SetToolButtonEnabled("删除", true); } else { this.menuItemDelete.Enabled = false; this.toolBarService.SetToolButtonEnabled("删除", false); } } else { //当ListView中没有选中项目时,如果TreeView中选中了项目则允许查看TreeView中节点的属性 if (this.tvDepartmentLevelTree1.SelectedNode != null && this.tvDepartmentLevelTree1.SelectedNode.Parent != null) { this.menuItemProperty.Enabled = true; this.toolBarService.SetToolButtonEnabled("属性", true); } else { this.menuItemProperty.Enabled = false; this.toolBarService.SetToolButtonEnabled("属性", false); } this.menuItemDelete.Enabled = false; this.toolBarService.SetToolButtonEnabled("删除", false); } }
/// <summary> /// 删除当前ListView中选中的科室 /// </summary> public void DelDepartment() { //取得当前ListView中要修改的科室数据信息 TreeNode node = this.neuListView1.SelectedItems[0].Tag as TreeNode; //只能删除科室数据 if (node == null) { return; } //取要删除的科室信息 Neusoft.HISFC.Models.Base.DepartmentStat dept = node.Tag as Neusoft.HISFC.Models.Base.DepartmentStat; if (dept != null) { if (dept.Childs.Count > 0) { MessageBox.Show("此科室有下级科室,不允许删除。\n请先删除下级科室。", "删除无法进行", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } //取此科室下级人员信息,如果存在人员则不允许删除。 Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager userMgr = new Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager(); ArrayList al = userMgr.LoadUser(dept.StatCode, dept.DeptCode); if (al == null) { MessageBox.Show("取人员信息时出错:" + userMgr.Err); return; } if (al.Count > 0) { MessageBox.Show("此科室有下级人员,不允许删除。\n请先删除下级人员。", "删除无法进行", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (MessageBox.Show("确定要把科室“" + dept.DeptName + "”删除吗?", "确认科室删除", MessageBoxButtons.YesNo) == DialogResult.No) { return; } //定义管理类,删除科室 Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager deptStatMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //Neusoft.FrameWork.Management.Transaction trans = new Neusoft.FrameWork.Management.Transaction(deptStatMgr.Connection); //trans.BeginTransaction(); //deptStatMgr.SetTrans(trans.Trans); try { //删除一个科室数据 int parm = deptStatMgr.Delete(dept.StatCode, dept.DeptCode); if (parm != 1) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show("数据保存失败:" + deptStatMgr.Err); return; } } catch (Exception e) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show("数据保存失败!" + e.Message, "提示"); return; } Neusoft.FrameWork.Management.PublicTrans.Commit(); //MessageBox.Show("数据保存失败!" + e.Message,"提示"); } //在TreeView中移除被删掉的节点 this.tvDepartmentLevelTree1.DelDepartment(node); //显示当前TreeView中选中节点的下级内容 this.ShowList(); }
/// <summary> /// 科室列表数据加载 /// </summary> /// <returns>数据加载成功返回1 加载存在错误返回-1</returns> protected virtual int InitDept() { Neusoft.HISFC.BizLogic.Manager.Department deptManagment = new Neusoft.HISFC.BizLogic.Manager.Department(); ArrayList deptList = deptManagment.GetDeptmentAll(); if (deptList == null) { System.Windows.Forms.MessageBox.Show("获取科室数据发生错误" + deptManagment.Err); return(1); } System.Collections.Hashtable hsDeptList = new Hashtable(); pList = new List <Neusoft.HISFC.Models.Base.Department>(); piList = new List <Neusoft.HISFC.Models.Base.Department>(); #region 照科室类型加载 foreach (Neusoft.HISFC.Models.Base.Department dept in deptList) { hsDeptList.Add(dept.ID, dept); if (dept.DeptType.ID.ToString() == Neusoft.HISFC.Models.Base.EnumDepartmentType.P.ToString()) { pList.Add(dept); continue; } if (dept.DeptType.ID.ToString() == Neusoft.HISFC.Models.Base.EnumDepartmentType.PI.ToString()) { piList.Add(dept); continue; } } #endregion //使用科室结构树显示时,代码继续执行。否则返回 if (!this.isUseDeptStruct) { return(0); } #region 照科室结构加载 pList.Clear(); piList.Clear(); //创建科室分类等级树,返回一级节点列表 Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager statMgr = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); ArrayList deptStruct = statMgr.LoadLevelViewDepartemt("03"); if (deptStruct == null) { System.Windows.Forms.MessageBox.Show("获取科室结构数据发生错误" + deptManagment.Err); return(1); } foreach (Neusoft.HISFC.Models.Base.DepartmentStat info in deptStruct) { if (info.DeptCode == this.piStatCode) //加载大类药库 { foreach (Neusoft.HISFC.Models.Base.DepartmentStat piInfo in info.Childs) { if (hsDeptList.ContainsKey(piInfo.DeptCode)) { piList.Add(hsDeptList[piInfo.ID] as Neusoft.HISFC.Models.Base.Department); } } } if (info.DeptCode == this.pStatCode) //加载大类药房 { foreach (Neusoft.HISFC.Models.Base.DepartmentStat pInfo in info.Childs) { if (hsDeptList.ContainsKey(pInfo.DeptCode)) { pList.Add(hsDeptList[pInfo.ID] as Neusoft.HISFC.Models.Base.Department); } } } } #endregion return(1); }
private void Init(User user) { this.nTreeView1.NodeMouseDoubleClick += new TreeNodeMouseClickEventHandler(nTreeView1_NodeMouseDoubleClick); foreach (Role _role in _roles) { TreeNode _node = new TreeNode(_role.Name); _node.ImageIndex = 0; _node.Tag = _role; this.nTreeView1.Nodes.Add(_node); } this.nTreeView1.ExpandAll(); //初始化科室信息,只通过人员信息判断其能登录的科室。 Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager manager = new Neusoft.HISFC.BizLogic.Manager.DepartmentStatManager(); //System.Collections.ArrayList alDepts = manager.GetMultiDeptNew(currentUser.PersonId); System.Collections.ArrayList alDepts = null; //{36DEFA19-3650-443f-A173-E2A355FA00C2} Neusoft.HISFC.BizLogic.Manager.Person p = new Neusoft.HISFC.BizLogic.Manager.Person(); Neusoft.HISFC.Models.Base.Employee empl = p.GetPersonByID(user.PersonId); ////{A4ED7668-8B4C-441f-9A0D-7029EA040B14} //if (empl.EmployeeType.ID.ToString() == "N") //{ // alDepts = manager.GetMultiDeptNewForNurser(currentUser.PersonId); //} //else //{ // alDepts = manager.GetMultiDeptNew(currentUser.PersonId); //} alDepts = manager.GetMultiDeptNew(currentUser.PersonId); //如果是管理员,默认科室信息。 if (currentUser.Id == "admin") { Neusoft.FrameWork.Models.NeuObject obj = new Neusoft.FrameWork.Models.NeuObject(); obj.ID = "admin"; obj.Name = "admin"; ArrayList list = new ArrayList(); list.Add(obj); this.cmbDept.AddItems(list); } else { this.cmbDept.AddItems(alDepts); } if (alDepts != null) { this.cmbDept.SelectedIndex = 0; } //#region 默认上次登录信息 ////{9DF35C63-1468-4fa5-BBEA-5D00197C0994} yangw 20100831 //Neusoft.HISFC.BizLogic.Manager.UserManager userMgr = new Neusoft.HISFC.BizLogic.Manager.UserManager(); //Neusoft.FrameWork.Models.NeuObject lastLoginInfo = userMgr.GetLastLoginInfo(currentUser.operId, 10); //if (lastLoginInfo != null) //{ // //登录科室 // foreach (Neusoft.FrameWork.Models.NeuObject o in cmbDept.alItems) // { // if (o.ID == lastLoginInfo.ID) // { // cmbDept.Tag = lastLoginInfo.ID; // break; // } // } // //登录模块 // foreach (TreeNode n in nTreeView1.Nodes) // { // if (n.Text == lastLoginInfo.Name) // { // nTreeView1.SelectedNode = n; // break; // } // } //} //#endregion }