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

📄 users.cs

📁 动易SiteFactory&#8482 网上商店系统1.0源代码
💻 CS
📖 第 1 页 / 共 3 页
字号:
namespace PowerEasy.SqlServerDal.UserManage
{
    using Microsoft.Practices.EnterpriseLibrary.Data;
    using PowerEasy.Common;
    using PowerEasy.Enumerations;
    using PowerEasy.IDal.UserManage;
    using PowerEasy.Model.UserManage;
    using PowerEasy.SqlServerDal;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Common;
    using System.Data.OleDb;
    using System.Text;

    public class Users : IUsers
    {
        private int m_NumUsers;
        private static Serialize<UserPurviewInfo> ser = new Serialize<UserPurviewInfo>();

        public bool Add(UserInfo usersInfo)
        {
            usersInfo.UserId = GetNewId();
            Parameters userParameters = GetUserParameters(usersInfo);
            userParameters.AddInParameter("@UserFriendGroup", DbType.String, "黑名单$我的好友");
            return DBHelper.ExecuteProc("PR_UserManage_Users_Add", userParameters);
        }

        public bool AddPoint(int infoPoint, string userName)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@UserPoint", DbType.Int32, infoPoint);
            cmdParams.AddInParameter("@UserName", DbType.String, userName);
            string strSql = "Update PE_Users set UserPoint=UserPoint+@UserPoint where UserName=@UserName";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool AddToAdminCompany(string userName)
        {
            return DBHelper.ExecuteSql("update PE_Users set UserType=2 where UserType>2 and UserName=@UserName", new Parameters("@UserName", DbType.String, userName));
        }

        public bool AgreeJoinCompany(string userName, int companyClientId)
        {
            string str;
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@UserName", DbType.String, userName);
            if (companyClientId > 0)
            {
                str = "update PE_Users set UserType=3,ClientID=@CompanyClientID where UserType=4 and UserName=@UserName";
                cmdParams.AddInParameter("@CompanyClientID", DbType.Int32, companyClientId);
            }
            else
            {
                str = "update PE_Users set UserType=3 where UserType=4 and UserName=@UserName";
            }
            return DBHelper.ExecuteSql(str, cmdParams);
        }

        public static bool AuditingUser(int userId)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@UserID", DbType.Int32, userId);
            object obj2 = DBHelper.ExecuteScalarSql("SELECT Status FROM PE_Users WHERE UserID = @UserID", cmdParams);
            if (obj2 == null)
            {
                return false;
            }
            UserStatus userStatus = (UserStatus) ((int) obj2);
            if ((userStatus & UserStatus.WaitValidateByAdmin) == UserStatus.WaitValidateByAdmin)
            {
                userStatus ^= UserStatus.WaitValidateByAdmin;
            }
            return UpdateUserStatus(userId, userStatus);
        }

