using System; using System.Collections.Generic; using System.Text; using NOVA.DevFx.Security.Model; using System.Data.SqlClient; using NOVA.DevFx.Data.Utils; using System.Data; namespace NOVA.DevFx.Security.DataHandler { /// /// 角色权限关联数据访问类 /// public static class RolePermissionHandler { /// /// 将数据转换成实体类 /// public static Role_In_Permission DataReaderToEntites(IDataReader dr) { Role_In_Permission model = new Role_In_Permission(); if (dr["id"].ToString() != "") { model.id = int.Parse(dr["id"].ToString()); } if (dr["module_id"].ToString() != "") { model.module_id = int.Parse(dr["module_id"].ToString()); } if (dr["role_id"].ToString() != "") { model.role_id = int.Parse(dr["role_id"].ToString()); } if (dr["permission_id"].ToString() != "") { model.permission_id = int.Parse(dr["permission_id"].ToString()); } if (dr["enabled"].ToString() != "") { if ((dr["enabled"].ToString() == "1") || (dr["enabled"].ToString().ToLower() == "true")) { model.enabled = true; } else { model.enabled = false; } } return model; } /// /// 获得数据列表 /// public static List GetList(string strWhere) { StringBuilder strSql = new StringBuilder(); strSql.Append("select id,module_id,role_id,permission_id,enabled "); strSql.Append(" FROM s_role_in_permission "); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } SqlDataReader read = SqlHelper.ExecuteReader(strSql.ToString()); List m_lst = new List(); while (read.Read()) { Role_In_Permission item = DataReaderToEntites(read); if (item != null) { m_lst.Add(item); } } read.Close(); return m_lst; } /// /// 根据角色编号获取所有权限列表 /// /// public static List GetPermissionListByRoleID(int roleid) { return GetList(" (role_id=" + roleid.ToString() + ")"); } } }