You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
4.8 KiB
119 lines
4.8 KiB
using SunlightCentralizedControlManagement_SCCM_.UserClass;
|
|
using SunlightCentralizedControlManagement_SCCM_.ViewModel;
|
|
using System;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
using System.Linq;
|
|
using System.Windows;
|
|
using System.Windows.Forms;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media;
|
|
using static SunlightCentralizedControlManagement_SCCM_.UserClass.SqliteHelper;
|
|
|
|
namespace SunlightCentralizedControlManagement_SCCM_
|
|
{
|
|
/// <summary>
|
|
/// Login.xaml 的交互逻辑
|
|
/// </summary>
|
|
public partial class Login : Window
|
|
{
|
|
public string INIPath = Convert.ToString(System.AppDomain.CurrentDomain.BaseDirectory) + "SCCM.ini"; //配置文件路径
|
|
|
|
private readonly string DBAddress = Environment.CurrentDirectory + "\\DataBase\\SCCM.db"; //数据库路径
|
|
DataTable logindataTable = new DataTable(); //建立login缓存
|
|
DataTable logindataT = new DataTable(); //建立login缓存
|
|
|
|
public Login()
|
|
{
|
|
WindowStartupLocation = WindowStartupLocation.CenterScreen;
|
|
InitializeComponent();
|
|
|
|
UserClass.LogGing.LogGingDATA("SCCM_start");
|
|
}
|
|
|
|
private void Button_Click(object sender, RoutedEventArgs e) //退出按钮事件
|
|
{
|
|
UserClass.LogGing.LogGingDATA("SCCM_LogStop");
|
|
Window window = Window.GetWindow(this);
|
|
window.Close();
|
|
}
|
|
|
|
private void Button_Click_1(object sender, RoutedEventArgs e) //登录按钮事件
|
|
{
|
|
string user = User.Text;
|
|
string pasword = Pasword.Password; ;
|
|
try
|
|
{
|
|
if (User.Text == "") //检查用户名输入
|
|
{
|
|
System.Windows.MessageBox.Show(Properties.Resources.NPERR, "SCCM", MessageBoxButton.OK, MessageBoxImage.Error);
|
|
return;
|
|
}
|
|
|
|
if ((user == "engineer" || user == "ENGINEER") && (pasword == "engineer" || pasword == "ENGINEER")) //确认账号是否是工程师
|
|
{
|
|
App.USER_Purview = "ENGINEER";//传入用户名
|
|
|
|
Window window = Window.GetWindow(this);
|
|
MainWindow Main = new MainWindow();
|
|
window.Close();
|
|
UserClass.LogGing.LogGingDATA("LOGon = ENGINEER");
|
|
|
|
Main.ShowDialog();//实例化并置顶打开窗口
|
|
}
|
|
else
|
|
{
|
|
string paw = logindataT.Select("Name='" + user + "'").First().Field<string>("Password");
|
|
if (paw == null) paw = "";
|
|
|
|
if (paw == pasword)
|
|
{
|
|
App.USER_Purview = User.Text;//传入用户名
|
|
|
|
Window window = Window.GetWindow(this);
|
|
MainWindow Main = new MainWindow();
|
|
window.Close();
|
|
|
|
UserClass.LogGing.LogGingDATA("LOGon = " + user);
|
|
Main.ShowDialog();//实例化并置顶打开窗口
|
|
}
|
|
else
|
|
{
|
|
System.Windows.MessageBox.Show(Properties.Resources.NPERR, "SCCM", MessageBoxButton.OK, MessageBoxImage.Error);
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogGing.ERRDATA(ex);
|
|
System.Windows.MessageBox.Show("Unable to start. Check the log for details.", "SCCM", MessageBoxButton.OK, MessageBoxImage.Error);
|
|
}
|
|
}
|
|
|
|
private void SearchBox_OnKeyDownd(object sender, System.Windows.Input.KeyEventArgs e) //回车跳转功能
|
|
{
|
|
if (e.Key == Key.Enter)
|
|
{
|
|
//SendKeys.SendWait("{Tab}");
|
|
UserClass.PressKey.PressKeys(Keys.Tab, false);
|
|
UserClass.PressKey.PressKeys(Keys.Tab, true);
|
|
}
|
|
}
|
|
|
|
private void Window_Loaded(object sender, RoutedEventArgs e)
|
|
{
|
|
logon.IsEnabled = false;
|
|
SQLiteHelper db = new SQLiteHelper(DBAddress); //数据库连接路径
|
|
db.Open(); //打开数据库
|
|
logindataTable = db.ExecuteDataSet("select * from USER where Groups<>'CHIEF'", null).Tables[0]; //读取表写入缓存
|
|
|
|
logindataT = db.ExecuteDataSet("select * from USER ", null).Tables[0];
|
|
db.Close();
|
|
User.ItemsSource = logindataTable.AsEnumerable().Select(rowdata => rowdata.Field<string>("Name"));//转换
|
|
logon.IsEnabled = true; //允许登录按钮
|
|
UserClass.PressKey.PressKeys(Keys.Tab, false);
|
|
UserClass.PressKey.PressKeys(Keys.Tab, true);
|
|
}
|
|
|
|
}
|
|
}
|
|
|