Exemple #1
0
        /// <summary>
        /// 根据权限码获取权限信息
        /// </summary>
        /// <param name="userCode">权限人员编码</param>
        /// <param name="class2Code">二级权限码</param>
        /// <param name="class3Code">三级权限码 如不需判断三级权限 则传入null</param>
        /// <returns>成功返回拥有1 失败返回0</returns>
        public virtual int GetPrivDept(string userCode, string class2Code, string class3Code)
        {
            Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager privManager = new Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager();

            List <Neusoft.FrameWork.Models.NeuObject> alPrivDept = new List <Neusoft.FrameWork.Models.NeuObject>();

            if (class3Code != null && class3Code != "")         //取操作员拥有权限的科室
            {
                alPrivDept = privManager.QueryUserPriv(userCode, class2Code, class3Code);
            }
            else
            {
                alPrivDept = privManager.QueryUserPriv(userCode, class2Code);
            }

            if (alPrivDept == null)
            {
                MessageBox.Show(Neusoft.FrameWork.Management.Language.Msg("获取权限科室集合失败"));
                return(0);
            }
            this.SetPriv(alPrivDept, true);
            return(1);
        }
        /// <summary>
        /// 初始化
        /// </summary>
        public void Init()
        {
            this.ImageList = this.groupImageList;

            this.Nodes.Clear();

            Neusoft.FrameWork.Models.NeuObject tempObject;
            //按权限初始化
            Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager privManager = new Neusoft.HISFC.BizLogic.Manager.UserPowerDetailManager();
            List <Neusoft.FrameWork.Models.NeuObject>             alPriv      = null;

            #region 显示入库节点

            alPriv = privManager.QueryUserPriv(privManager.Operator.ID, "0310");
            if (alPriv == null)
            {
                System.Windows.Forms.MessageBox.Show(Language.Msg("获取入库权限发生错误" + privManager.Err));
                return;
            }
            if (alPriv.Count > 0)
            {
                tempObject      = new Neusoft.FrameWork.Models.NeuObject();
                tempObject.Name = "入库单";
                tempObject.ID   = "I";
                tempObject.Memo = "Bill";

                System.Windows.Forms.TreeNode inParentNode = new System.Windows.Forms.TreeNode();
                inParentNode.Text = tempObject.Name;

                inParentNode.ImageIndex         = 0;
                inParentNode.SelectedImageIndex = 0;

                inParentNode.Tag = tempObject;
                this.Nodes.Add(inParentNode);
                foreach (Neusoft.FrameWork.Models.NeuObject obj in alPriv)
                {
                    //{32C46091-AE5F-44b0-BE40-4CF31D307C7C}  放开对药房的限制
                    if (obj.Memo == "PI" || obj.Memo == "P")
                    {
                        System.Windows.Forms.TreeNode nod = new System.Windows.Forms.TreeNode();
                        nod.Text = obj.Name;

                        nod.ImageIndex         = 2;
                        nod.SelectedImageIndex = 4;

                        nod.Tag = obj;
                        inParentNode.Nodes.Add(nod);
                    }
                }
            }

            #endregion

            #region 显示出库节点

            alPriv = privManager.QueryUserPriv(privManager.Operator.ID, "0320");
            if (alPriv == null)
            {
                System.Windows.Forms.MessageBox.Show(Language.Msg("加载出库权限列表发生错误" + privManager.Err));
                return;
            }
            if (alPriv.Count > 0)
            {
                tempObject      = new Neusoft.FrameWork.Models.NeuObject();
                tempObject.Name = "出库单";
                tempObject.ID   = "O";
                tempObject.Memo = "Bill";

                if (this.isShowAttempBill)
                {
                    #region 显示调拨单

                    System.Windows.Forms.TreeNode outParentNode = new System.Windows.Forms.TreeNode();
                    outParentNode.Text = tempObject.Name;

                    outParentNode.ImageIndex         = 0;
                    outParentNode.SelectedImageIndex = 0;

                    outParentNode.Tag = tempObject;
                    this.Nodes.Add(outParentNode);
                    foreach (Neusoft.FrameWork.Models.NeuObject obj in alPriv)
                    {
                        if (obj.Memo == "PI")
                        {
                            System.Windows.Forms.TreeNode nod = new System.Windows.Forms.TreeNode();
                            nod.Text = obj.Name;

                            nod.ImageIndex         = 2;
                            nod.SelectedImageIndex = 4;

                            nod.Tag = obj;
                            outParentNode.Nodes.Add(nod);
                        }
                    }
                    tempObject      = new Neusoft.FrameWork.Models.NeuObject();
                    tempObject.Name = "调拨单";
                    tempObject.ID   = "D";
                    tempObject.Memo = "Bill";

                    System.Windows.Forms.TreeNode attempNode = new System.Windows.Forms.TreeNode();
                    attempNode.Text = tempObject.Name;

                    attempNode.ImageIndex         = 0;
                    attempNode.SelectedImageIndex = 0;

                    attempNode.Tag = tempObject;
                    this.Nodes.Add(attempNode);
                    foreach (Neusoft.FrameWork.Models.NeuObject obj in alPriv)
                    {
                        if (obj.Memo == "P")
                        {
                            System.Windows.Forms.TreeNode nod = new System.Windows.Forms.TreeNode();
                            nod.Text = obj.Name;

                            nod.ImageIndex         = 2;
                            nod.SelectedImageIndex = 4;

                            nod.Tag = obj;
                            attempNode.Nodes.Add(nod);
                        }
                    }

                    #endregion
                }
                else
                {
                    System.Windows.Forms.TreeNode outParentNode = new System.Windows.Forms.TreeNode();

                    outParentNode.Text = tempObject.Name;
                    outParentNode.Tag  = tempObject;

                    this.Nodes.Add(outParentNode);
                    foreach (Neusoft.FrameWork.Models.NeuObject obj in alPriv)
                    {
                        if (obj.Memo == "PI" || obj.Memo == "P")
                        {
                            System.Windows.Forms.TreeNode nod = new System.Windows.Forms.TreeNode();
                            nod.Text = obj.Name;
                            nod.Tag  = obj;

                            nod.ImageIndex         = 2;
                            nod.SelectedImageIndex = 4;

                            outParentNode.Nodes.Add(nod);
                        }
                    }
                }
            }

            #endregion

            if (this.Nodes.Count == 0)
            {
                System.Windows.Forms.TreeNode noPrivNode = new System.Windows.Forms.TreeNode("无权限");
                noPrivNode.Tag = null;
                this.Nodes.Add(noPrivNode);
            }

            this.ExpandAll();
        }