启动时的登录对话框,应用启动后直接以 管理员 (Admin) 角色自动登录

This commit is contained in:
zhengxuan.zhang
2026-06-01 17:37:38 +08:00
parent 4be032918d
commit df50000e6a
+4 -21
View File
@@ -348,28 +348,11 @@ namespace XplorePlane
// return null;
//}
// ── 登录认证:在显示主窗口前弹出登录对话框 ──
// 临时切换 ShutdownMode,防止 LoginDialog 关闭时 WPF 自动退出应用
var previousShutdownMode = Application.Current.ShutdownMode;
Application.Current.ShutdownMode = ShutdownMode.OnExplicitShutdown;
// ── 登录认证:跳过登录对话框,默认以管理员角色登录 ──
var permissionService = Container.Resolve<IPermissionService>();
permissionService.Authenticate("xpuser"); // 默认登录为管理员 (Admin)
var loginViewModel = Container.Resolve<LoginDialogViewModel>();
var loginDialog = new LoginDialog(loginViewModel);
var loginResult = loginDialog.ShowDialog();
if (loginResult != true)
{
// 用户取消登录,退出应用
Log.Information("用户取消登录,应用程序退出");
Application.Current.Shutdown();
return null;
}
Log.Information("登录认证成功,角色: {Role}",
Container.Resolve<IPermissionService>().CurrentRole);
// 恢复 ShutdownMode,让主窗口关闭时正常退出
Application.Current.ShutdownMode = ShutdownMode.OnMainWindowClose;
Log.Information("默认登录为管理员角色,跳过登录对话框");
var shell = Container.Resolve<MainWindow>();