using CompressorXN.Untils;
using CompressorXN_Model;
using CompressorXN_Model.ViewModel.Response;
using CompressorXN_Service;
using Custom.Utils.Framework;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
namespace CompressorXN
{
public partial class FrmUserManager : XtraForm
{
private static readonly UserService _userService = new UserService();
public FrmUserManager()
{
InitializeComponent();
this.repositoryItemButtonEdit1.ButtonClick += new ButtonPressedEventHandler(repositoryItemHyperLinkEdit_ButtonClick);
//BindDropdownHelper.BindRole(lkup_Role);
}
private void FrmUserManager_Load(object sender, System.EventArgs e)
{
BindGrid();
}
///
/// Grid绑定数据源
///
private void BindGrid()
{
var list = _userService.GetUserVMs();
grid_User.DataSource = list;
}
///
/// 添加用户
///
///
///
private void btn_AddUser_Click(object sender, System.EventArgs e)
{
string userName = txt_UserName.Text;
string roleCode = lkup_Role.EditValue?.ToString();
string pwd = txt_UserPwd.Text;
if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(roleCode) || string.IsNullOrEmpty(pwd))
{
new FrmDialog("用户名、角色、密码均不能为空!").ShowDialog();
return;
}
if (_userService.CheckUserIsExist(userName))
{
new FrmDialog("用户名已存在!").ShowDialog();
return;
}
Loading.ShowWaitForm();
Sys_User user = new Sys_User
{
UserName = userName,
RoleCode = roleCode,
UserPwd = DesHelper.EncryptStringToBytes_Aes(pwd, "5YaNQFh8Vdj2L7Bs5YaNQFh8Vdj2L7Bs")
};
var addResult = _userService.AddUser(user);
if (addResult.isOk)
{
BindGrid();
ClearUserInfo();
}
Loading.CloseWaitForm();
new FrmDialog(addResult.msg).ShowDialog();
}
///
/// 修改用户
///
///
///
private void btn_UpdateUser_Click(object sender, System.EventArgs e)
{
string id = lbl_Id.Text;
string userName = txt_UserName.Text;
string roleCode = lkup_Role.EditValue?.ToString();
if (string.IsNullOrEmpty(id))
{
new FrmDialog("请选择要修改的记录行!").ShowDialog();
return;
}
if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(roleCode))
{
new FrmDialog("用户名、角色均不能为空!").ShowDialog();
return;
}
if (_userService.CheckUserIsExist(userName))
{
new FrmDialog("用户名已存在!").ShowDialog();
return;
}
Loading.ShowWaitForm();
Sys_User user = new Sys_User
{
Id = id,
UserName = userName,
RoleCode = roleCode
};
var updateResult = _userService.UpdateUser(user);
if (updateResult.isOk)
{
BindGrid();
ClearUserInfo();
}
Loading.CloseWaitForm();
new FrmDialog(updateResult.msg).ShowDialog();
}
///
/// 删除用户
///
///
///
private void btn_DelUser_Click(object sender, System.EventArgs e)
{
string id = lbl_Id.Text;
if (string.IsNullOrEmpty(id))
{
new FrmDialog("请选择要修改的记录行!").ShowDialog();
return;
}
if (new FrmAckDialog("确认删除选中用户?").ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
Loading.ShowWaitForm();
var delResult = _userService.DelUserById(id);
if (delResult.isOk)
{
BindGrid();
ClearUserInfo();
}
Loading.CloseWaitForm();
new FrmDialog(delResult.msg).ShowDialog();
}
}
///
/// 清空信息
///
///
///
private void btn_ClearInfo_Click(object sender, System.EventArgs e)
{
ClearUserInfo();
}
///
/// 清空控件文本信息
///
private void ClearUserInfo()
{
lbl_Id.Text = string.Empty;
txt_UserName.Text = string.Empty;
txt_UserPwd.Text = string.Empty;
lkup_Role.EditValue = "";
}
///
/// 行点击事件
///
///
///
private void gridView_User_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
{
var model = gridView_User.GetRow(e.RowHandle) as UserVM;
if (model != null)
{
lbl_Id.Text = model.Id;
txt_UserName.Text = model.UserName;
lkup_Role.EditValue = model.RoleCode;
//txt_UserPwd.Text = model.UserPwd;
}
}
private void repositoryItemHyperLinkEdit_ButtonClick(object sender, ButtonPressedEventArgs e)
{
var rowHandle = gridView_User.FocusedRowHandle;
var model = gridView_User.GetRow(rowHandle) as UserVM;
if (e.Button.Tag.ToString() == "look_pwd")
{
FrmShowPwd frm = new FrmShowPwd(model.UserPwd);
frm.ShowDialog();
}
}
}
}