283 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			283 lines
		
	
	
		
			9.4 KiB
		
	
	
	
		
			C#
		
	
	
	
using BLL;
 | 
						|
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.Data;
 | 
						|
using System.Data.SqlClient;
 | 
						|
 | 
						|
namespace FineUIPro.Web.common.SysManage
 | 
						|
{
 | 
						|
    public partial class UpdatePassword : PageBase
 | 
						|
    {
 | 
						|
        #region 加载
 | 
						|
        protected void Page_Load(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            // 表头过滤
 | 
						|
            FilterDataRowItem = FilterDataRowItemImplement;
 | 
						|
            if (!IsPostBack)
 | 
						|
            {
 | 
						|
                if (this.CurrUser.Account != BLL.Const.Gly)
 | 
						|
                {
 | 
						|
                    this.txtAccount.Hidden = true;
 | 
						|
                }
 | 
						|
                ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
 | 
						|
                // 绑定表格
 | 
						|
                BindGrid();
 | 
						|
            }
 | 
						|
        }
 | 
						|
        
 | 
						|
        /// <summary>
 | 
						|
        /// 绑定数据
 | 
						|
        /// </summary>
 | 
						|
        private void BindGrid()
 | 
						|
        {
 | 
						|
            string strSql = "SELECT u.UserId,u.Account,u.UserCode,u.UserName,u.RoleId,r.RoleName,u.DepartId,dep.DepartName,(CASE WHEN u.IsPost IS NOT NULL THEN 'On duty' ELSE 'Not on duty' END) AS IsPost "
 | 
						|
                          + @" FROM Sys_User u"
 | 
						|
                          + @" LEFT JOIN dbo.Sys_Role AS r ON r.RoleId = u.RoleId"
 | 
						|
                          + @" LEFT JOIN dbo.Base_Depart AS dep ON dep.DepartId = u.DepartId where 1=1 ";
 | 
						|
            //string strWhere = " where Account = @Account";
 | 
						|
            //if (this.CurrUser.Account != BLL.Const.Gly)
 | 
						|
            //{
 | 
						|
            //    strSql += strWhere;
 | 
						|
            //}
 | 
						|
 | 
						|
            //SqlParameter[] parameter = new SqlParameter[]       
 | 
						|
            //{
 | 
						|
            //    new SqlParameter("@Account",this.CurrUser.Account),
 | 
						|
            //};
 | 
						|
            List<SqlParameter> listStr = new List<SqlParameter>();
 | 
						|
            if (this.CurrUser.Account != BLL.Const.Gly)
 | 
						|
            {
 | 
						|
                //strSql += strWhere;
 | 
						|
                strSql += " AND u.Account = @Account";
 | 
						|
                listStr.Add(new SqlParameter("@Account", this.CurrUser.Account));
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                if (!string.IsNullOrEmpty(this.txtAccount.Text.Trim()))
 | 
						|
                {
 | 
						|
                    strSql += " AND u.Account LIKE @Account";
 | 
						|
                    listStr.Add(new SqlParameter("@Account", "%" + this.txtAccount.Text.Trim() + "%"));
 | 
						|
 | 
						|
                }
 | 
						|
            }
 | 
						|
            SqlParameter[] parameter = listStr.ToArray();
 | 
						|
            DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
 | 
						|
 | 
						|
            // 2.获取当前分页数据
 | 
						|
            //var table = this.GetPagedDataTable(Grid1, tb1);
 | 
						|
            Grid1.RecordCount = tb.Rows.Count;
 | 
						|
            tb = GetFilteredTable(Grid1.FilteredData, tb);
 | 
						|
            var table = this.GetPagedDataTable(Grid1, tb);
 | 
						|
            Grid1.DataSource = table;
 | 
						|
            Grid1.DataBind();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 过滤表头
 | 
						|
        /// <summary>
 | 
						|
        /// 过滤表头
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Grid1_FilterChange(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 根据表头信息过滤列表数据
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sourceObj"></param>
 | 
						|
        /// <param name="fillteredOperator"></param>
 | 
						|
        /// <param name="fillteredObj"></param>
 | 
						|
        /// <param name="column"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        private bool FilterDataRowItemImplement(object sourceObj, string fillteredOperator, object fillteredObj, string column)
 | 
						|
        {
 | 
						|
            bool valid = false;
 | 
						|
            if (column == "UserName")
 | 
						|
            {
 | 
						|
                string sourceValue = sourceObj.ToString();
 | 
						|
                string fillteredValue = fillteredObj.ToString();
 | 
						|
                if (fillteredOperator == "equal" && sourceValue == fillteredValue)
 | 
						|
                {
 | 
						|
                    valid = true;
 | 
						|
                }
 | 
						|
                else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
 | 
						|
                {
 | 
						|
                    valid = true;
 | 
						|
                }
 | 
						|
            }
 | 
						|
 | 
						|
            if (column == "UnitName")
 | 
						|
            {
 | 
						|
                string sourceValue = sourceObj.ToString();
 | 
						|
                string fillteredValue = fillteredObj.ToString();
 | 
						|
                if (fillteredOperator == "equal" && sourceValue == fillteredValue)
 | 
						|
                {
 | 
						|
                    valid = true;
 | 
						|
                }
 | 
						|
                else if (fillteredOperator == "contain" && sourceValue.Contains(fillteredValue))
 | 
						|
                {
 | 
						|
                    valid = true;
 | 
						|
                }
 | 
						|
            }
 | 
						|
 | 
						|
            if (column == "IsPost")
 | 
						|
            {
 | 
						|
                string sourceValue = sourceObj.ToString();
 | 
						|
                string fillteredValue = fillteredObj.ToString();
 | 
						|
                if (fillteredOperator == "equal" && sourceValue == fillteredValue)
 | 
						|
                {
 | 
						|
                    valid = true;
 | 
						|
                }
 | 
						|
            }
 | 
						|
            return valid;
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 分页、排序
 | 
						|
        /// <summary>
 | 
						|
        /// 分页
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
 | 
						|
        {
 | 
						|
            Grid1.PageIndex = e.NewPageIndex;
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 分页显示条数下拉框
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 排序
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
 | 
						|
        {
 | 
						|
            Grid1.SortDirection = e.SortDirection;
 | 
						|
            Grid1.SortField = e.SortField;
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 关闭弹出窗口
 | 
						|
        /// <summary>
 | 
						|
        /// 关闭窗口
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Window1_Close(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region  重置密码
 | 
						|
        /// <summary>
 | 
						|
        /// 批量删除数据
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void btnRefresh_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (Grid1.SelectedRowIndexArray.Length > 0)
 | 
						|
            {
 | 
						|
                foreach (int rowIndex in Grid1.SelectedRowIndexArray)
 | 
						|
                {
 | 
						|
                    string rowID = Grid1.DataKeys[rowIndex][0].ToString();
 | 
						|
                    var user = BLL.Sys_UserService.GetUsersByUserId(rowID);
 | 
						|
                    if (user != null)
 | 
						|
                    {
 | 
						|
                        string password = BLL.Sys_UserService.GetEncryptionPassword(user.Account);
 | 
						|
                        if (user.UserId == BLL.Const.GlyId)
 | 
						|
                        {
 | 
						|
                            password = Sys_UserService.EncryptionPassword(BLL.Const.glyPassWord);
 | 
						|
                        }
 | 
						|
                        BLL.Sys_UserService.UpdatePassword(rowID, password);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
                BindGrid();
 | 
						|
                BLL.Sys_LogService.AddLog(this.CurrUser.UserId, "Reset Password");
 | 
						|
                ShowNotify("The password has been reset to the original password!",MessageBoxIcon.Success);
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                ShowNotify("Please select at least one line!");
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 右键重置密码
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void btnMenuRefresh_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            this.btnRefresh_Click(null,null);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 编辑
 | 
						|
        /// <summary>
 | 
						|
        /// 编辑
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void btnEdit_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (Grid1.SelectedRowIndexArray.Length == 0)
 | 
						|
            {
 | 
						|
                Alert.ShowInParent("Please select at least one line!");
 | 
						|
                return;
 | 
						|
            }
 | 
						|
            string Id = Grid1.SelectedRowID;
 | 
						|
            PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UpdatePasswordEdit.aspx?userId={0}", Id, "编辑 - ")));
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Grid行双击事件
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
 | 
						|
        {
 | 
						|
            btnEdit_Click(null, null);
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 右键编辑事件
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void btnMenuEdit_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            btnEdit_Click(null, null);
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 查询
 | 
						|
        /// <summary>
 | 
						|
        /// 查询
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        protected void Text_TextChanged(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
    }
 | 
						|
} |