Files
lserp_cs_5.0/插件库/Lskj.DevFx/Security/DataHandler/RoleHandler.cs
T
2026-07-10 15:25:05 +08:00

144 lines
4.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using NOVA.DevFx.Security.Model;
using System.Data;
using NOVA.DevFx.Data.Utils;
using System.Data.SqlClient;
namespace NOVA.DevFx.Security.DataHandler
{
/// <summary>
/// 角色数据操作类
/// </summary>
public static class RoleHandler
{
/// <summary>
/// 将数据转换成实体类
/// </summary>
public static Role DataReaderToEntites(IDataReader dr)
{
Role model = new Role();
if (dr["id"].ToString() != "")
{
model.id = int.Parse(dr["id"].ToString());
}
model.name = dr["name"].ToString();
model.description = dr["description"].ToString();
if (dr["sort_index"].ToString() != "")
{
model.sort_index = int.Parse(dr["sort_index"].ToString());
}
return model;
}
/// <summary>
/// 获取指定用户编码的所有角色列表
/// </summary>
/// <returns></returns>
public static List<Role> GetListByUserID(int userid)
{
return GetList(" [id] in (select role_id from s_user_in_role where user_id="+userid.ToString()+")");
}
/// <summary>
/// 获得数据列表
/// </summary>
public static List<Role> GetList(string strWhere)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select id,name,description,sort_index ");
strSql.Append(" FROM s_role ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
SqlDataReader read = SqlHelper.ExecuteReader(strSql.ToString());
List<Role> m_lst = new List<Role>();
while (read.Read())
{
Role item = DataReaderToEntites(read);
if (item != null)
{
m_lst.Add(item);
}
}
read.Close();
return m_lst;
}
/// <summary>
/// 获取指定编号的用户信息
/// </summary>
/// <param name="uid"></param>
/// <returns></returns>
public static Role GetItem(int rid)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select id,name,description,sort_index ");
strSql.Append(" FROM s_role ");
strSql.Append(" WHERE [id]=@id ");
SqlParameter[] parameters = {
new SqlParameter("@id", SqlDbType.Int,4)};
int n = 0;
parameters[n++].Value = rid;
SqlDataReader read = SqlHelper.ExecuteReader(strSql.ToString(), parameters);
Role item = null;
if (read.Read())
{
item = DataReaderToEntites(read);
}
if (item != null)
{
read.Close();
return item;
}
else
{
return null;
}
}
/// <summary>
/// 获取指定用户名的用户信息
/// </summary>
/// <param name="uid"></param>
/// <returns></returns>
public static Role GetItemByName(int uname)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select id,name,description,sort_index ");
strSql.Append(" FROM s_role ");
strSql.Append(" WHERE [name]=@name ");
SqlParameter[] parameters = {
new SqlParameter("@name", SqlDbType.VarChar,50)};
int n = 0;
parameters[n++].Value = uname;
SqlDataReader read = SqlHelper.ExecuteReader(strSql.ToString(), parameters);
Role item = null;
if (read.Read())
{
item = DataReaderToEntites(read);
}
if (item != null)
{
read.Close();
return item;
}
else
{
return null;
}
}
}
}