From dca069faf4b93831ec8c115d946e2fe09946dd80 Mon Sep 17 00:00:00 2001 From: Ralf Tessari Date: Mon, 15 Jan 2024 21:13:35 +0100 Subject: [PATCH 1/4] =?UTF-8?q?Test=C3=A4nderung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/AdminDienste.php | 73 ++++++++++++++++++++++++++++++++++++++----- html/SQL.php | 11 ++++--- 2 files changed, 72 insertions(+), 12 deletions(-) diff --git a/html/AdminDienste.php b/html/AdminDienste.php index 1a0ad71..33e4170 100644 --- a/html/AdminDienste.php +++ b/html/AdminDienste.php @@ -83,13 +83,42 @@ if (isset($_POST['ChangeSchicht'])) { ChangeSchicht($db_link, $SchichtID, $Von, $Bis, $Soll); } +if (isset($_POST['Schicht-Automatic-Bis'])) { + $AutomaticBis = 1; +} +else { + $AutomaticBis = 0; +} + +if (isset($_POST['Schicht-Anschlussschicht'])) { + $Anschlussschicht = 1; +} +else { + $Anschlussschicht = 0; +} + +echo "*".$AutomaticBis."*"; if (isset($_POST['NewSchicht'])) { $Von = $_POST['Schicht-Von']; $Bis = $_POST['Schicht-Bis']; $Soll = $_POST['Schicht-Soll']; + $Dauer = $_POST['Schicht-Dauer']; - NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll); + if($AutomaticBis){ + $Temp = new DateTime($Von); + //$Temp2 = DateInterval::createFromDateString('3600 seconds'); + $Temp2 = DateInterval::createFromDateString($Dauer[0].$Dauer[1].' hours '.$Dauer[3].$Dauer[4].' minutes'); + + $Temp = $Temp->add($Temp2); + $Bis = $Temp->format('Y-m-d H:i:s'); + + } + $db_erg = NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll,$Dauer); + while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) { + $SchichtID == $zeile['SchichtID']; + echo "+".$SchichtID."+"; + } } @@ -145,12 +174,14 @@ while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) { echo ""; } else { echo ""; + $Was = $zeile['Was']; $Wo = $zeile['Wo']; $Info = $zeile['Info']; $Leiter = $zeile['Leiter']; $Gruppe = $zeile['ElternDienstID']; $HelferLevel = $zeile['HelferLevel']; + } } @@ -243,7 +274,7 @@ echo "

+ + Endzeit von Dauer
+ + Endzeit von Dauer
+ + + + Anschlussschicht vorbereiten
+ + Anschlussschicht vorbereiten
+ + +


+

diff --git a/html/SQL.php b/html/SQL.php index 8c0ea31..aad40d3 100644 --- a/html/SQL.php +++ b/html/SQL.php @@ -627,7 +627,7 @@ function GetSchichtenEinesDienstes($db_link, $DienstID) //$sql = "SELECT SchichtID,Von,Bis,Soll,DATE_FORMAT(Von,'%a %H:%i') AS TagVon FROM Schicht where DienstID=".$DienstID; - $sql = "SELECT SchichtID,Von,Bis,Soll,DATE_FORMAT(Von,'%a %H:%i') AS TagVon, DATE_FORMAT(Von,'%H:%i') AS ZeitVon, DATE_FORMAT(Bis,'%H:%i') AS ZeitBis FROM Schicht where DienstID=" . $DienstID; + $sql = "SELECT SchichtID,Von,Bis,Soll,DATE_FORMAT(Von,'%a %H:%i') AS TagVon, DATE_FORMAT(Von,'%H:%i') AS ZeitVon, DATE_FORMAT(Bis,'%H:%i') AS ZeitBis, DATE_FORMAT(Dauer,'%H:%i') AS Dauer FROM Schicht where DienstID=" . $DienstID; $db_erg = mysqli_query($db_link, $sql); if (! $db_erg) { echo "GetSchichtenEinesDienstes ungueltige Abfrage"; @@ -655,7 +655,7 @@ function ChangeSchicht($db_link, $SchichtID, $Von, $Bis, $Soll) } } -function NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll) +function NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll, $Dauer) { $DienstID = mysqli_real_escape_string($db_link, $DienstID); @@ -675,18 +675,19 @@ function NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll) return Null; } */ - $sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll) values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ")"; - + //$sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll, Dauer) values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ",'" . $Dauer . "')"; + $sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll, Dauer) OUTPUT Inserted.SchichtID values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ",'" . $Dauer . "')"; $db_erg = mysqli_query($db_link, $sql); if (! $db_erg) { echo "Keine Schicht erstellt"; - //echo $sql; + echo $sql; error_log(date('Y-m-d H:i') . " NeueSchicht: $HelferName konnte Schicht nicht angelegt mit $sql \n", 3, LOGFILE); $err = mysqli_error($db_link); die('Ungueltige Abfrage: ' . $err); } else { //TODO: DienstID aufloesen error_log(date('Y-m-d H:i') . " NeueSchicht: $HelferName hat Schicht angelegt mit DienstID $DienstID, Von $Von Bis $Bis Soll $Soll \n", 3, LOGFILE); + return $db_erg; } } From 356162394c687af6853a367fdfc9fad1e174adbd Mon Sep 17 00:00:00 2001 From: Ralf Tessari Date: Mon, 15 Jan 2024 21:21:50 +0100 Subject: [PATCH 2/4] zweiter test --- html/SQL.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/html/SQL.php b/html/SQL.php index aad40d3..53e82f9 100644 --- a/html/SQL.php +++ b/html/SQL.php @@ -676,7 +676,7 @@ function NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll, $Dauer) } */ //$sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll, Dauer) values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ",'" . $Dauer . "')"; - $sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll, Dauer) OUTPUT Inserted.SchichtID values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ",'" . $Dauer . "')"; + $sql = "INSERT INTO Schicht (DienstID, Von, Bis, Soll, Dauer) values ('" . $DienstID . "','" . $Von . "','" . $Bis . "'," . $Soll . ",'" . $Dauer . "')"; $db_erg = mysqli_query($db_link, $sql); if (! $db_erg) { echo "Keine Schicht erstellt"; @@ -686,8 +686,7 @@ function NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll, $Dauer) die('Ungueltige Abfrage: ' . $err); } else { //TODO: DienstID aufloesen - error_log(date('Y-m-d H:i') . " NeueSchicht: $HelferName hat Schicht angelegt mit DienstID $DienstID, Von $Von Bis $Bis Soll $Soll \n", 3, LOGFILE); - return $db_erg; + error_log(date('Y-m-d H:i') . " NeueSchicht: $HelferName hat Schicht angelegt mit DienstID $DienstID, Von $Von Bis $Bis Soll $Soll \n", 3, LOGFILE); } } From 6ce4acc0dc9d7cc18361c75deb17d54c1b47a9ba Mon Sep 17 00:00:00 2001 From: Ralf Tessari Date: Tue, 16 Jan 2024 18:02:20 +0100 Subject: [PATCH 3/4] Dauer und Anschlussschicht beim Anlegen von Schichten Bugfix nach dem Anlegen einer Schicht oder Dienstes bleibt das Auswahlfeld auf der Neuen Schicht oder dem Neuen Dienst --- html/AdminDienste.php | 35 ++++++++++++++++++++++------------- html/SQL.php | 17 +++++++++++++++-- 2 files changed, 37 insertions(+), 15 deletions(-) diff --git a/html/AdminDienste.php b/html/AdminDienste.php index 33e4170..e76b8f5 100644 --- a/html/AdminDienste.php +++ b/html/AdminDienste.php @@ -30,6 +30,7 @@ if ($AdminStatus != 1) { DatenbankAufDeutsch($db_link); $DienstID = $_SESSION["DienstID"]; +$NewDienstID = 0; $SchichtID = $_SESSION["SchichtID"]; @@ -65,6 +66,7 @@ if (isset($_POST['NewDienst'])) { $Gruppe = $_POST['Dienst-Gruppe']; $HelferLevel = $_POST['HelferLevel']; NewDienst($db_link, $DienstID, $Was, $Wo, $Info, $Leiter, $Gruppe, $HelferLevel); + $NewDienstID = LastInsertId($db_link); } @@ -79,8 +81,9 @@ if (isset($_POST['ChangeSchicht'])) { $Von = $_POST['Schicht-Von']; $Bis = $_POST['Schicht-Bis']; $Soll = $_POST['Schicht-Soll']; + $Dauer = $_POST['Schicht-Dauer']; - ChangeSchicht($db_link, $SchichtID, $Von, $Bis, $Soll); + ChangeSchicht($db_link, $SchichtID, $Von, $Bis, $Soll, $Dauer); } if (isset($_POST['Schicht-Automatic-Bis'])) { @@ -97,7 +100,7 @@ else { $Anschlussschicht = 0; } -echo "*".$AutomaticBis."*"; + if (isset($_POST['NewSchicht'])) { $Von = $_POST['Schicht-Von']; @@ -114,11 +117,9 @@ if (isset($_POST['NewSchicht'])) { $Bis = $Temp->format('Y-m-d H:i:s'); } - $db_erg = NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll,$Dauer); - while ($zeile = mysqli_fetch_array($db_erg, MYSQLI_ASSOC)) { - $SchichtID == $zeile['SchichtID']; - echo "+".$SchichtID."+"; - } + NewSchicht($db_link, $DienstID, $Von, $Bis, $Soll,$Dauer); + $SchichtID = LastInsertId($db_link); + //echo "+".$SchichtID."+"; } @@ -126,15 +127,18 @@ if (isset($_POST['DeleteSchicht'])) { if (!DeleteSchicht($db_link, $SchichtID, false)) { echo "Erst Helfer aus Schicht austragen
"; } + $SchichtID = 0; } if (isset($_POST['ShowSchicht'])) { $SchichtID = $_POST['SchichtSearch']; + } -if (isset($_POST['SchichtSearch'])) { +if (isset($_POST['SchichtSearch']) && !isset($_POST['NewSchicht']) && !isset($_POST['DeleteSchicht'])) { $SchichtID = $_POST['SchichtSearch']; + echo "SchichtSearch
"; } if (isset($_POST['ShowSchichten'])) { @@ -147,7 +151,10 @@ if (isset($_POST['DienstSearch'])) { } - +if($NewDienstID != 0) +{ + $DienstID = $NewDienstID; +} // Dienste Anzeigen //////////////////////////////////////////////////////// @@ -240,13 +247,13 @@ echo "