ChangeUserWindow.xaml.cs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. using CCDCount.MODEL.SqlDataModel;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using System.Windows;
  8. using System.Windows.Controls;
  9. using System.Windows.Data;
  10. using System.Windows.Documents;
  11. using System.Windows.Input;
  12. using System.Windows.Media;
  13. using System.Windows.Media.Imaging;
  14. using System.Windows.Shapes;
  15. namespace CCDCountWpf.WpfFrom
  16. {
  17. /// <summary>
  18. /// ChangeUserWindow.xaml 的交互逻辑
  19. /// </summary>
  20. public partial class ChangeUserWindow : Window
  21. {
  22. public UserMesDataModelClass UserMessage = null;
  23. public ChangeUserWindow()
  24. {
  25. InitializeComponent();
  26. }
  27. private void UserCancelBtn_Click(object sender, RoutedEventArgs e)
  28. {
  29. this.Close();
  30. }
  31. private void UserChangeBtn_Click(object sender, RoutedEventArgs e)
  32. {
  33. if (UserMessage == null) return;
  34. if (UserNameTbx.Text == "" || UserOldPassTbx.Password == "" || UserNewPassTbx.Password == ""
  35. || UserReNewPassTbx.Password == "" || UserLevelCbx.SelectedItem == null)
  36. {
  37. MessageBox.Show("请将信息填写完整");
  38. return;
  39. }
  40. string OldPass = MessageBus.UserMessageClass.HashPassword(UserOldPassTbx.Password);
  41. if (OldPass != UserMessage.PassWord)
  42. {
  43. MessageBox.Show("旧密码输入错误");
  44. return;
  45. }
  46. if (UserReNewPassTbx.Password != UserNewPassTbx.Password)
  47. {
  48. MessageBox.Show("新密码输入不一致");
  49. return;
  50. }
  51. if(ShowMessageBus.ShowBinding.UserMesDataModels.Where(x => x.UserName == UserNameTbx.Text).Count() > 0)
  52. {
  53. MessageBox.Show("用户名已存在");
  54. return;
  55. }
  56. UserMesDataModelClass newUserMessage = new UserMesDataModelClass()
  57. {
  58. Id = UserMessage.Id,
  59. UserName = UserNameTbx.Text,
  60. PassWord = UserNewPassTbx.Password,
  61. IsDelete = UserMessage.IsDelete,
  62. IsAdmin = UserLevelCbx.SelectedItem.ToString() == "管理员" ? true : false,
  63. UserMes = UserLevelCbx.SelectedItem.ToString()
  64. };
  65. MessageBus.UserMessageClass.ChangeUserMessage(UserMessage.Id, newUserMessage);
  66. ShowMessageBus.ShowBinding.UserMesDataModels = MessageBus.UserMessageClass.GetAllUserMessage();
  67. MessageBox.Show("修改成功");
  68. this.Close();
  69. }
  70. private void UserResetPassBtn_Click(object sender, RoutedEventArgs e)
  71. {
  72. if(UserMessage == null) return;
  73. var confirmResult = MessageBox.Show($"继续执行此操作将会重置用户{UserMessage.UserName}的密码至默认的\"123456\",是否继续执行",
  74. "执行确认", MessageBoxButton.YesNo);
  75. if (confirmResult == MessageBoxResult.No)
  76. {
  77. return;
  78. }
  79. MessageBus.UserMessageClass.ResetPassWord(UserMessage.Id);
  80. ShowMessageBus.ShowBinding.UserMesDataModels = MessageBus.UserMessageClass.GetAllUserMessage();
  81. MessageBox.Show("重置成功");
  82. UserMessage = ShowMessageBus.ShowBinding.UserMesDataModels.Where(x => x.Id == UserMessage.Id).FirstOrDefault();
  83. }
  84. private void Window_Loaded(object sender, RoutedEventArgs e)
  85. {
  86. UserLevelCbx.Items.Clear();
  87. if (UserMessage.IsAdmin && UserMessage.Id == 1)
  88. {
  89. UserLevelCbx.Items.Add("管理员");
  90. UserLevelCbx.SelectedIndex = 0;
  91. UserNameTbx.Text = UserMessage.UserName;
  92. UserNameTbx.IsReadOnly = true;
  93. }
  94. else
  95. {
  96. UserLevelCbx.Items.Add("管理员");
  97. UserLevelCbx.Items.Add("普通用户");
  98. UserLevelCbx.SelectedItem = UserMessage.IsAdmin ? "管理员" : "普通用户";
  99. }
  100. UserIDTbx.Text = UserMessage.Id.ToString();
  101. }
  102. }
  103. }