⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userrole.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
📖 第 1 页 / 共 3 页
字号:
            return list;
        }

        public IList<RoleFieldPermissionsInfo> GetFieldPermissionsById(int roleId, int modelId, string fieldName, OperateCode operateCode)
        {
            IList<RoleFieldPermissionsInfo> list = new List<RoleFieldPermissionsInfo>();
            Parameters cmdParams = new Parameters();
            string strCommand = "SELECT * FROM PE_Role_Field_Permissions WHERE 1=1";
            if (roleId >= 0)
            {
                strCommand = strCommand + " AND RoleId=@RoleId ";
                cmdParams.AddInParameter("@RoleId", DbType.Int32, roleId);
            }
            if (modelId > 0)
            {
                strCommand = strCommand + " AND ModelId=@ModelId ";
                cmdParams.AddInParameter("@ModelId", DbType.Int32, modelId);
            }
            if (!string.IsNullOrEmpty(fieldName))
            {
                strCommand = strCommand + " AND FieldName=@FieldName ";
                cmdParams.AddInParameter("@FieldName", DbType.String, fieldName);
            }
            if (operateCode != OperateCode.None)
            {
                strCommand = strCommand + " AND OperateCode=@OperateCode ";
                cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            }
            using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
            {
                while (reader.Read())
                {
                    RoleFieldPermissionsInfo item = new RoleFieldPermissionsInfo();
                    item.RoleId = reader.GetInt32("RoleID");
                    item.OperateCode = (OperateCode) reader.GetInt32("OperateCode");
                    item.ModelId = reader.GetInt32("ModelID");
                    item.FieldName = reader.GetString("FieldName");
                    list.Add(item);
                }
            }
            return list;
        }

        public IList<RoleModulePermissionsInfo> GetModelPermissionsById(int roleId)
        {
            IList<RoleModulePermissionsInfo> list = new List<RoleModulePermissionsInfo>();
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@RoleID", DbType.Int32, roleId);
            string strCommand = "SELECT * FROM PE_Roles_Permissions WHERE RoleID =@RoleID";
            using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
            {
                while (reader.Read())
                {
                    RoleModulePermissionsInfo item = new RoleModulePermissionsInfo();
                    item.RoleId = reader.GetInt32("RoleID");
                    item.OperateCode = (OperateCode) reader.GetInt32("OperateCode");
                    list.Add(item);
                }
            }
            return list;
        }

        private static int GetNewId()
        {
            return (DBHelper.GetMaxId("PE_Roles", "RoleId") + 1);
        }

        public IList<RoleNodePermissionsInfo> GetNodePermissionsById(int roleId, int nodeId)
        {
            IList<RoleNodePermissionsInfo> list = new List<RoleNodePermissionsInfo>();
            Parameters cmdParams = new Parameters();
            string strCommand = "SELECT * FROM PE_Role_Node_Permissions WHERE 1=1";
            if (roleId >= 0)
            {
                strCommand = strCommand + " AND RoleID =@RoleID ";
                cmdParams.AddInParameter("@RoleID", DbType.Int32, roleId);
            }
            if (nodeId >= 0)
            {
                strCommand = strCommand + " AND NodeID=@NodeId ";
                cmdParams.AddInParameter("@NodeId", DbType.Int32, nodeId);
            }
            using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
            {
                while (reader.Read())
                {
                    RoleNodePermissionsInfo item = new RoleNodePermissionsInfo();
                    item.GroupId = reader.GetInt32("RoleID");
                    item.OperateCode = (OperateCode) reader.GetInt32("OperateCode");
                    item.NodeId = reader.GetInt32("NodeID");
                    list.Add(item);
                }
            }
            return list;
        }

        public IList<RoleModulePermissionsInfo> GetOtherModelPermissionsById(int roleId)
        {
            IList<RoleModulePermissionsInfo> list = new List<RoleModulePermissionsInfo>();
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@RoleID", DbType.Int32, roleId);
            string strCommand = " SELECT RoleID, OperateCode FROM PE_Roles_Permissions WHERE RoleID =@RoleID And (OperateCode LIKE '9%')";
            using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
            {
                while (reader.Read())
                {
                    RoleModulePermissionsInfo item = new RoleModulePermissionsInfo();
                    item.RoleId = reader.GetInt32("RoleID");
                    item.OperateCode = (OperateCode) reader.GetInt32("OperateCode");
                    list.Add(item);
                }
            }
            return list;
        }

        private static Parameters GetParameters(RoleInfo roleInfo)
        {
            Parameters parameters = new Parameters();
            parameters.AddInParameter("@RoleId", DbType.Int32, roleInfo.RoleId);
            parameters.AddInParameter("@RoleName", DbType.String, roleInfo.RoleName);
            parameters.AddInParameter("@Description", DbType.String, roleInfo.Description);
            return parameters;
        }

        public string GetRoleAllNodeId(string roleId)
        {
            string strCommand = "select Distinct NodeID from PE_Role_Node_Permissions where RoleID in(" + roleId + ")";
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@RoleId", DbType.String, roleId);
            StringBuilder builder = new StringBuilder();
            using (NullableDataReader reader = DBHelper.ExecuteReader(CommandType.Text, strCommand, cmdParams))
            {
                while (reader.Read())
                {
                    if (builder.Length > 0)
                    {
                        builder.Append("," + reader.GetInt32("NodeID").ToString());
                    }
                    else
                    {
                        builder.Append(reader.GetInt32("NodeID").ToString());
                    }
                }
            }
            return builder.ToString();
        }

        public RoleInfo GetRoleInfoById(int roleId)
        {
            string strSql = "SELECT * FROM PE_Roles WHERE RoleId=@RoleId";
            Parameters cmdParams = new Parameters("@RoleId", DbType.Int32, roleId);
            using (NullableDataReader reader = DBHelper.ExecuteReaderSql(strSql, cmdParams))
            {
                if (reader.Read())
                {
                    return GetRoleInfoFromrdr(reader);
                }
                return new RoleInfo(true);
            }
        }

        private static RoleInfo GetRoleInfoFromrdr(NullableDataReader rdr)
        {
            RoleInfo info = new RoleInfo();
            info.RoleId = rdr.GetInt32("RoleId");
            info.RoleName = rdr.GetString("RoleName");
            info.Description = rdr.GetString("Description");
            return info;
        }

        public IList<RoleInfo> GetRoleList(int startRowIndexId, int maxNumberRows)
        {
            Database database = DatabaseFactory.CreateDatabase();
            DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");
            database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32, startRowIndexId);
            database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32, maxNumberRows);
            database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String, "RoleId");
            database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String, "*");
            database.AddInParameter(storedProcCommand, "@Sorts", DbType.String, "DESC");
            database.AddInParameter(storedProcCommand, "@Filter", DbType.String, "");
            database.AddInParameter(storedProcCommand, "@TableName", DbType.String, "PE_Roles");
            database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, maxNumberRows);
            IList<RoleInfo> list = new List<RoleInfo>();
            using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
            {
                while (reader.Read())
                {
                    list.Add(GetRoleInfoFromrdr(reader));
                }
            }
            this.m_TotalOfRoles = (int) database.GetParameterValue(storedProcCommand, "@Total");
            return list;
        }

        public IList<RoleInfo> GetRoleListByFlowId(int flowId)
        {
            string strSql = "SELECT * FROM PE_Roles AS U WHERE (NOT EXISTS(SELECT NULL FROM PE_Process_Roles AS P WHERE FlowId=@FlowId AND U.RoleId=P.RoleId))";
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
            IList<RoleInfo> list = new List<RoleInfo>();
            using (NullableDataReader reader = DBHelper.ExecuteReaderSql(strSql, cmdParams))
            {
                while (reader.Read())
                {
                    list.Add(GetRoleInfoFromrdr(reader));
                }
            }
            return list;
        }

        public IList<RoleInfo> GetRoleListByFlowIdAndProcessId(int flowId, int processId)
        {
            string strSql = "SELECT * FROM PE_Roles AS U WHERE (NOT EXISTS(SELECT NULL AS Exp FROM PE_Process_Roles AS P WHERE P.FlowId=@FlowId AND P.ProcessId<>@ProcessId AND U.RoleId=P.RoleId))";
            IList<RoleInfo> list = new List<RoleInfo>();
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@FlowId", DbType.Int32, flowId);
            cmdParams.AddInParameter("@ProcessId", DbType.Int32, processId);
            using (NullableDataReader reader = DBHelper.ExecuteReaderSql(strSql, cmdParams))
            {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -