📄 useraccess.cs
字号:
using System;
using System.Collections;using Stella.Model;
using Stella.Utility;using System.Data;using System.Data.SqlClient;
namespace Stella.SQLServerDAL
{
/// <summary>
/// 用户操作
/// </summary>
public class UserAccess
{
private string connString=ConfigHelper.ConnString;
#region Create
/// <summary>
/// 创建新用户
/// </summary>
/// <param name="member">待添加的用户</param> public Member Create(Member member) { SqlParameter[] parms=this.getCreateMemberParms(); this.setCreateMemberParms(parms,member); using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"members_Create",parms)) { if(sdr.Read()) { member.Uid=sdr.GetInt32(0); member.Name=sdr.GetString(1); member.Pwd=(byte[])sdr[2]; member.Email=sdr.GetString(3); member.Role=sdr.GetString(4); member.ArtCount=sdr.GetInt32(5); member.Head=sdr.GetString(6); member.Hp=sdr.GetString(7); member.Qq=sdr.GetString(8); member.Signature=sdr.GetString(9); member.Lv=sdr.GetInt16(10); member.RegDate=sdr.GetDateTime(11); member.State=sdr.GetBoolean(12); member.Manage=sdr.GetInt32(13); member.Mzone=sdr.GetString(14); return member; } } return null; }
private SqlParameter[] getCreateMemberParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("CreateMember");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@mname",SqlDbType.VarChar,20),
new SqlParameter("@pwd",SqlDbType.Binary,50),
new SqlParameter("@email",SqlDbType.VarChar,50)
};
SQLHelper.CacheParameters("CreateMember",parms);
}
return parms;
}
private void setCreateMemberParms(SqlParameter[] parms,Member member)
{
parms[0].Value=member.Name;
parms[1].Value=member.Pwd;
parms[2].Value=member.Email;
}
#endregion
#region Update
/// <summary>
/// 更新用户的资料
/// </summary>
/// <param name="member">要更新的用户</param> public void Update(Member member) { SqlParameter[] parms=this.getUpdateParms(); this.setUpdateParms(parms,member); SQLHelper.ExecuteNonQuery(connString,CommandType.StoredProcedure,"members_Update",parms); }
private SqlParameter[] getUpdateParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("UpdateMember");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@mid",SqlDbType.Int,0),
new SqlParameter("@email",SqlDbType.VarChar,50),
new SqlParameter("@hp",SqlDbType.VarChar,50),
new SqlParameter("@qq",SqlDbType.VarChar,10),
new SqlParameter("@signature",SqlDbType.VarChar,100)
};
SQLHelper.CacheParameters("UpdateMember",parms);
}
return parms;
}
private void setUpdateParms(SqlParameter[] parms,Member member)
{
parms[0].Value=member.Uid;
parms[1].Value=member.Email;
parms[2].Value=member.Hp;
parms[3].Value=member.Qq;
parms[4].Value=member.Signature;
}
#endregion
#region Remove
/// <summary>
/// 删除用户
/// </summary>
/// <param name="id">该用户的id</param>
public void Remove(int id) { SqlParameter[] parms=new SqlParameter[]{ new SqlParameter("@uid",SqlDbType.Int,0) }; parms[0].Value=id; SQLHelper.ExecuteNonQuery(connString,CommandType.StoredProcedure,"members_DeleteBymid",parms); }
#endregion
#region GetMemberCount
/// <summary>
/// 获取用户总数
/// </summary>
public int GetMemberCount()
{
return (int)SQLHelper.ExecuteScalar(connString,CommandType.StoredProcedure,"members_SelectCount",null);
}
#endregion
#region GetMemberInfo
/// <summary>
/// 获取用户信息
/// </summary>
/// <param name="userName">用户名</param> public Member GetMemberInfo(string userName) { SqlParameter[] parms=new SqlParameter[]{ new SqlParameter("@uname",SqlDbType.VarChar,20) }; parms[0].Value=userName; using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"members_SelectInfoByname",parms)) { if(sdr.Read()) { Member member=new Member(); member.Uid=sdr.GetInt32(0); member.Name=sdr.GetString(1); member.Pwd=(byte[])sdr[2]; member.Email=sdr.GetString(3); member.Role=sdr.GetString(4); member.ArtCount=sdr.GetInt32(5); member.Head=sdr.GetString(6); member.Hp=sdr.GetString(7); member.Qq=sdr.GetString(8); member.Signature=sdr.GetString(9); member.Lv=sdr.GetInt16(10); member.RegDate=sdr.GetDateTime(11); member.State=sdr.GetBoolean(12); member.Manage=sdr.GetInt32(13); member.Mzone=sdr.GetString(14); return member; } } return null; }
#endregion
#region FillUserList
/// <summary>
/// 填充用户列表
/// </summary>
/// <param name="list">要填充的列表</param>
/// <param name="pageSize">每页大小</param>
/// <param name="pageNumber">当前页数</param>
public void FillMemberList(UserList list,int pageSize,int pageNumber)
{
SqlParameter[] parms=this.getFilUserListParms(); this.setFilUserListParms(parms,pageSize,pageNumber);
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"members_SelectInfo",parms))
{
Member member;
while(sdr.Read())
{
member=new Member();
member.Uid=sdr.GetInt32(0); member.Name=sdr.GetString(1); member.Pwd=(byte[])sdr[2]; member.Head=sdr.GetString(3); member.Role=sdr.GetString(4); member.ArtCount=sdr.GetInt32(5); member.Email=sdr.GetString(6); member.Hp=sdr.GetString(7); member.Qq=sdr.GetString(8); member.Signature=sdr.GetString(9); member.Lv=sdr.GetInt16(10); member.RegDate=sdr.GetDateTime(11); member.State=sdr.GetBoolean(12);
member.Manage=sdr.GetInt32(13);
member.Mzone=sdr.GetString(14);
list.AddMember(member);
}
}
}
private SqlParameter[] getFilUserListParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("FilUserList");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@pageSize",SqlDbType.Int,0),
new SqlParameter("@pageNumber",SqlDbType.Int,0),
};
SQLHelper.CacheParameters("FilUserList",parms);
}
return parms;
}
private void setFilUserListParms(SqlParameter[] parms,int pageSize,int pageNumber)
{
parms[0].Value=pageSize;
parms[1].Value=pageNumber;
}
#endregion
#region FillManagerList
/// <summary>
/// 填充斑竹列表
/// </summary>
/// <param name="list">要填充的列表</param>
public void FillManagerList(UserList list)
{
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"members_SelectManager",null))
{
Member member;
while(sdr.Read())
{
member=new Member();
member.Uid=sdr.GetInt32(0); member.Name=sdr.GetString(1); member.Pwd=(byte[])sdr[2]; member.Head=sdr.GetString(3); member.Role=sdr.GetString(4); member.ArtCount=sdr.GetInt32(5); member.Email=sdr.GetString(6); member.Hp=sdr.GetString(7); member.Qq=sdr.GetString(8); member.Signature=sdr.GetString(9); member.Lv=sdr.GetInt16(10); member.RegDate=sdr.GetDateTime(11); member.State=sdr.GetBoolean(12);
member.Manage=sdr.GetInt32(13);
member.Mzone=sdr.GetString(14);
list.AddManager(member);
}
}
}
#endregion
#region FillAdminerList
/// <summary>
/// 填充斑竹列表
/// </summary>
/// <param name="list">要填充的列表</param>
public void FillAdminerList(UserList list)
{
using(SqlDataReader sdr=SQLHelper.ExecuteReader(connString,CommandType.StoredProcedure,"members_SelectAdminers",null))
{
Member member;
while(sdr.Read())
{
member=new Member();
member.Uid=sdr.GetInt32(0); member.Name=sdr.GetString(1); member.Pwd=(byte[])sdr[2]; member.Head=sdr.GetString(3); member.Role=sdr.GetString(4); member.ArtCount=sdr.GetInt32(5); member.Email=sdr.GetString(6); member.Hp=sdr.GetString(7); member.Qq=sdr.GetString(8); member.Signature=sdr.GetString(9); member.Lv=sdr.GetInt16(10); member.RegDate=sdr.GetDateTime(11); member.State=sdr.GetBoolean(12);
member.Manage=sdr.GetInt32(13);
member.Mzone=sdr.GetString(14);
list.AddManager(member);
}
}
}
#endregion
#region UpdatePassWord
/// <summary>
/// 更新密码
/// </summary>
/// <param name="member">填充了新密码的用户</param>
/// <returns>用户的注册邮箱</returns>
public string UpdatePassWord(Member member)
{
SqlParameter[] parms=this.getUpdatePassWordParms(); this.setUpdatePassWordParms(parms,member);
return (string)SQLHelper.ExecuteScalar(connString,CommandType.StoredProcedure,"members_updatePwdByMid",parms);
}
private SqlParameter[] getUpdatePassWordParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("UpdatePassWord");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@mname",SqlDbType.VarChar,20),
new SqlParameter("@pwd",SqlDbType.Binary,50),
};
SQLHelper.CacheParameters("UpdatePassWord",parms);
}
return parms;
}
private void setUpdatePassWordParms(SqlParameter[] parms,Member member)
{
parms[0].Value=member.Name;
parms[1].Value=member.Pwd;
}
#endregion
#region UpdateRole
/// <summary>
/// 更新角色
/// </summary>
/// <param name="user">填充了新角色的用户</param>
public void UpdateRole(Member user)
{
SqlParameter[] parms=this.getUpdateRoleParms(); this.setUUpdateRoleParms(parms,user);
SQLHelper.ExecuteNonQuery(connString,CommandType.StoredProcedure,"members_updateRoleByMname",parms);
}
private SqlParameter[] getUpdateRoleParms()
{
SqlParameter[] parms=SQLHelper.GetCachedParameters("UpdateRole");
if(parms==null)
{
parms=new SqlParameter[]{
new SqlParameter("@role",SqlDbType.VarChar,20),
new SqlParameter("@mname",SqlDbType.VarChar,20),
new SqlParameter("@manage",SqlDbType.Int,0),
new SqlParameter("@mzone",SqlDbType.VarChar,20)
};
SQLHelper.CacheParameters("UpdateRole",parms);
}
return parms;
}
private void setUUpdateRoleParms(SqlParameter[] parms,Member user)
{
parms[0].Value=user.Role;
parms[1].Value=user.Name;
parms[2].Value=user.Manage;
parms[3].Value=user.Mzone;
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -