Merge branch 'bug-14102021/ZeiterfassungZeiteingabeMitternacht' into bug-15417/Zeiterfassung/AnzeigeProjektphasenNachFehler

This commit is contained in:
ma0068
2021-10-15 11:25:00 +02:00
28 changed files with 1694 additions and 1057 deletions
+17 -12
View File
@@ -861,10 +861,11 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
}
else
{
$vonCSV = $datum->formatDatum($data[2], $format='Y-m-d');
$bisCSV = $datum->formatDatum($data[3], $format='Y-m-d');
$vonCSV = $datum->formatDatum($data[2], $format = 'Y-m-d');
$bisCSV = $datum->formatDatum($data[3], $format = 'Y-m-d');
$dateVonCSV = new DateTime($vonCSV);
$dateBisCSV = new DateTime($bisCSV);
$extractHourBis = $datum->formatDatum($data[3], $format = 'H:i:s');
if (!isset($data[5]))
$data[5] = NULL;
@@ -882,6 +883,10 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
{
echo '<span id="triggerPhasenReset" style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich, da keine Zeitaufzeichnung über mehrere Tage erlaubt ist (ausgenommen Dienstreisen).</b></span><br>';
}
elseif ($extractHourBis == '00:00:00')
{
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Bitte Arbeitszeiten gemäß Arbeitsaufzeichnung Leitfaden tagesgenau abgrenzen: Nur Eingaben von 00:00 bis 23:59 erlaubt!</b></span><br>';
}
elseif (empty($data[7]) && !empty($data[6]) && !$projects_of_user->checkProjectInCorrectTime($data[6], $data[2], $data[3]))
{
echo '<span id="triggerPhasenReset" style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich, da angegebenes Anfangs und Enddatum nicht in den Projektzeitrahmen fällt: ('.$data[2].') ('.$data[3].')</b></span><br>';
@@ -932,18 +937,13 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
$verwendung->getVerwendungDatum($data[0],$vonCSV);
foreach ($verwendung->result as $v)
// echo "homeoffice für Tag " . $vonCSV . " ". $v->homeoffice . " " . $v->bisverwendung_id . "<br>";
if ($v->homeoffice)
{
// echo "homeoffice erlaubt <br>";
$zeit->homeoffice = true;
}
else
{
echo '<span style="color:orange"><b>'.$p->t("zeitaufzeichnung/homeofficeNichtErlaubt", ($vonCSV)) .'</b></span><br>';
$zeit->homeoffice = false;
}
}
@@ -1050,8 +1050,8 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
$zeit->uid = $user;
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
$zeit->start = $datum->formatDatum($von, $format='Y-m-d H:i:s');
$zeit->ende = $datum->formatDatum($bis, $format='Y-m-d H:i:s');
$zeit->start = $datum->formatDatum($von, $format = 'Y-m-d H:i:s');
$zeit->ende = $datum->formatDatum($bis, $format = 'Y-m-d H:i:s');
$zeit->beschreibung = $beschreibung;
$zeit->oe_kurzbz_1 = $oe_kurzbz_1;
$zeit->oe_kurzbz_2 = $oe_kurzbz_2;
@@ -1063,6 +1063,7 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
$zeit->service_id = $service_id;
$zeit->kunde_uid = $kunde_uid;
$saveerror = 0;
$extractTimeBis = $datum->formatDatum($bis, $format = 'H:i:s');
if (!$projects_of_user->checkProjectInCorrectTime($projekt_kurzbz, $datum->formatDatum($von, $format='Y-m-d'), $datum->formatDatum($bis, $format='Y-m-d')))
{
@@ -1081,11 +1082,16 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import']))
$saveerror = 1;
}
elseif (abs($von-$bis)>0 && $aktivitaet_kurzbz!="DienstreiseMT")
elseif (abs($von-$bis)>0 && $aktivitaet_kurzbz!="DienstreiseMT" && $extractTimeBis != '00:00:00')
{
echo '<span id="triggerPhasenReset" style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Eingabe nicht möglich, da keine Zeitaufzeichnung über mehrere Tage erlaubt ist (ausgenommen Dienstreisen).</b></span><br>';
$saveerror = 1;
}
elseif ($extractTimeBis == '00:00:00')
{
echo '<span style="color:red"><b>'.$p->t("global/fehlerBeimSpeichernDerDaten").': Bitte Arbeitszeiten gemäß Arbeitsaufzeichnung Leitfaden tagesgenau abgrenzen: Nur Eingaben von 00:00 bis 23:59 erlaubt!</b></span><br>';
$saveerror = 1;
}
elseif (isset($_POST['genPause']) && (isset($_POST['save']) || isset($_POST['edit'])))
{
@@ -1765,7 +1771,6 @@ if ($projekt->getProjekteMitarbeiter($user, true))
}
else
$zeitsperre_text = '';
//var_dump($zs->result);
if (isset($_GET["von_datum"]) && $datum->formatDatum($tag, 'd.m.Y') == $_GET["von_datum"])
$style = 'style="border-top: 3px solid #8DBDD8; border-bottom: 3px solid #8DBDD8"';
@@ -2204,7 +2209,7 @@ function getDataForProjectOverviewCSV($user)
{
if (true)
{
$titel = $prjp->projekt_kurzbz;
$titel = $prjp->projekttitel;
$projekt_kurzbz = $prjp->projekt_kurzbz;
$projekt_phase = $prjp->bezeichnung;
$projekt_phase_id = $prjp->projektphase_id;
@@ -559,9 +559,11 @@ $totalworktimewidth = 13;
$worktimewidth = 14;
$timecolumnswidth = 2 * $daywidth + $totalworktimewidth + $worktimewidth;
if ($nrProjects < 1)//no projekts - merge all cells and write notice
if ($nrProjects < 1) //no projekts - write notice
{
$projektnames[] = "Keine Projekte vorhanden";
$worksheet =& $workbook->addWorksheet('Tabelle');
$worksheet->setInputEncoding('utf-8');
$worksheet->write(0,0,'Für diesen Zeitraum sind keine Projekte zugeordnet');
}
foreach ($projektnames as $projektname)
+5 -3
View File
@@ -104,9 +104,11 @@ if(isset($_GET['show']))
SELECT
distinct on(tbl_frage.frage_id) *, tbl_gebiet.kurzbz as gebiet
FROM
testtool.tbl_frage
JOIN testtool.tbl_ablauf USING(gebiet_id)
JOIN testtool.tbl_frage_sprache USING(frage_id)
testtool.tbl_frage ";
if($stg_kz!='')
$qry.=" JOIN testtool.tbl_ablauf USING(gebiet_id) ";
$qry.=" JOIN testtool.tbl_frage_sprache USING(frage_id)
JOIN testtool.tbl_gebiet USING(gebiet_id)
WHERE
demo=false";
+736 -734
View File
File diff suppressed because it is too large Load Diff