        public bool BatchAuditing(string id)
        {
            foreach (string str in id.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries))
            {
                AuditingUser(DataConverter.CLng(str));
            }
            return true;
        }

        public bool BatchLock(string userId)
        {
            foreach (string str in userId.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries))
            {
                LockUser(DataConverter.CLng(str));
            }
            return true;
        }

        public bool BatchNormal(string id)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@Status", DbType.Int32, UserStatus.None);
            return DBHelper.ExecuteSql("Update PE_Users set Status=@Status Where UserID  in (" + id.ToString() + ")", cmdParams);
        }

        public bool BatchUnlock(string userId)
        {
            foreach (string str in userId.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries))
            {
                UnlockUser(DataConverter.CLng(str));
            }
            return true;
        }

        public bool Delete(int userId)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@UserID", DbType.Int32, userId);
            string strSql = "delete from PE_Users where UserID = @UserID";
            return DBHelper.ExecuteSql(strSql, cmdParams);
        }

        public bool DeleteCompany(int companyId)
        {
            DBHelper.ExecuteSql("update PE_Users set UserType=0,CompanyID=0,ClientID=0 where CompanyID=@CompanyID", new Parameters("@CompanyID", DbType.Int32, companyId));
            return DBHelper.ExecuteSql("delete from PE_Company where CompanyID=@CompanyID", new Parameters("@CompanyID", DbType.Int32, companyId));
        }

        public bool Exists(string userName)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@UserName", DbType.String, userName);
            return DBHelper.ExistsProc("PR_UserManage_User_Exists", cmdParams);
        }

        public bool ExistsUserByClientId(int clientId)
        {
            Parameters cmdParams = new Parameters();
            cmdParams.AddInParameter("@ClientID", DbType.Int32, clientId);
            return DBHelper.ExistsSql("select UserID from PE_Users where ClientID=@ClientID", cmdParams);
        }

        public int ExportDataToAccess(string databaseName, int groupId)
        {
            string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + databaseName;
            int num = 0;
            IList<string> userMailByGroupId = this.GetUserMailByGroupId(groupId);
            if (userMailByGroupId.Count > 0)
            {
                OleDbConnection connection = new OleDbConnection(connectionString);
                OleDbCommand command = new OleDbCommand("insert into [user] (useremail) values (@Email)", connection);
                OleDbParameter parameter = new OleDbParameter();
                parameter.ParameterName = "@Email";
                command.Parameters.Add(parameter);
                try
                {
                    connection.Open();
                    foreach (string str2 in userMailByGroupId)
                    {
                        command.Parameters["@Email"].Value = str2;
                        if (command.ExecuteNonQuery() > 0)
                        {
                            num++;
                        }
                    }
                    return num;
                }
                catch
                {
                    num = 0;
                    throw;
                }
                finally
                {
                    command.Dispose();
                    connection.Close();
                }
            }
            return num;
        }

        public IList<UserInfo> GetAllUsers(int startRowIndexId, int maxNumberRows, int groupId, string keyword, int listType)
        {
            IList<UserInfo> list = new List<UserInfo>();
            string storedProcedureName = "PR_Common_GetList";
            string str2 = "UserID";
            string str3 = "*";
            string str4 = "DESC";
            string str5 = "";
            switch (listType)
            {
                case 1:
                    str3 = "top 100 *";
                    str2 = "PostItems";
                    str4 = "DESC";
                    break;

                case 2:
                    str3 = "top 100 *";
                    str2 = "PostItems";
                    str4 = "ASC";
                    break;

                case 3:
                    str4 = "DESC";
                    str5 = "datediff(hh,LastLoginTime,GetDate())<25 ";
                    break;

                case 4:
                    str4 = "DESC";
                    str5 = "datediff(hh,RegTime,GetDate()) < 25";
                    break;

                case 5:
                    str5 = "Status = " + 1;
                    break;

                case 6:
                    str5 = "UserPoint > 0";
                    break;

                case 7:
                    str5 = "UserExp > 0";
                    break;

                case 8:
                    str5 = "Balance > 0";
                    break;

                case 9:
                    str5 = "Balance <= 0";
                    break;

                case 10:
                    str5 = "GroupID = " + groupId;
                    break;

                case 11:
                    str5 = "UserID= " + keyword;
                    break;

                case 12:
                    str5 = "UserName like '%" + keyword + "%'";
                    break;

                case 13:
                    str5 = "Email like '%" + keyword + "%'";
                    break;

                case 14:
                    str5 = string.Concat(new object[] { "Status = ", 2, " OR Status= ", 6 });
                    break;

                case 15:
                    str5 = string.Concat(new object[] { "Status = ", 4, " OR Status= ", 6 });
                    break;

                case 0x10:
                    str3 = "top 100 *";
                    str2 = "UserId";
                    str4 = "DESC";
                    break;

                case 0x11:
                    str3 = "top 100 *";
                    str2 = "UserPoint";
                    str4 = "DESC";
                    break;

                case 0x12:
                    str3 = "top 100 *";
                    str2 = "UserExp";
                    str4 = "DESC";
                    break;

                case 0x13:
                    str4 = "DESC";
                    str5 = "datediff(dd,GetDate(),EndTime) <= 5 And datediff(dd,GetDate(),EndTime) >= 0";
                    break;

                case 20:
                    str5 = " UserName in (select UserName from PE_Contacter where Homepage like '%" + keyword + "%')";
                    break;

                case 0x15:
                    str5 = " UserName in (select UserName from PE_Contacter where TrueName like '%" + keyword + "%')";
                    break;

                case 0x16:
                    str5 = " UserName in (select UserName from PE_Contacter where IDCard like '%" + keyword + "%')";
                    break;

                case 0x17:
                    str5 = " UserName in (select UserName from PE_Contacter where Company like '%" + keyword + "%')";
                    break;

                case 0x18:
                    str5 = " UserName in (select UserName from PE_Contacter where Address like '%" + keyword + "%')";
                    break;

                case 0x19:
                    str5 = " UserName in (select UserName from PE_Contacter where Mobile like '%" + keyword + "%')";
                    break;

                case 0x1a:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -