Пример #1
0
        /// <summary>
        /// 获取用户的信息
        /// </summary>
        public UserInfoTO GetUserInfoByCode(string userCode)
        {
            //string strsql = string.Format("select u.userId,u.username,u.userCode,u.headimg,u.departmentid,u.posiid,d.rolename,p.name from UserInfo u,Department d ,position p where u.DepartmentId=d.Id and u.PosiId=p.id and u.UserCode='{0}'", userCode);
            //DataTable dt = SqlHelper.Query(strsql.ToString()).Tables[0];
            //return dt;
            UserInfoTO to   = new UserInfoTO();
            var        user = linqHelper.GetEntity <UserInfo>(l => l.UserCode == userCode);

            if (user != null && user.UserID > 0)
            {
                to.DepartmentId = user.DepartmentId;
                to.HeadImg      = user.HeadImg;
                to.IsAdmin      = user.IsAdmin;
                to.PosiId       = user.PosiId;
                to.UserCode     = user.UserCode;
                to.UserID       = user.UserID;
                to.UserName     = user.UserName;
                //to.UserStatus = user.UserStatus;
                var dep = linqHelper.GetEntity <Department>(l => l.Id == user.DepartmentId);
                to.DepName = (dep != null && dep.Id > 0) ? dep.RoleName : "";
                var posi = linqHelper.GetEntity <Position>(l => l.Id == user.PosiId);
                to.PosiName = (posi != null && posi.Id > 0) ? posi.Name : "";
            }
            return(to);
        }
Пример #2
0
        public UserInfoTO GetUserInfo(string userName)
        {
            var cacheItem = ApplicationCache <UserInfoTO> .GetCacheItem(d => d.UserName == userName);

            if (cacheItem != null)
            {
                return(cacheItem);
            }

            var user = _authRepository.FindUserByUserName(userName);

            if (user != null)
            {
                var userRoles = _authRepository.GetUserRoles(user.UserName);

                UserInfoTO userInfo = new UserInfoTO
                {
                    Id       = user.Id,
                    UserName = user.UserName,
                    Email    = user.Email,
                    Roles    = userRoles
                };

                ApplicationCache <UserInfoTO> .AddCacheItem(userInfo);

                return(userInfo);
            }
            return(null);
        }
Пример #3
0
        public bool ChangeEmail(ChangeEmailTO emailDetails)
        {
            using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                var result = _authRepository.ChangeEmail(emailDetails.OldEmail, emailDetails.NewEmail);

                if (result)
                {
                    scope.Complete();
                    var cacheItem = ApplicationCache <UserInfoTO> .GetCacheItem(d => d.Email == emailDetails.OldEmail);

                    if (cacheItem != null)
                    {
                        var newCacheItem = new UserInfoTO()
                        {
                            Id       = cacheItem.Id,
                            Email    = emailDetails.NewEmail,
                            UserName = cacheItem.UserName,
                            Roles    = cacheItem.Roles
                        };

                        ApplicationCache <UserInfoTO> .RemoveCacheItem(cacheItem);

                        ApplicationCache <UserInfoTO> .AddCacheItem(newCacheItem);
                    }

                    return(true);
                }

                return(false);
            }
        }
Пример #4
0
    /// <summary>
    /// 用户列表
    /// </summary>
    private void ShowUserAll()
    {
        int         numPerPage = 10;//每页显示数量
        string      orderBy    = " UserID desc ";
        int         totalCount = 0;
        UserInfoBLL bll        = new UserInfoBLL();
        UserInfoTO  sto        = new UserInfoTO();

        sto.UserCode = txtUsere.Text.Trim();
        sto.UserName = txtTrueName.Text.Trim();
        if (ddlDep.SelectedValue != "")
        {
            sto.DepartmentId = Convert.ToInt32(ddlDep.SelectedValue);
        }
        DataTable     dt = bll.GetUserInfoList(sto, AspNetPager1.CurrentPageIndex, numPerPage, orderBy, out totalCount, "");
        StringBuilder sb = new StringBuilder();

        if (dt != null && dt.Rows.Count > 0)
        {
            AspNetPager1.RecordCount = totalCount;
            AspNetPager1.PageSize    = numPerPage;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];
                sb.AppendFormat("<tr><td align='center'>{0}</td>", i + 1 * (numPerPage * (AspNetPager1.CurrentPageIndex - 1) + 1));
                sb.AppendFormat("<td align='center'>{0}</td>", dr["UserCode"]);
                sb.AppendFormat("<td align='center'style='width:75px;'>{0}</td>", dr["UserName"]);
                sb.AppendFormat("<td align='center'style='width:75px;'>{0}</td>", dr["Name"]);
                sb.AppendFormat("<td align='center'style='width:75px;'>{0}</td>", dr["RoleName"]);
                sb.AppendFormat("<td align='center' style='width:70px;'>{0}</td>", PublicEnum.GetEnumDescription <PublicEnum.PublicIsVindicate>(dr["IsAdmin"].ToString()));
                if (Convert.ToInt32(dr["UserStatus"]) == 1)
                {
                    sb.AppendFormat("<td align='center'style='width:70px;'>{0}</td>", PublicEnum.GetEnumDescription <PublicEnum.PublicStatus>(dr["UserStatus"].ToString()));
                }
                else
                {
                    sb.AppendFormat("<td align='center'style='width:70px;color:Red;'>{0}</td>", PublicEnum.GetEnumDescription <PublicEnum.PublicStatus>(dr["UserStatus"].ToString()));
                }
                if (dr["EntyTime"] is DBNull)
                {
                    sb.AppendFormat("<td align='center'>{0}</td>", "");
                }
                else
                {
                    sb.AppendFormat("<td align='center'>{0}</td>", Convert.ToDateTime(dr["EntyTime"]).ToString("yyyy-MM-dd"));
                }
                sb.AppendFormat("<td align='center'>{0}</td>", dr["Tel"]);
                sb.AppendFormat("<td align='center' style='width:160px;'>{0}</td>", dr["Email"]);
                sb.AppendFormat("<td align='center'><a href='UpdateUser.aspx?userID={0}'>修 改</a> &nbsp&nbsp&nbsp  <a     href='javascript:;' onclick='delUser({0})' >禁 用</a></td>", dr["UserID"]);
                sb.Append("</tr>");
            }
        }
        UserList = sb.ToString();
    }
Пример #5
0
        /// <summary>
        /// 获取实体分页
        /// </summary>
        public DataTable GetUserInfoList(UserInfoTO TO, int pageIndex, int pageSize, string orderBy, out int rowCount)
        {
            string table  = " [UserInfo] ";
            string pk     = " ID ";
            string fields = " * ";
            string filter = " UserStatus=1 ";// string.Format(" Status={0} ", ConstantsManager.JiLuZhuangTai.Normal);

            #region 组织查询条件

            if (!string.IsNullOrEmpty(TO.UserName))
            {
                filter += string.Format(" and UserName like '%{0}%' ", StringHelper.SQLFilter(TO.UserName));
            }
            if (!string.IsNullOrEmpty(TO.UserCode))
            {
                filter += string.Format(" and UserCode like '%{0}%' ", StringHelper.SQLFilter(TO.UserCode));
            }
            if (TO.DepartmentId != null && TO.DepartmentId != 0)
            {
                filter += string.Format(" and DepartmentId={0} ", StringHelper.SQLFilter(TO.DepartmentId.ToString()));
            }

            #endregion

            string sort = " ID DESC ";//排序
            if (!string.IsNullOrEmpty(orderBy))
            {
                sort = orderBy;
            }

            SqlParameter[] parameters =
            {
                new SqlParameter("@Tables",    SqlDbType.VarChar, 1000),
                new SqlParameter("@PK",        SqlDbType.VarChar,  100),
                new SqlParameter("@Fields",    SqlDbType.VarChar, 1000),
                new SqlParameter("@Pageindex", SqlDbType.Int),
                new SqlParameter("@PageSize",  SqlDbType.Int),
                new SqlParameter("@Filter",    SqlDbType.VarChar, 1000),
                new SqlParameter("@Sort",      SqlDbType.VarChar,  200),
                new SqlParameter("@RowCount",  SqlDbType.Int)
            };
            parameters[0].Value     = table;
            parameters[1].Value     = pk;
            parameters[2].Value     = fields;
            parameters[3].Value     = pageIndex;
            parameters[4].Value     = pageSize;
            parameters[5].Value     = filter;
            parameters[6].Value     = sort;
            parameters[7].Direction = ParameterDirection.Output;

            DataSet ds = SqlHelper.RunProcedure("SP_DividePage", parameters, "UserInfoList");
            rowCount = (int)parameters[7].Value;
            return(ds.Tables[0]);
        }
Пример #6
0
 /// <summary>
 /// 自定义获得数据列表分页
 /// </summary>
 /// <returns></returns>
 public DataTable GetUserInfoList(UserInfoTO TO, int pageIndex, int pageSize, string orderBy, out int rowCount, string str)
 {
     return(service.GetUserInfoList(TO, pageIndex, pageSize, orderBy, out rowCount, ""));
 }