📄 userfriend.cs
字号:
namespace PowerEasy.SqlServerDal.UserManage
{
using Microsoft.Practices.EnterpriseLibrary.Data;
using PowerEasy.IDal.UserManage;
using PowerEasy.Model.UserManage;
using PowerEasy.SqlServerDal;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
public class UserFriend : IUserFriend
{
private int m_TotalOfFriend;
public bool Add(UserFriendInfo userFriendInfo)
{
Parameters cmdParams = GetParameters(userFriendInfo);
cmdParams.AddInParameter("@AddTime", DbType.DateTime, DateTime.Now);
return DBHelper.ExecuteSql("insert into PE_Friend (FriendName,UserName,AddTime,GroupID) values (@FriendName,@UserName,@AddTime,@GroupID)", cmdParams);
}
public bool CheckBlackFriend(string friendName, string userName)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FriendName", DbType.String, friendName);
cmdParams.AddInParameter("@UserName", DbType.String, userName);
return DBHelper.ExistsSql("select * from PE_Friend where ((FriendName=@FriendName and UserName=@UserName) or (UserName=@FriendName and FriendName=@UserName)) and GroupID=0", cmdParams);
}
public bool Delete(string friendId)
{
return DBHelper.ExecuteSql("delete from PE_Friend where ID in(" + friendId + ")");
}
public bool Delete(string userName, int friendGroupId)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@UserName", DbType.String, userName);
cmdParams.AddInParameter("@GroupID", DbType.Int32, friendGroupId);
return DBHelper.ExecuteSql("delete from PE_Friend where UserName = @UserName and GroupID = @GroupID", cmdParams);
}
public bool Exists(string friendName, string userName)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@FriendName", DbType.String, friendName);
cmdParams.AddInParameter("@UserName", DbType.String, userName);
return DBHelper.ExistsSql("select * from PE_Friend where FriendName = @FriendName and UserName = @UserName", cmdParams);
}
public int GetFriendCount(int friendGroupId, string userName)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@GroupID", DbType.Int32, friendGroupId);
cmdParams.AddInParameter("@UserName", DbType.String, userName);
return DBHelper.ObjectToInt32(DBHelper.ExecuteScalarSql("select count(ID) from PE_Friend where UserName = @UserName and GroupID=@GroupID", cmdParams));
}
public IList<string> GetFriendNameList(string userName)
{
Parameters cmdParams = new Parameters();
cmdParams.AddInParameter("@UserName", DbType.String, userName);
IList<string> list = new List<string>();
using (NullableDataReader reader = DBHelper.ExecuteReaderSql("select top 20 FriendName from PE_Friend where UserName = @UserName and GroupID<>0 order by AddTime desc", cmdParams))
{
while (reader.Read())
{
list.Add(reader.GetString("FriendName"));
}
}
return list;
}
public DataTable GetList(int startRowIndexId, int maxNumberRows, string userName, int groupId)
{
Database database = DatabaseFactory.CreateDatabase();
DbCommand storedProcCommand = database.GetStoredProcCommand("PR_Common_GetList");
database.AddInParameter(storedProcCommand, "@StartRows", DbType.Int32);
database.AddInParameter(storedProcCommand, "@PageSize", DbType.Int32);
database.AddInParameter(storedProcCommand, "@SortColumn", DbType.String);
database.AddInParameter(storedProcCommand, "@StrColumn", DbType.String);
database.AddInParameter(storedProcCommand, "@Sorts", DbType.String);
database.AddInParameter(storedProcCommand, "@Filter", DbType.String);
database.AddInParameter(storedProcCommand, "@TableName", DbType.String);
database.SetParameterValue(storedProcCommand, "@StartRows", startRowIndexId);
database.SetParameterValue(storedProcCommand, "@PageSize", maxNumberRows);
database.SetParameterValue(storedProcCommand, "@SortColumn", "F.ID");
database.SetParameterValue(storedProcCommand, "@StrColumn", "F.ID,F.FriendName,F.GroupID,U.Email,C.QQ,C.Homepage");
database.SetParameterValue(storedProcCommand, "@Sorts", "DESC");
database.SetParameterValue(storedProcCommand, "@TableName", "PE_Friend F left join ( PE_Users U left join PE_Contacter C on U.UserName = C.UserName ) on F.FriendName=U.UserName");
if (groupId >= 0)
{
database.SetParameterValue(storedProcCommand, "@Filter", string.Concat(new object[] { "F.UserName = '", userName, "' And F.GroupID=", groupId }));
}
else
{
database.SetParameterValue(storedProcCommand, "@Filter", "F.UserName = '" + userName + "'");
}
database.AddOutParameter(storedProcCommand, "@Total", DbType.Int32, 10);
DataTable table = new DataTable();
table.Columns.Add("ID");
table.Columns.Add("FriendName");
table.Columns.Add("GroupID");
table.Columns.Add("Email");
table.Columns.Add("QQ");
table.Columns.Add("Homepage");
using (NullableDataReader reader = new NullableDataReader(database.ExecuteReader(storedProcCommand)))
{
while (reader.Read())
{
DataRow row = table.NewRow();
row["ID"] = reader.GetInt32("ID");
row["FriendName"] = reader.GetString("FriendName");
row["GroupID"] = reader.GetInt32("GroupID");
row["Email"] = reader.GetString("Email");
row["QQ"] = reader.GetString("QQ");
row["Homepage"] = reader.GetString("Homepage");
table.Rows.Add(row);
}
}
this.m_TotalOfFriend = (int) database.GetParameterValue(storedProcCommand, "@Total");
return table;
}
private static Parameters GetParameters(UserFriendInfo userFriendInfo)
{
Parameters parameters = new Parameters();
parameters.AddInParameter("@FriendName", DbType.String, userFriendInfo.FriendName);
parameters.AddInParameter("@UserName", DbType.String, userFriendInfo.UserName);
parameters.AddInParameter("@GroupID", DbType.Int32, userFriendInfo.GroupId);
return parameters;
}
public int GetTotalOfFriend()
{
return this.m_TotalOfFriend;
}
public bool MoveByGroupId(string friendId, int groupId)
{
return DBHelper.ExecuteSql("update PE_Friend set GroupID = @GroupID Where ID in (" + friendId + ")", new Parameters("@GroupID", DbType.Int32, groupId));
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -