using HxModel;
|
using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Diagnostics;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using System.Windows;
|
using System.Windows.Controls;
|
using System.Windows.Data;
|
using System.Windows.Documents;
|
using System.Windows.Input;
|
using System.Windows.Media;
|
using System.Windows.Media.Imaging;
|
using System.Windows.Navigation;
|
using System.Windows.Shapes;
|
using XHandler.Class;
|
using HxUserManagement.Classes;
|
using HxUserManagement.HxBLL;
|
|
namespace HxUserManagement.Views
|
{
|
/// <summary>
|
/// UserCenter.xaml 的交互逻辑
|
/// </summary>
|
public partial class UserCenter : UserControl
|
{
|
#region CustomEvent
|
public static readonly RoutedEvent editRoutedEvent =
|
EventManager.RegisterRoutedEvent("editEvent", RoutingStrategy.Bubble, typeof(CustomEvent.CustomRoutedEventHandler<string>), typeof(UserCenter));
|
|
[Description("editEvent")]
|
public event CustomEvent.CustomRoutedEventHandler<string> editEvent
|
{
|
add
|
{
|
this.AddHandler(editRoutedEvent, value);
|
}
|
remove
|
{
|
this.RemoveHandler(editRoutedEvent, value);
|
}
|
}
|
|
private void RaiseEditEvent(string l)
|
{
|
CustomRoutedEventArgs<string> arg = new CustomRoutedEventArgs<string>(editRoutedEvent, l);
|
this.RaiseEvent(arg);
|
}
|
|
public static readonly RoutedEvent resetPswdRoutedEvent =
|
EventManager.RegisterRoutedEvent("resetPswdEvent", RoutingStrategy.Bubble, typeof(CustomEvent.CustomRoutedEventHandler<string>), typeof(UserCenter));
|
|
[Description("resetPswdEvent")]
|
public event CustomEvent.CustomRoutedEventHandler<string> resetPswdEvent
|
{
|
add
|
{
|
this.AddHandler(resetPswdRoutedEvent, value);
|
}
|
remove
|
{
|
this.RemoveHandler(resetPswdRoutedEvent, value);
|
}
|
}
|
|
private void RaiseResetPswdEvent(string l)
|
{
|
CustomRoutedEventArgs<string> arg = new CustomRoutedEventArgs<string>(resetPswdRoutedEvent, l);
|
this.RaiseEvent(arg);
|
}
|
#endregion
|
|
public List<UserInfoModel> userInfoList;
|
public UserInfoBLL userInfoBLL = new UserInfoBLL();
|
public List<RolesModel> roleList;
|
public List<string> statusList;
|
public UserCenter()
|
{
|
InitializeComponent();
|
|
Debug.WriteLine("1 "+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"));
|
|
Task.Factory.StartNew(() => {
|
userInfoList = userInfoBLL.GetAllUserInfo();
|
OnFinished();
|
});
|
|
//userInfoList = userInfoBLL.GetAllUserInfo();
|
//datagrid.ItemsSource = userInfoList;
|
Debug.WriteLine("2 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"));
|
|
roleList = DataModel.GetRoles();
|
RolesModel role = new RolesModel();
|
role.Name = Properties.Resources.strPleaseSelect;
|
roleList.Insert(0, role);
|
comboxRole.ItemsSource = roleList;
|
comboxRole.SelectedIndex = 0;
|
|
statusList = DataModel.GetStatusList();
|
statusList.Insert(0, Properties.Resources.strPleaseSelect);
|
comboxAccountStatus.ItemsSource = statusList;
|
comboxAccountStatus.SelectedIndex = 0;
|
Debug.WriteLine("3 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"));
|
}
|
|
private void OnFinished()
|
{
|
Dispatcher.BeginInvoke(new Action(() => {
|
Debug.WriteLine("4 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"));
|
datagrid.ItemsSource = userInfoList;
|
Debug.WriteLine("5 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"));
|
}));
|
|
}
|
|
private void btnEdit_Click(object sender, RoutedEventArgs e)
|
{
|
if (EventResponseController.Instance.CanExecute() == false)
|
return;
|
Button btn = (Button)sender;
|
if (btn != null)
|
{
|
string id = (string)btn.Tag;
|
RaiseEditEvent(id);
|
}
|
}
|
|
private void btnDelete_Click(object sender, RoutedEventArgs e)
|
{
|
if (EventResponseController.Instance.CanExecute() == false)
|
return;
|
Button btn = (Button)sender;
|
if (btn != null)
|
{
|
string id = (string)btn.Tag;
|
UserInfoModel user = datagrid.SelectedItem as UserInfoModel;
|
|
string msg = string.Format(Properties.Resources.strDeleteUserConfirm, user.UserName);
|
MessageBoxResult ret = MessageBox.Show(msg, "Tips", MessageBoxButton.YesNo);
|
if(ret == MessageBoxResult.Yes)
|
{
|
bool result = userInfoBLL.DelById(id);
|
if (result)
|
MessageBox.Show(Properties.Resources.strDeleteSuccess, "Tips");
|
else
|
MessageBox.Show(Properties.Resources.strDeleteFailed, "Tips");
|
|
Refresh();
|
}
|
}
|
}
|
|
private void btnPswdReset_Click(object sender, RoutedEventArgs e)
|
{
|
if (EventResponseController.Instance.CanExecute() == false)
|
return;
|
Button btn = (Button)sender;
|
if (btn != null)
|
{
|
string id = (string)btn.Tag;
|
RaiseResetPswdEvent(id);
|
}
|
}
|
|
private void ResetPassword_closeEvent(object sender, EventArgs e)
|
{
|
throw new NotImplementedException();
|
}
|
|
private void datagrid_LoadingRow(object sender, DataGridRowEventArgs e)
|
{
|
e.Row.Header = e.Row.GetIndex() + 1;
|
}
|
|
public void RefreshUserList()
|
{
|
userInfoList = userInfoBLL.GetAllUserInfo();
|
datagrid.ItemsSource = userInfoList;
|
}
|
|
private void textboxUserName_PreviewKeyDown(object sender, KeyEventArgs e)
|
{
|
if (e.Key == Key.Enter)
|
{
|
Refresh();
|
}
|
}
|
|
private void textboxPhone_PreviewKeyDown(object sender, KeyEventArgs e)
|
{
|
if (e.Key == Key.Enter)
|
{
|
Refresh();
|
}
|
}
|
|
|
private void comboxRole_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
{
|
Refresh();
|
}
|
|
private void comboxAccountStatus_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
{
|
Refresh();
|
}
|
|
public void Refresh()
|
{
|
string name = textboxUserName.Text;
|
string phone = textboxPhone.Text;
|
string state = "";
|
if (comboxAccountStatus.SelectedIndex > 0)
|
state = comboxAccountStatus.SelectedIndex == 1 ? "0" : "1";
|
string authority = "";
|
if (comboxRole.SelectedIndex > 0)
|
{
|
RolesModel role = comboxRole.SelectedItem as RolesModel;
|
authority = role.Id;
|
}
|
|
userInfoList = Search(name, phone, state, authority);
|
datagrid.ItemsSource = userInfoList;
|
}
|
|
private List<UserInfoModel> Search(string name, string phone, string state, string authority)
|
{
|
return userInfoBLL.Search(name, phone, state, authority);
|
}
|
}
|
|
}
|