/// <summary>
        /// 权限删除
        /// </summary>
        /// <param name="broker"></param>
        /// <param name="entityName"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int FilteredDelete(this IPersistBroker broker, string entityName, string id)
        {
            var sysEntity = EntityCache.GetEntity(entityName);

            AssertUtil.CheckBoolean <InvalidCredentialException>(!AuthAccess.CheckDeleteAccess(sysEntity.Id), $"用户没有实体[{sysEntity.name}]的删除权限", "451FC4BA-46B2-4838-B8D0-69617DFCAF39");
            return(broker.Delete(entityName, id));
        }
        /// <summary>
        /// 权限差选
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="broker"></param>
        /// <param name="sql"></param>
        /// <param name="paramList"></param>
        /// <returns></returns>
        public static IList <T> FilteredRetrieveMultiple <T>(this IPersistBroker broker, string sql, Dictionary <string, object> paramList = null) where T : BaseEntity, new()
        {
            var sysEntity = EntityCache.GetEntity(new T().EntityName);

            AssertUtil.CheckBoolean <InvalidCredentialException>(!AuthAccess.CheckReadAccess(sysEntity.Id), $"用户没有实体[{sysEntity.name}]的查询权限", "451FC4BA-46B2-4838-B8D0-69617DFCAF39");
            return(broker.RetrieveMultiple <T>(sql, paramList));
        }
        /// <summary>
        /// 权限查询
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="broker"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public static T FilteredRetrieve <T>(this IPersistBroker broker, string id) where T : BaseEntity, new()
        {
            var sysEntity = EntityCache.GetEntity(new T().EntityName);

            AssertUtil.CheckBoolean <InvalidCredentialException>(!AuthAccess.CheckReadAccess(sysEntity.Id), $"用户没有实体[{sysEntity.name}]的查询权限", "451FC4BA-46B2-4838-B8D0-69617DFCAF39");
            return(broker.Retrieve <T>(id));
        }
        /// <summary>
        /// 权限更新
        /// </summary>
        /// <param name="broker"></param>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static int FiltededUpdate(this IPersistBroker broker, BaseEntity entity)
        {
            var sysEntity = EntityCache.GetEntity(entity.EntityName);

            AssertUtil.CheckBoolean <InvalidCredentialException>(!AuthAccess.CheckWriteAccess(sysEntity.Id), $"用户没有实体[{sysEntity.name}]的更新权限", "451FC4BA-46B2-4838-B8D0-69617DFCAF39");
            return(broker.Update(entity));
        }
Exemplo n.º 5
0
        public static string toggleWebPermissions(Guid userID, string domainID, string areaID)
        {
            CurtDevDataContext db = new CurtDevDataContext();
            if (areaID == "") {
                // domain level permission
                // attempt to find  authAccess record, if one is found, delete it, if one is not found, create one.
                AuthAccess authRecord = db.AuthAccesses.Where(x => x.userID == userID && x.AreaID.Equals(Guid.Empty)).FirstOrDefault<AuthAccess>();
                if (authRecord != null) {
                    // record exists so delete it.
                    db.AuthAccesses.DeleteOnSubmit(authRecord);
                    db.SubmitChanges();
                } else {
                    // record doesnt exist so create one.
                    AuthAccess newAuthAccess = new AuthAccess();
                    newAuthAccess.id = Guid.NewGuid();
                    newAuthAccess.userID = userID;
                    newAuthAccess.AreaID = Guid.Empty;
                    db.AuthAccesses.InsertOnSubmit(newAuthAccess);
                    db.SubmitChanges();
                }

            } else {
                // area level permission

                // attempt to find  authAccess record, if one is found, delete it, if one is not found, create one.
                AuthAccess authRecord = db.AuthAccesses.Where(x => x.userID == userID && x.AreaID.Equals(new Guid(areaID))).FirstOrDefault<AuthAccess>();
                if (authRecord != null) {
                    // record exists so delete it.
                    db.AuthAccesses.DeleteOnSubmit(authRecord);
                    db.SubmitChanges();
                } else {
                    // record doesnt exist so create one.
                    AuthAccess newAuthAccess = new AuthAccess();
                    newAuthAccess.id = Guid.NewGuid();
                    newAuthAccess.userID = userID;
                    newAuthAccess.AreaID = new Guid(areaID);
                    db.AuthAccesses.InsertOnSubmit(newAuthAccess);
                    db.SubmitChanges();
                }
            }

            return "";
        }
Exemplo n.º 6
0
 public AuthProcessor()
 {
     _user = new AuthAccess();
 }