From fbe7f261706537dacd86f72e3c2e58853fb59855 Mon Sep 17 00:00:00 2001 From: Luc Vandenbroucke Date: Wed, 23 Jun 2021 11:49:38 +0200 Subject: [PATCH] check user --- SetupProject1/Product.wxs | 2 +- eDosStation/About.xaml | 12 +++++++- eDosStation/About.xaml.cs | 8 ++++-- eDosStation/EntryBadge.xaml.cs | 9 ++++-- eDosStation/Properties/AssemblyInfo.cs | 4 +-- syncEdosLocal/Program.cs | 38 +++++++++++++++++++++----- 6 files changed, 57 insertions(+), 16 deletions(-) diff --git a/SetupProject1/Product.wxs b/SetupProject1/Product.wxs index 8b284d7..3378882 100644 --- a/SetupProject1/Product.wxs +++ b/SetupProject1/Product.wxs @@ -3,7 +3,7 @@ - + diff --git a/eDosStation/About.xaml b/eDosStation/About.xaml index 875cfd2..3174dea 100644 --- a/eDosStation/About.xaml +++ b/eDosStation/About.xaml @@ -6,7 +6,7 @@ xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" xmlns:local="clr-namespace:eDosStation" mc:Ignorable="d" - Title="About" Height="600" Width="800" FontFamily="Segoe UI" + Title="About" Height="658.389" Width="800" FontFamily="Segoe UI" WindowStartupLocation="CenterScreen" WindowStyle="SingleBorderWindow" WindowState="Normal" > @@ -48,6 +48,16 @@ + + + Local sql alias + + + + + + + Check users quiz diff --git a/eDosStation/About.xaml.cs b/eDosStation/About.xaml.cs index 2c29525..9a61df9 100644 --- a/eDosStation/About.xaml.cs +++ b/eDosStation/About.xaml.cs @@ -36,8 +36,12 @@ namespace eDosStation private void ReadAlias() { - RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\WOW6432Node\\Microsoft\\MSSQLServer\\Client\\ConnectTo"); - remoteSql.Text= key.GetValue("eDos").ToString(); + using (RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\WOW6432Node\\Microsoft\\MSSQLServer\\Client\\ConnectTo",false)) + { + remoteSql.Text = key.GetValue("eDos").ToString(); + localSql.Text = key.GetValue("eDosLocal").ToString(); + } + } } } diff --git a/eDosStation/EntryBadge.xaml.cs b/eDosStation/EntryBadge.xaml.cs index c3672b7..f84508b 100644 --- a/eDosStation/EntryBadge.xaml.cs +++ b/eDosStation/EntryBadge.xaml.cs @@ -552,9 +552,12 @@ namespace eDosStation exceeded = (((DataSet1.GetTaskInfoRow)o.Row).MarginExceeded); } if (_User == null) { TaskOK.Content = "Badge"; TaskOK.Tag = "B"; } - else if (_User.AccessAllow != true) { TaskOK.Content = "No Access"; TaskOK.Tag = "A"; } - else if (_User.VisitIDLocked >0 ) { TaskOK.Content = "Locked"; TaskOK.Tag = "L"; } - else if (exceeded == true) { TaskOK.Content = "No Margin"; TaskOK.Tag = "M"; } + else if (!_User.AllOk) + { + if (_User.AccessAllow != true) { TaskOK.Content = "No Access"; TaskOK.Tag = "A"; } + else if (_User.VisitIDLocked > 0) { TaskOK.Content = "Locked"; TaskOK.Tag = "L"; } + else if (exceeded == true) { TaskOK.Content = "No Margin"; TaskOK.Tag = "M"; } + } else { TaskOK.Content = "OK"; TaskOK.Tag = "O"; diff --git a/eDosStation/Properties/AssemblyInfo.cs b/eDosStation/Properties/AssemblyInfo.cs index f823916..e0b9afa 100644 --- a/eDosStation/Properties/AssemblyInfo.cs +++ b/eDosStation/Properties/AssemblyInfo.cs @@ -51,5 +51,5 @@ using System.Windows; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("2.1.0.0")] -[assembly: AssemblyFileVersion("2.1.0.0")] +[assembly: AssemblyVersion("2.2.0.0")] +[assembly: AssemblyFileVersion("2.2.0.0")] diff --git a/syncEdosLocal/Program.cs b/syncEdosLocal/Program.cs index e91523e..afae9eb 100644 --- a/syncEdosLocal/Program.cs +++ b/syncEdosLocal/Program.cs @@ -267,25 +267,49 @@ namespace syncEdosLocal } static void Main(string[] args) { - //Sync need both - var SourceCoStr = System.Configuration.ConfigurationManager.ConnectionStrings["eDosConnectionString"].ConnectionString; - var LocalCoStr = System.Configuration.ConfigurationManager.ConnectionStrings["LocalConnectionString"].ConnectionString; spLog = new spl("SynceDosLocal"); Bulker = new LSWLib.Bulker(spLog, true); messages = Bulker.messages; messages.AppendLine(spLog.GetStartInfoString()); + + + //Sync need both + var SourceCoStr = new SqlConnectionStringBuilder(System.Configuration.ConfigurationManager.ConnectionStrings["eDosConnectionString"].ConnectionString); + var LocalCoStr = new SqlConnectionStringBuilder(System.Configuration.ConfigurationManager.ConnectionStrings["LocalConnectionString"].ConnectionString); + + SourceCoStr.TrustServerCertificate = LocalCoStr.TrustServerCertificate= true; + SourceCoStr.ApplicationName = LocalCoStr.ApplicationName = "eDosSync"; + SourceCoStr.WorkstationID = LocalCoStr.WorkstationID = Environment.MachineName; + + string reDos = string.Empty; + string reDosLocal = string.Empty; try { - using (System.Data.SqlClient.SqlConnection eDosLocalCon = new SqlConnection(LocalCoStr)) + using (var key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\\WOW6432Node\\Microsoft\\MSSQLServer\\Client\\ConnectTo")) + { + reDos = key.GetValue("eDos").ToString(); + reDosLocal = key.GetValue("eDos").ToString(); + } + } catch (System.Exception ex) + { + spLog.setErrorException(ex); + spLog.WriteSplunkLog("init", spLog.splunkSeverity, null, spLog.splunkError); + messages.AppendLine($"Error reading reg key"); + } + messages.AppendLine($"Remote {SourceCoStr.DataSource} db {SourceCoStr.InitialCatalog} Logon= { SourceCoStr.UserID} alias:{ reDos }"); + messages.AppendLine($"Local {LocalCoStr.DataSource} db {LocalCoStr.InitialCatalog} Logon= { LocalCoStr.UserID} alias:{ reDosLocal }"); + + try + { + using (System.Data.SqlClient.SqlConnection eDosLocalCon = new SqlConnection(LocalCoStr.ConnectionString)) { - eDosLocalCon.Open(); int? StationID = Bulker.SqlCommands.ExecProcScalar("Get Station ID", eDosLocalCon, "GetID_LocalStation", true, ref error) as int?; Result = new cResult(StationID, eDosLocalCon, spLog); - using (System.Data.SqlClient.SqlConnection eDosCon = new SqlConnection(SourceCoStr)) + using (System.Data.SqlClient.SqlConnection eDosCon = new SqlConnection(SourceCoStr.ConnectionString)) { eDosCon.InfoMessage += Connection_InfoMessage; - DoorloopToDo(eDosCon, LocalCoStr, iMessage, ref error, ref warning, ref messages); + DoorloopToDo(eDosCon, LocalCoStr.ConnectionString, iMessage, ref error, ref warning, ref messages); DoorloopVisits(eDosLocalCon, eDosCon, Bulker.spLog, ref error); } Result.Write();