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

📄 userfriend.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 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 + -