diff --git a/Login.xaml.cs b/Login.xaml.cs
index 46c416b..4659aec 100644
--- a/Login.xaml.cs
+++ b/Login.xaml.cs
@@ -155,6 +155,7 @@ namespace formula_manage
{
Connstr_SC = "server=" + TEXT_SQLIP + ";database=" + TEXT_SQLNAME + ";User ID=" + TEXT_SQLUSER + ";Password=" + TEXT_SQLPASWOR;
}
+
SqlConnection conn_SC = new SqlConnection(Connstr_SC);
try
@@ -213,9 +214,9 @@ namespace formula_manage
try
{
await conn_SC.OpenAsync(); //打开数据连接
- SqlDataAdapter Stuff_data = new SqlDataAdapter(user_sql, Connstr_SC); //查询
+ SqlDataAdapter user_data = new SqlDataAdapter(user_sql, Connstr_SC); //查询
- Stuff_data.Fill(logindataTable); //查询结果存入缓存
+ user_data.Fill(logindataTable); //查询结果存入缓存
conn_SC.Close(); //关闭连接
User.ItemsSource = logindataTable.DefaultView; //数据加入表格
diff --git a/MainWindow.xaml b/MainWindow.xaml
index 2dd11ad..c2502ec 100644
--- a/MainWindow.xaml
+++ b/MainWindow.xaml
@@ -12,35 +12,33 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
-
-
-
-
+
+
+
+
-
+
diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs
index 04bcb0b..0aca606 100644
--- a/MainWindow.xaml.cs
+++ b/MainWindow.xaml.cs
@@ -31,7 +31,8 @@ namespace formula_manage
/// MainWindow.xaml 的交互逻辑
///
public partial class MainWindow : Window
- {
+ {
+ bool quit = false;
DataTable STUFFdataTable = new DataTable(); //建立STUFF缓存
DataTable MACHINEdataTable = new DataTable(); //建立Machine缓存
@@ -55,13 +56,26 @@ namespace formula_manage
USER.Text = App.USER_Purview;
- sql_();//查询stuff表
-
- //bindDataGridDatas
- //SelectionList = STUFFdataTable;
- // Grid_RRODUCT.ItemsSource
+ if(USER.Text =="ENGINEER") //工程师允许功能
+ {
+ _SQL.IsEnabled = true;
+ _SQLBAK.IsEnabled = true;
+ _SOFTWARE_SET.IsEnabled = true;
+ _USER_SET.IsEnabled = true;
+ _RECIPE.IsEnabled = true;
+ _PROCESS.IsEnabled = true;
+ _WORKFLOW.IsEnabled = true;
+ _MAC_SET.IsEnabled=true;
+ _STUFF.IsEnabled = true;
+ _fabric.IsEnabled = true;
+ _variety.IsEnabled = true;
+ _client.IsEnabled = true;
+ _color.IsEnabled = true;
+ _statistics.IsEnabled = true;
+ }
- //Grid_RRODUCT.ItemsSource = STUFFdataTable.DefaultView; //new ObservableCollection();
+ sql_();//查询stuff表
+ Permissions_(); //权限管理
CountDown();//执行循环方法
@@ -132,17 +146,89 @@ namespace formula_manage
Machine.ItemsSource = MACHINEdataTable.DefaultView; // MACHINEdataTable数据集传递到ComboBox:machine
}
- private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) //窗口关闭事件
+ private async void Permissions_()
+ {
+ DataTable logindataTable = new DataTable(); //建立login缓存
+ SqlConnection conn_SC = new SqlConnection(Connstr_SC);
+ string user_sql = "SELECT UserCode ,PassWord ,UserSetup ,Capacity ,GROUP_CODE ,Note FROM [Dispensing].[dbo].[UserAccount] WHERE Capacity != 0";//查询语句
+
+ try
+ {
+ await conn_SC.OpenAsync(); //打开数据连接
+ SqlDataAdapter Stuff_data = new SqlDataAdapter(user_sql, Connstr_SC); //查询
+
+ Stuff_data.Fill(logindataTable); //查询结果存入缓存
+ conn_SC.Close(); //关闭连接
+ }
+ catch (Exception)
+ {
+ System.Windows.MessageBox.Show("请求信息失败,检查连接");
+ return;
+ }
+
+ string var_POWERUSER = "[UserCode]='" + USER.Text + "' and [GROUP_CODE] ='POWERUSER '"; //查询字符
+ string var_CHIEF = "[UserCode]='" + USER.Text + "' and [GROUP_CODE] ='CHIEF '"; //查询字符
+
+ var CHIEF = logindataTable.Select(var_CHIEF).FirstOrDefault(); //查询账号信息是否正确,不正确返回null
+
+ if (CHIEF != null)
+ {
+ _SQL.IsEnabled = true;
+ _SQLBAK.IsEnabled = true;
+ _SOFTWARE_SET.IsEnabled = true;
+ _USER_SET.IsEnabled = true;
+ _RECIPE.IsEnabled = true;
+ _PROCESS.IsEnabled = true;
+ _WORKFLOW.IsEnabled = true;
+ _MAC_SET.IsEnabled = true;
+ _STUFF.IsEnabled = true;
+ _fabric.IsEnabled = true;
+ _variety.IsEnabled = true;
+ _client.IsEnabled = true;
+ _color.IsEnabled = true;
+ _statistics.IsEnabled = true;
+ }
+ else
+ {
+ var POWERUSER = logindataTable.Select(var_POWERUSER).FirstOrDefault(); //查询账号信息是否正确,不正确返回null
+ if (POWERUSER != null)
+ {
+ _SQLBAK.IsEnabled = true;
+ _RECIPE.IsEnabled = true;
+ _PROCESS.IsEnabled = true;
+ _WORKFLOW.IsEnabled = true;
+ _MAC_SET.IsEnabled = true;
+ _STUFF.IsEnabled = true;
+ _fabric.IsEnabled = true;
+ _variety.IsEnabled = true;
+ _client.IsEnabled = true;
+ _color.IsEnabled = true;
+ _statistics.IsEnabled = true;
+ }
+ }
+ }
+
+ private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) //窗口关闭事件
{
string logpath = System.Environment.CurrentDirectory + "\\Log";//日志文件目录
string logPath = "" + System.Environment.CurrentDirectory + "\\Log\\Log.txt";//日志文件
string Log_time = "[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "]:";
+ if (!quit)
+ {
+ MessageBoxResult result = System.Windows.MessageBox.Show("您确定要退出吗?", "SUNLIGHT", MessageBoxButton.OKCancel, MessageBoxImage.None, MessageBoxResult.Cancel);
+
+ if (result == MessageBoxResult.Cancel) //判断是否确认
+ {
+ e.Cancel = true; // 中断点击事件
+ }
+ }
+
System.IO.DirectoryInfo log = new System.IO.DirectoryInfo(@logpath);//生成日志文件目录
FileStream fs = new FileStream(logPath, FileMode.Append, FileAccess.Write);
StreamWriter wr = new StreamWriter(fs);//创建文件
wr.WriteLine(Log_time + "FORMULA_STOP");
- wr.Close();
+ wr.Close();
}
private DispatcherTimer disTimer = new DispatcherTimer();//循环功能
@@ -171,7 +257,7 @@ namespace formula_manage
string Prepose; //料单前置
string PreposeT; //料单时间
bool Loginprint;
- bool Loginanew;
+ bool Loginanew;
private void Window_MIN(object sender, RoutedEventArgs e)
{
@@ -201,6 +287,15 @@ namespace formula_manage
e.Handled = !re.IsMatch(e.Text) ;
}
+ private void logout(object sender, RoutedEventArgs e)
+ {
+ quit=true;
+ Window window = Window.GetWindow(this);
+ Login login = new Login();
+ window.Close();
+ login.ShowDialog();//实例化并置顶打开登录窗口
+ }
+
private void SQL(object sender, RoutedEventArgs e)
{
System.Windows.MessageBox.Show("进入数据库设置请您明确操作目的及可能需承担的后果", "警告");
@@ -247,11 +342,45 @@ namespace formula_manage
stuff.ShowDialog();//实例化并置顶打开设置窗口
}
+ private void RECIPE(object sender, RoutedEventArgs e)
+ {
+
+ }
+
+ private void PROCESS(object sender, RoutedEventArgs e)
+ {
+
+ }
+
+ private void WORKFLOW(object sender, RoutedEventArgs e)
+ {
+
+ }
+
private void print(object sender, RoutedEventArgs e)
{
}
+ private void fabric(object sender, RoutedEventArgs e)
+ {
+
+ }
+
+ private void variety(object sender, RoutedEventArgs e)
+ {
+
+ }
+
+ private void color(object sender, RoutedEventArgs e)
+ {
+
+ }
+
+ private void client(object sender, RoutedEventArgs e)
+ {
+
+ }
private void confirm(object sender, RoutedEventArgs e)
{
diff --git a/Windows/APP_set.xaml.cs b/Windows/APP_set.xaml.cs
index b112f19..7adb080 100644
--- a/Windows/APP_set.xaml.cs
+++ b/Windows/APP_set.xaml.cs
@@ -33,6 +33,8 @@ namespace formula_manage.Windows
string Log_time = "[" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "]:";
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) //窗口关闭事件
{
+ MessageBoxResult result = System.Windows.MessageBox.Show("设置完成后请重启程序","提示", MessageBoxButton.OKCancel, MessageBoxImage.None, MessageBoxResult.Cancel);
+
UserClass.IniFile.IniFiles Configini = new UserClass.IniFile.IniFiles(INIPath);
Configini.IniWritevalue("SOFTWARE_SET", " L1", Loginlink.ToString());
Configini.IniWritevalue("SOFTWARE_SET", " L2", Loginprint.ToString());