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

📄 userpermissions.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
📖 第 1 页 / 共 2 页
字号:
namespace PowerEasy.SqlServerDal.AccessManage
{
    using PowerEasy.Enumerations;
    using PowerEasy.IDal.AccessManage;
    using PowerEasy.Model.AccessManage;
    using PowerEasy.SqlServerDal;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Text;

    public class UserPermissions : IUserPermissions
    {
        public bool AddFieldPermissions(int id, int modelId, string fieldName, OperateCode operateCode, int idType)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            cmdParams.AddInParameter("@ModelID", DbType.Int32, modelId);
            cmdParams.AddInParameter("@FieldName", DbType.String, fieldName);
            cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            string strSql = "INSERT INTO PE_GroupFieldPermissions(GroupID,OperateCode,ModelID,FieldName,IdType)VALUES(@GroupID,@OperateCode,@ModelID,@FieldName,@IdType)";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool AddNodePermissions(int id, OperateCode operateCode, int nodeId, int idType)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@GroupId", DbType.Int32, id);
            cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            cmdParams.AddInParameter("@NodeID", DbType.Int32, nodeId);
            cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            string strSql = "INSERT INTO PE_GroupNodePermissions(GroupID,OperateCode,NodeID,IdType)VALUES(@GroupId,@OperateCode,@NodeID,@IdType)";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool AddSpecialPermissions(int id, OperateCode operateCode, int specialId, int idType)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            cmdParams.AddInParameter("@SpecialID", DbType.Int32, specialId);
            cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            string strSql = "INSERT INTO PE_GroupSpecialPermissions(GroupID,OperateCode,SpecialID,IdType)VALUES(@GroupID,@OperateCode,@SpecialID,@IdType)";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        private static IList<int> CreateRoleList(Parameters parms, string strSqlText)
        {
            IList<int> list = new List<int>();
            using (NullableDataReader reader = DBHelper.ExecuteReaderSql(strSqlText, parms))
            {
                while (reader.Read())
                {
                    list.Add(reader.GetInt32("GroupId"));
                }
            }
            return list;
        }

        public bool DeleteFieldPermissions(int id, int modelId, string fieldName, int idType)
        {
            Parameters cmdParams = new Parameters();
            string strSql = "DELETE FROM PE_GroupFieldPermissions WHERE 1=1";
            if (modelId > 0)
            {
                cmdParams.AddInParameter("@ModelId", DbType.Int32, modelId);
                strSql = strSql + " AND ModelID=@ModelId ";
            }
            if (!string.IsNullOrEmpty(fieldName))
            {
                strSql = strSql + " AND FieldName=@FieldName ";
                cmdParams.AddInParameter("@FieldName", DbType.String, fieldName);
            }
            if (id > 0)
            {
                strSql = strSql + " AND GroupID=@GroupID ";
                cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            }
            if (idType >= 0)
            {
                strSql = strSql + " AND IdType=@IdType ";
                cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            }
            try
            {
                DBHelper.ExecuteNonQuerySql(strSql, cmdParams);
                return true;
            }
            catch
            {
                return false;
            }
        }

        public bool DeleteNodePermissions(int id, int nodeId, OperateCode operateCode, int idType)
        {
            Parameters cmdParams = new Parameters();
            string strSql = "DELETE FROM PE_GroupNodePermissions WHERE 1=1";
            if (id > 0)
            {
                strSql = strSql + " AND GroupID =@GroupID ";
                cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            }
            if (nodeId >= -2)
            {
                strSql = strSql + " AND NodeId=@NodeId ";
                cmdParams.AddInParameter("@NodeId", DbType.Int32, nodeId);
            }
            if (operateCode != OperateCode.None)
            {
                strSql = strSql + " AND OperateCode=@OperateCode ";
                cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            }
            if (idType >= 0)
            {
                strSql = strSql + " AND IdType=@IdType ";
                cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            }
            try
            {
                DBHelper.ExecuteNonQuerySql(strSql, cmdParams);
                return true;
            }
            catch
            {
                return false;
            }
        }

        public bool DeleteNodePermissionsByNodeId(int nodeId, OperateCode operateCode)
        {
            return this.DeleteNodePermissions(0, nodeId, operateCode, -1);
        }

        public bool DeleteSpecialPermissions(int id, int specialId, OperateCode operateCode, int idType)
        {
            Parameters cmdParams = new Parameters();
            string strSql = "DELETE FROM PE_GroupSpecialPermissions WHERE 1=1";
            if (id > 0)
            {
                strSql = strSql + " AND GroupID =@GroupID ";
                cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            }
            if (specialId > 0)
            {
                strSql = strSql + " AND SpecialID=@SpecialID ";
                cmdParams.AddInParameter("@SpecialID", DbType.Int32, specialId);
            }
            if (operateCode != OperateCode.None)
            {
                strSql = strSql + " AND  OperateCode=@OperateCode ";
                cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            }
            if (idType >= 0)
            {
                strSql = strSql + " AND IdType=@IdType ";
                cmdParams.AddInParameter("@IdType", DbType.Int32, idType);
            }
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool DeleteSpecialPermissionsBySpecialId(int specialId)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@SpecialID", DbType.Int32, specialId);
            string strSql = "DELETE FROM PE_GroupSpecialPermissions WHERE SpecialID =@SpecialID";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool DeleteSpecialPermissionsBySpecialId(int specialId, OperateCode operateCode)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@SpecialID", DbType.Int32, specialId);
            cmdParams.AddInParameter("@OperateCode", DbType.Int32, operateCode);
            string strSql = "DELETE FROM PE_GroupSpecialPermissions WHERE SpecialID =@SpecialID AND OperateCode=@OperateCode";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public IList<RoleNodePermissionsInfo> GetAllNodePermissionsById(int id, int nodeId, int idType)
        {
            IList<RoleNodePermissionsInfo> list = new List<RoleNodePermissionsInfo>();
            Parameters cmdParams = new Parameters();
            string strCommand = "SELECT * FROM PE_GroupNodePermissions WHERE 1=1 ";
            if ((id > 0) || (id == -2))
            {
                strCommand = strCommand + " AND GroupID =@GroupID ";
                cmdParams.AddInParameter("@GroupID", DbType.Int32, id);
            }
            if (nodeId >= -1)
            {
                strCommand = strCommand + " AND (NodeID =@NodeID OR NodeID = -1) ";
                cmdParams.AddInParameter("@NodeID", DbType.Int32, nodeId);
            }
            if (idType >= 0)
            {
                strCommand = strCommand + " AND IdType=@IdType ";
                cmdParams.AddInParameter("@IdType", DbType.Int32, idType);

⌨️ 快捷键说明

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