/// <summary> /// 初始化 /// </summary> /// <returns>成功返回1 失败返回-1</returns> private int Init() { Neusoft.HISFC.BizLogic.Manager.Constant consManager = new Neusoft.HISFC.BizLogic.Manager.Constant(); //限制药品类别 ArrayList al = consManager.GetList("RestrainedType"); if (al == null) { al = new ArrayList(); } foreach (Neusoft.FrameWork.Models.NeuObject info in al) { this.hsRestrainedQualityHelper.Add(info.ID, null); } Neusoft.HISFC.BizLogic.Manager.PowerLevelManager powerLevelManager = new Neusoft.HISFC.BizLogic.Manager.PowerLevelManager(); Neusoft.HISFC.Models.Admin.PowerLevelClass3 privClass3 = powerLevelManager.LoadLevel3ByPrimaryKey(this.phaOutManager.Class2Priv.ID, this.phaOutManager.PrivType.ID); if (privClass3 != null) { privJoinClass3 = powerLevelManager.LoadLevel3ByPrimaryKey("0310", privClass3.Class3JoinCode); } return(1); }
/// <summary> /// 选择人员事件 /// </summary> /// <param name="neuObj">人员信息</param> private void form_SelectedItem(Neusoft.FrameWork.Models.NeuObject neuObj) { //取返回数据的编码和名称 this.lblCode.Text = neuObj.ID; this.comboName.Text = neuObj.Name; Neusoft.HISFC.Models.Base.Employee objPer = this.psMgr.GetPersonByID(neuObj.ID); if (objPer == null) { MessageBox.Show("查询人员信息失败"); return; } this.setInfo(objPer); #region 默认选中多科室 foreach (ListViewItem lvi in this.lvPrivList.Items) { Neusoft.HISFC.Models.Admin.PowerLevelClass3 class3 = lvi.Tag as Neusoft.HISFC.Models.Admin.PowerLevelClass3; if (class3.Class3Code == "01" && class3.Class2Code == "0000") { lvi.Checked = true; } } #endregion this.txtMark.Focus(); }
/// <summary> /// 显示三级权限 /// </summary> public void ShowClass3() { //{42AB2AC3-EAC6-4b7d-9102-4997B2E9AAAA} 增加二级权限报错 if (this.operClass2Priv == null || string.IsNullOrEmpty(this.operClass2Priv.Class2Code)) { this.fpClass3_Sheet1.RowCount = 0; return; } //取三级权限 ArrayList al = class3Manager.LoadLevel3ByLevel2(this.operClass2Priv.Class2Code); if (al == null) { MessageBox.Show(Language.Msg(class2Manager.Err)); return; } string[] class3JoinCollection = this.ShowClass3JoinPriv(); if (class3JoinCollection != null) { //创建ComboBoxCellType,填充系统类型列 FarPoint.Win.Spread.CellType.ComboBoxCellType combo = new FarPoint.Win.Spread.CellType.ComboBoxCellType(); //将ComboBoxCellType付给三级权限的对应列 combo.Items = class3JoinCollection; this.fpClass3_Sheet1.Columns[5].CellType = combo; } else { //创建ComboBoxCellType,填充系统类型列 FarPoint.Win.Spread.CellType.ComboBoxCellType combo = new FarPoint.Win.Spread.CellType.ComboBoxCellType(); //将ComboBoxCellType付给三级权限的对应列 combo.Items = new string[1]; this.fpClass3_Sheet1.Columns[5].CellType = combo; } //显示三级权限 this.fpClass3_Sheet1.RowCount = al.Count; for (int i = 0; i < al.Count; i++) { Neusoft.HISFC.Models.Admin.PowerLevelClass3 info = al[i] as Neusoft.HISFC.Models.Admin.PowerLevelClass3; this.fpClass3_Sheet1.Cells[i, 0].Text = info.ID; this.fpClass3_Sheet1.Cells[i, 1].Text = info.Name; this.fpClass3_Sheet1.Cells[i, 2].Text = info.Class3MeaningCode; this.fpClass3_Sheet1.Cells[i, 3].Text = info.Class3MeaningName; this.fpClass3_Sheet1.Cells[i, 4].Text = info.Class3JoinCode; if (this.hsClass3JoinCode.ContainsKey(info.Class3JoinCode)) { this.fpClass3_Sheet1.Cells[i, 5].Text = this.hsClass3JoinCode[info.Class3JoinCode] as string; } this.fpClass3_Sheet1.Cells[i, 6].Text = info.Memo; this.fpClass3_Sheet1.Rows[i].Tag = info; } }
private void tvOper_AfterSelect(object sender, TreeViewEventArgs e) { //取节点名称 if (e.Node.Tag != null) { this.operPriv = e.Node.Tag as Neusoft.HISFC.Models.Admin.PowerLevelClass3; this.SetToolButton(); this.ShowData(); } }
private void tvOper_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e) { //取节点名称 if (e.Node.Tag != null) { this.operPriv = e.Node.Tag as Neusoft.HISFC.Models.Admin.PowerLevelClass3; if (e.Node.Parent != null) { this.operPriv.PowerLevelClass2 = e.Node.Parent.Tag as Neusoft.HISFC.Models.Admin.PowerLevelClass2; } // this.SetToolButton(); this.ShowData(); } }
/// <summary> /// 权限类别初始化 /// </summary> protected void InitPrivOper() { this.tvOper.ImageList = this.tvOper.groupImageList; this.tvOper.Nodes.Clear(); Neusoft.HISFC.Models.Admin.PowerLevelClass3 privClass3; //查询权限 foreach (string tempStr in this.PList) { #region 加载通用类型 privClass3 = new Neusoft.HISFC.Models.Admin.PowerLevelClass3(); privClass3.ID = tempStr.Substring(tempStr.IndexOf("|") + 1); //查询类别 privClass3.Name = tempStr.Substring(0, tempStr.IndexOf("|")); //查询名称 privClass3.Memo = "AAAA"; //权限信息 TreeNode parentNode = new TreeNode(); parentNode.Text = privClass3.Name; parentNode.ImageIndex = 0; parentNode.SelectedImageIndex = 1; parentNode.Tag = privClass3; this.tvOper.Nodes.Add(parentNode); if (privClass3.ID == "In") //获取入库权限类型 { #region 添加入库三级权限 List <Neusoft.FrameWork.Models.NeuObject> alInPriv = this.powerDetailManager.QueryUserPrivCollection(this.privOper.ID, "0310", this.operDept.ID); if (alInPriv == null) { MessageBox.Show(Language.Msg("读取操作员入库权限集合时出错!\n" + this.powerDetailManager.Err)); return; } foreach (Neusoft.FrameWork.Models.NeuObject inInfo in alInPriv) { if (this.operDept.Memo == "PI") { if (inInfo.ID == "M1" || inInfo.ID == "M2" || inInfo.ID == "Z1" || inInfo.ID == "Z2") { continue; } } privClass3 = new Neusoft.HISFC.Models.Admin.PowerLevelClass3(); privClass3.ID = "In"; privClass3.Name = inInfo.Name; privClass3.Memo = inInfo.ID; TreeNode privNode = new TreeNode(); privNode.Text = privClass3.Name; //三级权限名称 privNode.ImageIndex = 2; privNode.SelectedImageIndex = 4; privNode.Tag = privClass3; //三级权限编码 parentNode.Nodes.Add(privNode); } #endregion } if (privClass3.ID == "Out") //获取出库权限类型 { #region 添加出库三级权限 List <Neusoft.FrameWork.Models.NeuObject> alOutPriv = this.powerDetailManager.QueryUserPrivCollection(this.privOper.ID, "0320", this.operDept.ID); if (alOutPriv == null) { MessageBox.Show(Language.Msg("读取操作员出库权限集合时出错!\n" + this.powerDetailManager.Err)); return; } foreach (Neusoft.FrameWork.Models.NeuObject outInfo in alOutPriv) { privClass3 = new Neusoft.HISFC.Models.Admin.PowerLevelClass3(); privClass3.ID = "Out"; privClass3.Name = outInfo.Name; privClass3.Memo = outInfo.ID; TreeNode privNode = new TreeNode(); privNode.Text = privClass3.Name; //三级权限名称 privNode.ImageIndex = 2; privNode.SelectedImageIndex = 4; privNode.Tag = privClass3; //三级权限编码 parentNode.Nodes.Add(privNode); } #endregion } #endregion } if (this.operDept.Memo == "PI") { #region 加载药库通用类型 foreach (string tempStr in this.PIList) { privClass3 = new Neusoft.HISFC.Models.Admin.PowerLevelClass3(); privClass3.ID = tempStr.Substring(tempStr.IndexOf("|") + 1); //查询类别 privClass3.Name = tempStr.Substring(0, tempStr.IndexOf("|")); //查询名称 switch (privClass3.Name) { case "住院": privClass3.Memo = "Z"; break; case "门诊": privClass3.Memo = "M"; break; default: privClass3.Memo = "AAAA"; break; } TreeNode node = new TreeNode(); node.Text = privClass3.Name; node.ImageIndex = 0; node.SelectedImageIndex = 1; node.Tag = privClass3; this.tvOper.Nodes.Add(node); } #endregion } if (this.tvOper.Nodes.Count > 0) { this.tvOper.SelectedNode = this.tvOper.Nodes[0]; } }
/// <summary> /// 保存三级权限 /// </summary> public void SaveClass3() { int parm; bool isUpdate = false; Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(Neusoft.FrameWork.Management.Connection.Instance); //t.BeginTransaction(); class3Manager.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); //先删除数据 parm = class3Manager.Delete(this.operClass2Priv.Class2Code); if (parm == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show(Language.Msg(class3Manager.Err), "错误提示"); return; } //如果处理到有效的数据则更新标志 if (parm > 0) { isUpdate = true; } Neusoft.HISFC.Models.Admin.PowerLevelClass3 info; //插入数据 for (int i = 0; i < this.fpClass3_Sheet1.Rows.Count; i++) { info = new Neusoft.HISFC.Models.Admin.PowerLevelClass3(); info.Class3Code = this.fpClass3_Sheet1.Cells[i, 0].Text; //三级权限编码 info.Class3Name = this.fpClass3_Sheet1.Cells[i, 1].Text; //三级权限名称 info.Class3MeaningCode = this.fpClass3_Sheet1.Cells[i, 2].Text; //系统权限编码 info.Class3MeaningName = this.fpClass3_Sheet1.Cells[i, 3].Text; //系统权限名称 if (info.Class3Code == "" || info.Class3Name == "") { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show(Language.Msg("三级权限编码和名称不能为空"), "提示"); return; } if (info.Class3MeaningCode == "" || info.Class3MeaningName == "") { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show(Language.Msg("请选择系统权限"), "提示"); return; } info.Class3JoinCode = this.fpClass3_Sheet1.Cells[i, 4].Text; //关联权限名称 info.Memo = this.fpClass3_Sheet1.Cells[i, 6].Text; //备注 info.Class2Code = this.operClass2Priv.Class2Code; //二级权限编码 parm = class3Manager.InsertPowerLevelClass3(info); if (parm != 1) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; if (this.class3Manager.DBErrCode == 1) { MessageBox.Show(Language.Msg("编码为【" + info.Class3Code + "】的三级权限已经存在,不能重复添加.")); } else { MessageBox.Show(Language.Msg(this.class3Manager.Err), "错误提示"); } return; } } //如果处理到有效的数据则更新标志 if (this.fpClass3_Sheet1.Rows.Count > 0) { isUpdate = true; } if (isUpdate) { Neusoft.FrameWork.Management.PublicTrans.Commit();; MessageBox.Show(Language.Msg("保存成功"), "提示"); } else { Neusoft.FrameWork.Management.PublicTrans.RollBack();; } }
/// <summary> /// 保存 /// </summary> private void Save() { this.lblCode.Text = this.txtPersonCode.Text; this.comboName.Text = this.txtPersonName.Text; if (ValidateState()) { Neusoft.HISFC.Models.Base.Employee objEmployee = this.getPerson(); if (objEmployee == null) { MessageBox.Show("获取人员信息失败!"); return; } this.userPowerDetail.GrantFlag = true; this.userPowerDetail.Memo = this.txtMark.Text; //备注 this.userPowerDetail.User.ID = this.lblCode.Text; //人员编码 this.userPowerDetail.User.Name = this.comboName.Text; //人员名称 Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction trans = new Neusoft.FrameWork.Management.Transaction(this.userMgr.Connection); //trans.BeginTransaction(); this.userMgr.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); //人员权限分配明细管理类-设置当前事务 this.psMgr.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); //人员管理类-设置当前事务 try { #region 人员信息维护 if (this.psMgr.Update(objEmployee) <= 0) { MessageBox.Show(this.psMgr.Err); if (this.psMgr.Insert(objEmployee) <= 0) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show("保存人员信息失败!" + this.psMgr.Err); return; } } #endregion //删除用户在此处的权限 if (this.userMgr.Delete(this.userPowerDetail.User.ID, this.userPowerDetail.Class1Code, this.userPowerDetail.Dept.ID) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show(this.userMgr.Err); return; } foreach (ListViewItem lvi in this.lvPrivList.CheckedItems) { Neusoft.HISFC.Models.Admin.PowerLevelClass3 level3 = lvi.Tag as Neusoft.HISFC.Models.Admin.PowerLevelClass3; this.userPowerDetail.Class2Code = level3.Class2Code; this.userPowerDetail.PowerLevelClass.Class3Code = level3.Class3Code; //插入用户权限列表 if (this.userMgr.InsertUserPowerDetail(this.userPowerDetail) != 1) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show("数据保存失败!" + this.userMgr.Err); return; } } } catch (Exception e) { Neusoft.FrameWork.Management.PublicTrans.RollBack();; MessageBox.Show("数据保存失败!" + e.Message, "提示"); return; } Neusoft.FrameWork.Management.PublicTrans.Commit(); MessageBox.Show("数据保存成功!"); this.FindForm().DialogResult = DialogResult.OK; } }