void HandelNfcScan(string _read) { if (!_NoConnectionMode) { _TimerCleanUserInfoScreen.Stop(); NetCom.ServerRequestTekenInOfUit request = new NetCom.ServerRequestTekenInOfUit(); request.NFCCode = _read; NetCom.ServerResponse response; try { response = webbbbrrrrrry(request); } catch { //if (MessageBox.Show("Kan Niet Verbinden Met Server", "Ga Naar Alarm Modus?", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)==DialogResult.Yes) { enableNoConnectionMode(); // } else { // this.BackColor=Color.Yellow; //} return; } this.BackColor = SystemColors.Control; if (response.IsErrorOccurred) { MessageBox.Show(response.ErrorInfo.ErrorMessage); } else { NetCom.ServerResponseInteken intekenResponse = JsonConvert.DeserializeObject <NetCom.ServerResponseInteken>(JsonConvert.SerializeObject(response.Response)); labelNaam.Text = intekenResponse.TheUserWithEntryInfo.UsE.VoorNaam + " " + intekenResponse.TheUserWithEntryInfo.UsE.AchterNaam; if (intekenResponse.uitekenengeanuleerd) { labelInOfUitGetekend.Text = "Uitekenen Geanuleerd"; } if (intekenResponse.ingetekened) { labelInOfUitGetekend.Text = "Je Bent Nu Ingetekend"; } if (intekenResponse.uitgetekened) { labelInOfUitGetekend.Text = "Je Bent Nu Uitgetekend"; } _TimerCleanUserInfoScreen.Start(); updateOverzight(); } } }
public static NetCom.ServerResponseInteken inteken(DBDingus.AcountTableEntry _userAcount, NetCom.ServerRequestTekenInOfUit _request) { NetCom.ServerResponseInteken toReturn = new NetCom.ServerResponseInteken(); SqlCommand command; //get userID of scan command = new SqlCommand(); command.Parameters.AddWithValue("@nfcode", _request.NFCCode); command.CommandText = $"select * from {DBDingus.UserTableNames.UserTableName} where {DBDingus.UserTableNames.NFCID} = @nfcode"; List <DBDingus.UserTableTableEntry> foundUsers = FuncsVSQL.GetListUTFromReader(command); //_DBDingus.GetListUTFromReader(FuncsVSQL.SQLQuery(command)); if (foundUsers.Count > 0) { toReturn.TheUserWithEntryInfo.UsE = foundUsers[0]; } else { throw new Exception("Card Unknown"); } //inteken/uiteken command = new SqlCommand(); command.Parameters.AddWithValue("@userid", toReturn.TheUserWithEntryInfo.UsE.ID); if (_request.DateIsToday) { command.CommandText = $"select * from {DBDingus.RegistratieTableNames.RegistratieTableName} where {DBDingus.RegistratieTableNames.IDOfUserRelated} = @userid and {DBDingus.RegistratieTableNames.Date} = cast(getdate() as date)"; } else { command.CommandText = $"select * from {DBDingus.RegistratieTableNames.RegistratieTableName} where {DBDingus.RegistratieTableNames.IDOfUserRelated} = @userid and {DBDingus.RegistratieTableNames.Date} = cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date)"; } List <DBDingus.RegistratieTableTableEntry> _existingRegEntry = FuncsVSQL.GetListRTFromReader(command); //_DBDingus.GetListRTFromReader(FuncsVSQL.SQLQuery(command)); DBDingus.RegistratieTableTableEntry existingRegEntry; command = new SqlCommand(); if (_existingRegEntry.Count > 0) { // edit existingRegEntry = _existingRegEntry[0]; existingRegEntry.IsLaat = false; existingRegEntry.Verwachtetijdvanaanwezighijd = new TimeSpan(); command.Parameters.AddWithValue("@id", existingRegEntry.ID); if (existingRegEntry.HeeftIngetekend) { if (existingRegEntry.IsAanwezig) { //update teken uit cast('{_Request.deEntry.Date.ToString("yyyy\\/MM\\/dd")} toReturn.uitgetekened = true; if (_request.DateIsToday) { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.TimeUitteken} = cast(getdate() as time), {DBDingus.RegistratieTableNames.IsAanwezig} = 0 ,{DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast(getdate() as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } else { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.TimeUitteken} = cast(getdate() as time), {DBDingus.RegistratieTableNames.IsAanwezig} = 0 ,{DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } } else { //update anuleer uitteken toReturn.uitekenengeanuleerd = true; if (_request.DateIsToday) { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.IsAanwezig} = 1, {DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast(getdate() as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } else { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.IsAanwezig} = 1, {DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } } } else { //update inteken toReturn.ingetekened = true; if (_request.DateIsToday) { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.HeeftIngetekend} = 1, {DBDingus.RegistratieTableNames.TimeInteken} = cast(getdate() as time), {DBDingus.RegistratieTableNames.IsAanwezig} = 1, {DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast(getdate() as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } else { command.CommandText = $"update {DBDingus.RegistratieTableNames.RegistratieTableName} set {DBDingus.RegistratieTableNames.HeeftIngetekend} = 1, {DBDingus.RegistratieTableNames.TimeInteken} = cast(getdate() as time), {DBDingus.RegistratieTableNames.IsAanwezig} = 1, {DBDingus.RegistratieTableNames.IsLaat} = 0 where {DBDingus.RegistratieTableNames.Date} = cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date) and {DBDingus.RegistratieTableNames.IDOfUserRelated} = {toReturn.TheUserWithEntryInfo.UsE.ID}"; } } } else { //new //inteken command.Parameters.AddWithValue("@relatedUserId", foundUsers[0].ID); toReturn.ingetekened = true; if (_request.DateIsToday) { command.CommandText = $"insert into {DBDingus.RegistratieTableNames.RegistratieTableName} ({DBDingus.RegistratieTableNames.IDOfUserRelated},{DBDingus.RegistratieTableNames.Date},{DBDingus.RegistratieTableNames.TimeInteken},{DBDingus.RegistratieTableNames.HeeftIngetekend},{DBDingus.RegistratieTableNames.IsAanwezig},{DBDingus.RegistratieTableNames.IsZiek},{DBDingus.RegistratieTableNames.IsFlexibelverlof},{DBDingus.RegistratieTableNames.IsStudieverlof},{DBDingus.RegistratieTableNames.IsExcursie},{DBDingus.RegistratieTableNames.IsLaat},{DBDingus.RegistratieTableNames.IsToegestaanAfwezig},{DBDingus.RegistratieTableNames.Opmerking},{DBDingus.RegistratieTableNames.Verwachtetijdvanaanwezighijd}) values (@relatedUserId, cast(getdate() as date), cast(getdate() as time), 1,1,0,0,0,0,0,0,'','')"; } else { command.CommandText = $"insert into {DBDingus.RegistratieTableNames.RegistratieTableName} ({DBDingus.RegistratieTableNames.IDOfUserRelated},{DBDingus.RegistratieTableNames.Date},{DBDingus.RegistratieTableNames.TimeInteken},{DBDingus.RegistratieTableNames.HeeftIngetekend},{DBDingus.RegistratieTableNames.IsAanwezig},{DBDingus.RegistratieTableNames.IsZiek},{DBDingus.RegistratieTableNames.IsFlexibelverlof},{DBDingus.RegistratieTableNames.IsStudieverlof},{DBDingus.RegistratieTableNames.IsExcursie},{DBDingus.RegistratieTableNames.IsLaat},{DBDingus.RegistratieTableNames.IsToegestaanAfwezig},{DBDingus.RegistratieTableNames.Opmerking},{DBDingus.RegistratieTableNames.Verwachtetijdvanaanwezighijd}) values (@relatedUserId, cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date), cast(getdate() as time), 1,1,0,0,0,0,0,0,'','')"; } } FuncsVSQL.SQLNonQuery(command); command = new SqlCommand(); command.Parameters.AddWithValue("@userid", toReturn.TheUserWithEntryInfo.UsE.ID); if (_request.DateIsToday) { command.CommandText = $"select * from {DBDingus.RegistratieTableNames.RegistratieTableName} where {DBDingus.RegistratieTableNames.IDOfUserRelated} = @userid and {DBDingus.RegistratieTableNames.Date} = cast(getdate() as date)"; } else { command.CommandText = $"select * from {DBDingus.RegistratieTableNames.RegistratieTableName} where {DBDingus.RegistratieTableNames.IDOfUserRelated} = @userid and {DBDingus.RegistratieTableNames.Date} = cast('{_request.Date.ToString("yyyy\\/MM\\/dd")}' as date)"; } List <DBDingus.RegistratieTableTableEntry> endResult = FuncsVSQL.GetListRTFromReader(command); //_DBDingus.GetListRTFromReader(FuncsVSQL.SQLQuery(command)); toReturn.TheUserWithEntryInfo.HasTodayRegEntry = true; toReturn.TheUserWithEntryInfo.RegE = endResult[0]; return(toReturn); }