예제 #1
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 添加权限项
        /// </summary>
        /// <param name="AuthItem"></param>
        /// <returns></returns>
        public virtual int AddAuthItem(IAuthItem AuthItem)
        {
            IDvTable dvt = entityfactory.CreateDriveTable(AuthItem);
            int      i   = dvt.Insert();

            return(i);
        }
예제 #2
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 查询所有权限项
        /// </summary>
        /// <returns></returns>
        public virtual List <IAuthItem> QueryAuthItem()
        {
            IAuthItem item = this.entityfactory.CreateEntityInstance <IAuthItem>();
            IDvTable  dvt  = this.entityfactory.CreateDriveTable(item);
            DataSet   ds   = dvt.Select();

            return(this.dh.Convert <IAuthItem>(this.entityfactory.CreateEntityInstance <IAuthItem>().GetType(), ds));
        }
예제 #3
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 移除权限项
        /// </summary>
        /// <param name="AuthItemCode"></param>
        /// <returns></returns>
        public virtual int RemoveAuthItem(string AuthItemCode)
        {
            IAuthItem item = entityfactory.CreateEntityInstance <IAuthItem>();
            IDvTable  dvt  = entityfactory.CreateDriveTable(item);

            item.AuthItemCode = AuthItemCode;
            dvt.WhereClause("AuthItemCode", Operator.Deng, LinkOperator.nul);
            int i = dvt.Delete();

            return(i);
        }
예제 #4
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 根据指定的权限项编码查询权限项对象
        /// </summary>
        /// <param name="AuthItemCode"></param>
        /// <returns></returns>
        public virtual IAuthItem QueryAuthItem(string AuthItemCode)
        {
            IAuthItem item = this.entityfactory.CreateEntityInstance <IAuthItem>();

            item.AuthItemCode = AuthItemCode;
            IDvTable dvt = this.entityfactory.CreateDriveTable(item);

            dvt.WhereClause("AuthItemCode", Operator.Deng, LinkOperator.nul);
            DataSet    ds  = dvt.Select();
            DataHelper dte = new DataHelper();

            return(dte.Convert <IAuthItem>(item.GetType(), ds, 0));;
        }
예제 #5
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 根据权限项和角色查询权限控制项
        /// </summary>
        /// <param name="AuthItem"></param>
        /// <param name="Role"></param>
        /// <returns></returns>
        public IAuthControl QueryAuthCtrl(IAuthItem AuthItem, IRole Role)
        {
            IAuthControl actrl = entityfactory.CreateEntityInstance <IAuthControl>();
            IDvTable     dvt   = entityfactory.CreateDriveTable(actrl);

            actrl.FItemCode = AuthItem.AuthItemCode.ToString();
            actrl.RoleCode  = Role.RoleCode;
            dvt.WhereClause("FItemCode", Operator.Deng, LinkOperator.and);
            dvt.WhereClause("RoleCode", Operator.Deng, LinkOperator.nul);
            DataSet ds = dvt.Select();

            actrl = this.dh.Convert <IAuthControl>(actrl.GetType(), ds, 0);
            return(actrl);
        }
예제 #6
0
파일: Manager.cs 프로젝트: rsfc/LemonadeWin
        /// <summary>
        /// 根据角色查询权限项
        /// 角色关联权限控制项 权限控制项关联权限项
        /// </summary>
        /// <param name="Role"></param>
        /// <returns></returns>
        public List <IAuthItem> QueryAuthItem(IRole Role)
        {
            IAuthItem    item  = this.entityfactory.CreateEntityInstance <IAuthItem>();
            IAuthControl actrl = entityfactory.CreateEntityInstance <IAuthControl>();

            actrl.RoleCode = Role.RoleCode;
            IDvTable dvt = entityfactory.CreateDriveTable(item);

            dvt.Join.Entitys.Add(actrl);
            dvt.WhereClause(actrl, "RoleCode", Operator.Deng, LinkOperator.nul);
            DataSet          ds   = dvt.Select();
            List <IAuthItem> list = this.dh.Convert <IAuthItem>(item.GetType(), ds);

            return(list);
        }