alielie
2025-04-10 6bcafc823e836ecd5790f87178a906333699f868
HMI.MenuManage/UserManage.xaml.cs
@@ -1,4 +1,5 @@
using HMI.Base;
using HMI.Core.Util;
using HMI.MenuManage.Entity;
using HMI.MenuManage.Model;
using HMI.UI.Util;
@@ -31,6 +32,18 @@
            this.Loaded -= UserManage_Loaded;
        }
        public override void DoClose(object sender, EventArgs e)
        {
            try
            {
                Model?.sqliteHelper?.Close();
            }
            catch (Exception ex)
            {
                log.Warn("Do Close Failed.", ex);
            }
        }
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Button btn = (Button)sender;
@@ -40,7 +53,7 @@
                {
                    UserModal userModal = new UserModal
                    {
                        Title = "新增用户",
                        Title = LangUtil.Get("HMI.User.Add"),
                        Owner = Window.GetWindow(this),
                        sqliteHelper = Model.sqliteHelper
                    };
@@ -52,7 +65,7 @@
                catch (Exception ex)
                {
                    log.Error("Add User Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"新增失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.AddFailed")}: {ex.Message}");
                }
            }
            else if (btn.Name == "refreshBtn")
@@ -64,7 +77,7 @@
                catch (Exception ex)
                {
                    log.Error("Refresh User Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"刷新失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.RefreshFailed")}: {ex.Message}");
                }
            }
            else if (btn.Name == "editBtn")
@@ -73,7 +86,7 @@
                {
                    UserModal userModal = new UserModal
                    {
                        Title = "编辑用户",
                        Title = LangUtil.Get("HMI.User.Edit"),
                        Owner = Window.GetWindow(this),
                        sqliteHelper = Model.sqliteHelper
                    };
@@ -85,7 +98,7 @@
                catch (Exception ex)
                {
                    log.Error("Edit User Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"编辑失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.EditFailed")}: {ex.Message}");
                }
            }
            else if (btn.Name == "deleteBatchBtn")
@@ -95,23 +108,22 @@
                    List<string> usernames = Model.DataSource.Where(x => x.Selected).Select(x => x.Username).ToList();
                    if (usernames == null || usernames.Count <= 0)
                    {
                        ToastHelper.Warning(Window.GetWindow(this), "请选择要删除的用户!");
                        ToastHelper.Warning(Window.GetWindow(this), LangUtil.Get("HMI.NoDeleteData"));
                        return;
                    }
                    var res = MsgBoxHelper.WarnMessage(Window.GetWindow(this),
                        $"确定删除选中的[{usernames.Count}]条用户吗?该操作不可逆!");
                        string.Format(LangUtil.Get("HMI.MakeSureDeletes"), usernames.Count));
                    if (res == MessageBoxResult.OK)
                    {
                        Model.DeleteUserByUsernames(usernames);
                        Model.LoadData();
                        ToastHelper.Success(Window.GetWindow(this), "删除成功");
                    }
                }
                catch (Exception ex)
                {
                    log.Error("Delete User Batch Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"删除失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.DeleteFailed")}: {ex.Message}");
                }
            }
            else if (btn.Name == "delBtn")
@@ -120,7 +132,7 @@
                {
                    var data = (UserData)((Button)sender).DataContext;
                    var res = MsgBoxHelper.WarnMessage(Window.GetWindow(this),
                        $"确定删除用户[{data.Name}]吗?该操作不可逆!");
                        string.Format(LangUtil.Get("HMI.MakeSureDeleteSingle"), data.Name));
                    if (res == MessageBoxResult.OK)
                    {
                        Model.DeleteUserByUsername(data.Username);
@@ -130,7 +142,7 @@
                catch (Exception ex)
                {
                    log.Error("Delete User Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"删除失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.DeleteFailed")}: {ex.Message}");
                }
            }
            else if (btn.Name == "saveRoleBtn")
@@ -139,12 +151,12 @@
                {
                    Model.SaveUserRole();
                    Model.LoadUserRole();
                    ToastHelper.Success(Window.GetWindow(this), "保存成功");
                    ToastHelper.Success(Window.GetWindow(this), LangUtil.Get("App.SaveSuccess"));
                }
                catch (Exception ex)
                {
                    log.Error("Update User-Role Rel Failed.", ex);
                    ToastHelper.Error(Window.GetWindow(this), $"保存失败!{ex.Message}");
                    ToastHelper.Error(Window.GetWindow(this), $"{LangUtil.Get("App.SaveFailed")}: {ex.Message}");
                }
            }
        }