diff --git a/EpdBase/EpdBase.cpp b/EpdBase/EpdBase.cpp
index 1286abf..89c4e25 100644
--- a/EpdBase/EpdBase.cpp
+++ b/EpdBase/EpdBase.cpp
@@ -419,7 +419,7 @@ WORD EpdBase::Epd2U::DeIssue()
Sleep(1000);// Versie < .. Commit & Sleep
}
- if (CommitRV) { EndSession(0x16, 12); Commit(); }// Continuous high tone for 1.2 seconds
+ if (CommitRV) { EndSession(EndSessionControl, 12); Commit(); }// Continuous high tone for 1.2 seconds
else
{
FlushBuffers(port);
@@ -455,7 +455,8 @@ WORD EpdBase::Epd2U::Issue()
}
if (OKRV) {
- EndSession(0x16, 12);
+
+ EndSession(EndSessionControl, 12);
Commit();
} // Continuous high tone for 1.2 seconds
else
diff --git a/EpdBase/EpdBase.h b/EpdBase/EpdBase.h
index a3b634a..dde4b99 100644
--- a/EpdBase/EpdBase.h
+++ b/EpdBase/EpdBase.h
@@ -16,7 +16,9 @@ namespace EpdBase
DWORD DeviceIDs[10];
DWORD CurrentDeviceID;
- WORD AlarmCtrl = 0b01111110;
+ //WORD AlarmCtrl = 0b01111110;
+ WORD AlarmCtrl = 0b01111010; // NO sound
+ WORD EndSessionControl = 0b00010010;
BYTE displayConfig[56] = { 0,0,1,1,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 };
diff --git a/EpdBaseClr/EpdBaseClr.cpp b/EpdBaseClr/EpdBaseClr.cpp
index 93b40ea..f678a88 100644
--- a/EpdBaseClr/EpdBaseClr.cpp
+++ b/EpdBaseClr/EpdBaseClr.cpp
@@ -107,7 +107,7 @@ int EpdBaseClr::Epd2::GetStatus()
HardVersion = epd->HardVersion;
SoftVersion = epd->SoftVersion;
FunctionFlags = epd->FunctionFlags;
-
+ CountsClock = epd->EpdClock;
DecodeStatus();
return StatusRV;
}
@@ -256,6 +256,7 @@ int EpdBaseClr::Epd2::ReadTresholds()
BC = epd->BC;
FB = epd->FB;
HG = epd->HG;
+
return rv;
}
@@ -271,6 +272,7 @@ int EpdBaseClr::Epd2::ReadExtraStatus()
D3 = epd->D3 - epd->BaseD3;
D4 = epd->D4 - epd->BaseD4;
CountsClock = epd->CountsClock;
+ CountsClockBase = epd->BaseCountsClock;
return rv;
}
\ No newline at end of file
diff --git a/EpdBaseClr/EpdBaseClr.h b/EpdBaseClr/EpdBaseClr.h
index 5a81ff3..146b6a7 100644
--- a/EpdBaseClr/EpdBaseClr.h
+++ b/EpdBaseClr/EpdBaseClr.h
@@ -75,7 +75,7 @@ namespace EpdBaseClr {
int HG;
int QualityData;
- unsigned int D1, D2, D3, D4, CountsClock;
+ unsigned int D1, D2, D3, D4, CountsClock, CountsClockBase;
int epdType;
int alarmStatus ;
diff --git a/RegisterBAdge/RegisterBAdge.csproj b/RegisterBAdge/RegisterBAdge.csproj
index d691483..6fe79d9 100644
--- a/RegisterBAdge/RegisterBAdge.csproj
+++ b/RegisterBAdge/RegisterBAdge.csproj
@@ -14,6 +14,21 @@
4
true
true
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
AnyCPU
@@ -97,5 +112,17 @@
+
+
+ False
+ Microsoft .NET Framework 4.7.2 %28x86 and x64%29
+ true
+
+
+ False
+ .NET Framework 3.5 SP1
+ false
+
+
\ No newline at end of file
diff --git a/eDosStation/DataInterface.cs b/eDosStation/DataInterface.cs
index 95a67ff..b077cf4 100644
--- a/eDosStation/DataInterface.cs
+++ b/eDosStation/DataInterface.cs
@@ -164,7 +164,7 @@ namespace eDosStation
pa = new System.Data.SqlClient.SqlParameter("Inst_CODE", SqlDbType.Int, 4); VisitInitCommand.Parameters.Add(pa);
pa = new System.Data.SqlClient.SqlParameter("EPD_InternalID", SqlDbType.Int, 4); VisitInitCommand.Parameters.Add(pa);
pa = new System.Data.SqlClient.SqlParameter("isBG", SqlDbType.Bit, 4); VisitInitCommand.Parameters.Add(pa);
- pa = new System.Data.SqlClient.SqlParameter("ENTRY_EPD_CLOCK", SqlDbType.Int, 4); VisitInitCommand.Parameters.Add(pa);
+ pa = new System.Data.SqlClient.SqlParameter("ENTRY_EPD_CLOCK", SqlDbType.Decimal, 9); VisitInitCommand.Parameters.Add(pa);
pa = new System.Data.SqlClient.SqlParameter("EPDVisitID", SqlDbType.Int, 4); pa.Direction = ParameterDirection.Output; VisitInitCommand.Parameters.Add(pa);
VisitExitCommand = new SqlCommand("VisitExit", localConnection);
@@ -197,7 +197,9 @@ namespace eDosStation
pa = new System.Data.SqlClient.SqlParameter("otherAlarms", SqlDbType.Int); VisitExitCommand.Parameters.Add(pa);
pa = new System.Data.SqlClient.SqlParameter("errorStatus", SqlDbType.Int); VisitExitCommand.Parameters.Add(pa);
pa = new System.Data.SqlClient.SqlParameter("operatingStatus", SqlDbType.Int); VisitExitCommand.Parameters.Add(pa);
- pa = new System.Data.SqlClient.SqlParameter("EXIT_EPD_CLOCK", SqlDbType.Int, 4); VisitExitCommand.Parameters.Add(pa);
+ pa = new System.Data.SqlClient.SqlParameter("ENTRY_EPD_CLOCK", SqlDbType.Decimal, 9); VisitExitCommand.Parameters.Add(pa);
+ pa = new System.Data.SqlClient.SqlParameter("EXIT_EPD_CLOCK", SqlDbType.Decimal, 9); VisitExitCommand.Parameters.Add(pa);
+ pa = new System.Data.SqlClient.SqlParameter("PersID", SqlDbType.Int, 4); VisitExitCommand.Parameters.Add(pa);
}
public void VisitExit(int EpdVisitID, EpdBaseClr.Epd2 ep)
@@ -242,8 +244,14 @@ namespace eDosStation
VisitExitCommand.Parameters["otherAlarms"].Value = ep.otherAlarms;
VisitExitCommand.Parameters["errorStatus"].Value = ep.errorStatus;
VisitExitCommand.Parameters["operatingStatus"].Value = ep.operatingStatus;
+ VisitExitCommand.Parameters["ENTRY_EPD_CLOCK"].Value = ep.CountsClockBase;
VisitExitCommand.Parameters["EXIT_EPD_CLOCK"].Value = ep.CountsClock;
+ if (int.TryParse(ep.WearerName, out int WearerPersID))
+ VisitExitCommand.Parameters["PersID"].Value = WearerPersID;
+ else
+ VisitExitCommand.Parameters["PersID"].Value = DBNull.Value;
+
checkCon(true);
VisitExitCommand.Connection = localConnection;
VisitExitCommand.ExecuteNonQuery();
diff --git a/eDosStation/EpdExit.xaml.cs b/eDosStation/EpdExit.xaml.cs
index e035e55..ed46059 100644
--- a/eDosStation/EpdExit.xaml.cs
+++ b/eDosStation/EpdExit.xaml.cs
@@ -52,7 +52,6 @@ namespace eDosStation
private void LoadDoses()
{
-
if (dispatcherTimer == null)
{
dispatcherTimer = new DispatcherTimer();
diff --git a/eDosStation/eDosStation.csproj b/eDosStation/eDosStation.csproj
index 14fdf5b..19fcc40 100644
--- a/eDosStation/eDosStation.csproj
+++ b/eDosStation/eDosStation.csproj
@@ -89,10 +89,31 @@
http://timestamp.digicert.com
+
+ ..\packages\SharpDX.2.5.0\lib\net40\SharpDX.dll
+
+
+ ..\packages\SharpDX.D3DCompiler.2.5.0\lib\net40\SharpDX.D3DCompiler.dll
+
+
+ ..\packages\SharpDX.Direct2D1.2.5.0\lib\net40\SharpDX.Direct2D1.dll
+
+
+ ..\packages\SharpDX.Direct3D10.2.5.0\lib\net40\SharpDX.Direct3D10.dll
+
+
+ ..\packages\SharpDX.Direct3D9.2.5.0\lib\net40\SharpDX.Direct3D9.dll
+
+
+ ..\packages\SharpDX.DXGI.2.5.0\lib\net40\SharpDX.DXGI.dll
+
+
+
+
@@ -102,25 +123,17 @@
4.0
-
- ..\lib\RCWPF\2019.1.116.45\Telerik.Windows.Controls.dll
- True
+
+ ..\packages\Telerik.Windows.Controls.for.Wpf.Xaml.2021.1.325\lib\net45\Telerik.Windows.Controls.dll
-
- ..\lib\RCWPF\2019.1.116.45\Telerik.Windows.Controls.Data.dll
- True
+
+ ..\packages\Telerik.Windows.Controls.GridView.for.Wpf.Xaml.2021.1.325\lib\net45\Telerik.Windows.Controls.GridView.dll
-
- ..\lib\RCWPF\2019.1.116.45\Telerik.Windows.Controls.GridView.dll
- True
+
+ ..\packages\Telerik.Windows.Controls.Input.for.Wpf.Xaml.2021.1.325\lib\net45\Telerik.Windows.Controls.Input.dll
-
- ..\lib\RCWPF\2019.1.116.45\Telerik.Windows.Controls.Input.dll
- True
-
-
- ..\lib\RCWPF\2019.1.116.45\Telerik.Windows.Data.dll
- True
+
+ ..\packages\Telerik.Windows.Data.for.Wpf.Xaml.2021.1.325\lib\net45\Telerik.Windows.Data.dll
False
diff --git a/eDosStation/packages.config b/eDosStation/packages.config
index 6f60d56..357fdca 100644
--- a/eDosStation/packages.config
+++ b/eDosStation/packages.config
@@ -2,4 +2,14 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/syncEdosLocal/App.Debug.config b/syncEdosLocal/App.Debug.config
index 33cdd92..3a5ee3e 100644
--- a/syncEdosLocal/App.Debug.config
+++ b/syncEdosLocal/App.Debug.config
@@ -2,9 +2,10 @@
-
+
+
\ No newline at end of file
diff --git a/syncEdosLocal/App.config b/syncEdosLocal/App.config
index 12b8fff..2f74ea5 100644
--- a/syncEdosLocal/App.config
+++ b/syncEdosLocal/App.config
@@ -3,13 +3,13 @@
-
-
+
+
@@ -17,6 +17,6 @@
-
+
diff --git a/syncEdosLocal/DataSet1.Designer.cs b/syncEdosLocal/DataSet1.Designer.cs
index 013cda5..d6d1c91 100644
--- a/syncEdosLocal/DataSet1.Designer.cs
+++ b/syncEdosLocal/DataSet1.Designer.cs
@@ -4568,6 +4568,7 @@ namespace syncEdosLocal.DataSet1TableAdapters {
this._adapter.UpdateCommand.Connection = this.Connection;
this._adapter.UpdateCommand.CommandText = "export.VisitsUpdate";
this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.StoredProcedure;
+ this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ID_Station", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "ID_Station", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ID_Visit", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "ID_Visit", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@syncedEntry", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, "syncedEntry", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
@@ -4856,8 +4857,8 @@ namespace syncEdosLocal.DataSet1TableAdapters {
this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isAlarmCleared", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, "isAlarmCleared", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isManualExit", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, "isManualExit", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ID_Station_Return", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "ID_Station_Return", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
- this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ENTRY_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 5, global::System.Data.ParameterDirection.Input, 4, 0, "ENTRY_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
- this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@EXIT_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 5, global::System.Data.ParameterDirection.Input, 4, 0, "EXIT_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+ this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ENTRY_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 9, global::System.Data.ParameterDirection.Input, 10, 0, "ENTRY_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+ this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@EXIT_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 9, global::System.Data.ParameterDirection.Input, 10, 0, "EXIT_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@TIME_LOST", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "TIME_LOST", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand();
this._adapter.UpdateCommand.Connection = this.Connection;
@@ -4902,8 +4903,8 @@ namespace syncEdosLocal.DataSet1TableAdapters {
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isAlarmCleared", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, "isAlarmCleared", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@isManualExit", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, "isManualExit", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ID_Station_Return", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "ID_Station_Return", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
- this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ENTRY_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 5, global::System.Data.ParameterDirection.Input, 4, 0, "ENTRY_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
- this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@EXIT_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 5, global::System.Data.ParameterDirection.Input, 4, 0, "EXIT_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+ this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ENTRY_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 9, global::System.Data.ParameterDirection.Input, 10, 0, "ENTRY_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+ this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@EXIT_EPD_CLOCK", global::System.Data.SqlDbType.Decimal, 9, global::System.Data.ParameterDirection.Input, 10, 0, "EXIT_EPD_CLOCK", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@TIME_LOST", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 10, 0, "TIME_LOST", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
}
diff --git a/syncEdosLocal/DataSet1.xsd b/syncEdosLocal/DataSet1.xsd
index cdb5fa7..a31175e 100644
--- a/syncEdosLocal/DataSet1.xsd
+++ b/syncEdosLocal/DataSet1.xsd
@@ -20,9 +20,10 @@
-
+
export.VisitsUpdate
+
@@ -127,8 +128,8 @@
-
-
+
+
@@ -186,8 +187,8 @@
-
-
+
+
@@ -251,7 +252,7 @@
-
+
@@ -301,7 +302,7 @@
-
+
diff --git a/syncEdosLocal/DataSet1.xss b/syncEdosLocal/DataSet1.xss
index 6b0434d..fdc3479 100644
--- a/syncEdosLocal/DataSet1.xss
+++ b/syncEdosLocal/DataSet1.xss
@@ -6,8 +6,8 @@
-->
-
-
+
+
\ No newline at end of file
diff --git a/syncEdosLocal/Program.cs b/syncEdosLocal/Program.cs
index e398cc2..cb1dbe8 100644
--- a/syncEdosLocal/Program.cs
+++ b/syncEdosLocal/Program.cs
@@ -185,7 +185,6 @@ namespace syncEdosLocal
spLog = new spl("SynceDosLocal");
Bulker = new LSWLib.Bulker(spLog, true);
messages = Bulker.messages;
-
messages.AppendLine(spLog.GetStartInfoString());
try
{
@@ -224,7 +223,7 @@ namespace syncEdosLocal
m.Subject = "SynceDosLocal " + (error ? "Error" : "No errors") + (warning ? " Warnings" : "");
m.IsBodyHtml = true;
m.Body = Bulker.htmlLog.ToString();
- using (var mc = new System.Net.Mail.SmtpClient(smtpServer)) mc.Send(m);
+ using (var mc = new System.Net.Mail.SmtpClient(smtpServer)) { mc.Port = 26; mc.Send(m); }
}
spLog.CloseSplunkLog();
}
@@ -252,12 +251,14 @@ namespace syncEdosLocal
if (cr == null)
{
VisitsNew++; copyrow(lr, ds.CentralVisits);
+ if ((lr.VisitStatus & 1) > 0) lr.syncedEntry = true;
+ if ((lr.VisitStatus & 2) > 0) lr.syncedExit = true;
}
else switch (cr.VisitStatus)
{
case 3: lr.syncedEntry = lr.syncedExit = true; VisitsSkipped++; break;
- case 1: if ((lr.VisitStatus & 2) == 2) { copyExit(lr, cr); lr.syncedExit = true; VisitsAddedExits++; } break;
- case 2: if ((lr.VisitStatus & 1) == 1) { copyEntry(lr, cr); lr.syncedEntry = true; VisitsAddedEntries++; } break;
+ case 1: if ((lr.VisitStatus & 2) == 2) { copyExit(lr, cr); lr.syncedEntry=lr.syncedExit = true; VisitsAddedExits++; } break;
+ case 2: if ((lr.VisitStatus & 1) == 1) { copyEntry(lr, cr); lr.syncedEntry=lr.syncedExit= true; VisitsAddedEntries++; } break;
}
}
ta.Update(ds.LocalVisits);
@@ -313,6 +314,7 @@ namespace syncEdosLocal
cr["operatingStatus"] = lr["operatingStatus"];
cr["isAlarm"] = lr["isAlarm"];
cr["isAlarmCleared"] = lr["isAlarmCleared"];
+ cr["ENTRY_EPD_CLOCK"] = lr["ENTRY_EPD_CLOCK"];
cr["EXIT_EPD_CLOCK"] = lr["EXIT_EPD_CLOCK"];
cr["TIME_LOST"] = lr["TIME_LOST"];
}
@@ -328,5 +330,4 @@ namespace syncEdosLocal
spLog.Connection_InfoMessageLog(e, ref messages);
}
}
-
}