Passage d'un timer en heure supplémentaire si hors des plages horaires de travail
This commit is contained in:
@@ -90,6 +90,18 @@ class TimerController extends AbstractController
|
|||||||
$end = \DateTime::createFromFormat('D M d Y H:i:s e+',$request->request->get('end'));
|
$end = \DateTime::createFromFormat('D M d Y H:i:s e+',$request->request->get('end'));
|
||||||
$duration = new \DateTime(date("H:i:s", ($request->request->get('duration')/1000)));
|
$duration = new \DateTime(date("H:i:s", ($request->request->get('duration')/1000)));
|
||||||
$duration->sub(new \DateInterval('PT1H'));
|
$duration->sub(new \DateInterval('PT1H'));
|
||||||
|
$activepenalty = $request->request->get('activepenalty');
|
||||||
|
$additionalhour= $request->request->get('additionalhour');
|
||||||
|
|
||||||
|
$officeworkstart = clone $start;
|
||||||
|
$officeworkend = clone $officeworkstart;
|
||||||
|
$officeworkstart->SetTime(9,0,0);
|
||||||
|
$officeworkend->SetTime(17,30,0);
|
||||||
|
if ($start < $officeworkstart || $end > $officeworkend) {
|
||||||
|
$timer->setAdditionalHour(true);
|
||||||
|
}else{
|
||||||
|
$timer->setAdditionalHour($additionalhour);
|
||||||
|
}
|
||||||
|
|
||||||
$timer = new Entity();
|
$timer = new Entity();
|
||||||
$timer->setUser($user);
|
$timer->setUser($user);
|
||||||
@@ -98,6 +110,7 @@ class TimerController extends AbstractController
|
|||||||
$timer->setEnd($end);
|
$timer->setEnd($end);
|
||||||
$timer->setDuration($duration);
|
$timer->setDuration($duration);
|
||||||
$timer->setDescription($description);
|
$timer->setDescription($description);
|
||||||
|
$timer->setActivePenalty($activepenalty);
|
||||||
$em->persist($timer);
|
$em->persist($timer);
|
||||||
$em->flush();
|
$em->flush();
|
||||||
|
|
||||||
@@ -127,6 +140,20 @@ class TimerController extends AbstractController
|
|||||||
if ($form->get('submit')->isClicked() && $form->isValid()) {
|
if ($form->get('submit')->isClicked() && $form->isValid()) {
|
||||||
$data = $form->getData();
|
$data = $form->getData();
|
||||||
$data->setUser($user);
|
$data->setUser($user);
|
||||||
|
|
||||||
|
$start = $data->getStart();
|
||||||
|
$end = $data->getEnd();
|
||||||
|
$additionalhour = $data->getAdditionalHour();
|
||||||
|
|
||||||
|
$officeworkstart = clone $start;
|
||||||
|
$officeworkend = clone $officeworkstart;
|
||||||
|
$officeworkstart->SetTime(9,0,0);
|
||||||
|
$officeworkend->SetTime(17,30,0);
|
||||||
|
if ($start < $officeworkstart || $end > $officeworkend) {
|
||||||
|
$data->setAdditionalHour(true);
|
||||||
|
}else{
|
||||||
|
$data->setAdditionalHour($additionalhour);
|
||||||
|
}
|
||||||
$em->persist($data);
|
$em->persist($data);
|
||||||
$em->flush();
|
$em->flush();
|
||||||
|
|
||||||
@@ -222,8 +249,8 @@ class TimerController extends AbstractController
|
|||||||
$tbtimer["id"] = $timer->getId();
|
$tbtimer["id"] = $timer->getId();
|
||||||
$tbtimer["taskname"] = $timer->getTask()->getDisplayname();
|
$tbtimer["taskname"] = $timer->getTask()->getDisplayname();
|
||||||
$tbtimer["user"] = $timer->getUser()->getUsername();
|
$tbtimer["user"] = $timer->getUser()->getUsername();
|
||||||
$tbtimer["start"] = $timer->getId();
|
$tbtimer["start"] = $timer->getStart()->format("Y-m-d H:i");
|
||||||
$tbtimer["end"] = $timer->getId();
|
$tbtimer["end"] = $timer->getEnd()->format("Y-m-d H:i");
|
||||||
$tbtimer["duration"] = $timer->getDuration();
|
$tbtimer["duration"] = $timer->getDuration();
|
||||||
$tbtimer["activepenalty"] = $timer->getActivePenalty();
|
$tbtimer["activepenalty"] = $timer->getActivePenalty();
|
||||||
$tbtimer["additionalhour"] = $timer->getAdditionalHour();
|
$tbtimer["additionalhour"] = $timer->getAdditionalHour();
|
||||||
|
@@ -593,22 +593,12 @@ class ValidationController extends AbstractController
|
|||||||
->getQuery()->getResult();
|
->getQuery()->getResult();
|
||||||
foreach($timers as $timer) {
|
foreach($timers as $timer) {
|
||||||
|
|
||||||
$tbtimer["id"] = $timer->getId();
|
|
||||||
$tbtimer["taskname"] = $timer->getTask()->getDisplayname();
|
|
||||||
$tbtimer["user"] = $timer->getUser()->getUsername();
|
|
||||||
$tbtimer["start"] = $timer->getId();
|
|
||||||
$tbtimer["end"] = $timer->getId();
|
|
||||||
$tbtimer["duration"] = $timer->getDuration();
|
|
||||||
$tbtimer["activepenalty"] = $timer->getActivePenalty();
|
|
||||||
$tbtimer["additionalhour"] = $timer->getAdditionalHour();
|
|
||||||
$tbtimer["description"] = $timer->getDescription();
|
|
||||||
|
|
||||||
$tbtimer = [
|
$tbtimer = [
|
||||||
"id"=>$timer->getId(),
|
"id"=>$timer->getId(),
|
||||||
"taskname"=>$timer->getTask()->getDisplayname(),
|
"taskname"=>$timer->getTask()->getDisplayname(),
|
||||||
"user"=>$timer->getUser()->getUsername(),
|
"user"=>$timer->getUser()->getUsername(),
|
||||||
"start"=>$timer->getId(),
|
"start"=>$timer->getStart()->format("Y-m-d H:i"),
|
||||||
"end"=>$timer->getId(),
|
"end"=>$timer->getEnd()->format("Y-m-d H:i"),
|
||||||
"duration"=>$timer->getDuration(),
|
"duration"=>$timer->getDuration(),
|
||||||
"activepenalty"=>$timer->getActivePenalty(),
|
"activepenalty"=>$timer->getActivePenalty(),
|
||||||
"additionalhour"=>$timer->getAdditionalHour(),
|
"additionalhour"=>$timer->getAdditionalHour(),
|
||||||
|
@@ -56,8 +56,13 @@ SUIVI HORAIRE
|
|||||||
<tr>
|
<tr>
|
||||||
<td>{{ timer.task.displayname }}</td>
|
<td>{{ timer.task.displayname }}</td>
|
||||||
<td>
|
<td>
|
||||||
<span class="font-weight-bold">{{ timer.activepenalty ? "Astreinte active" : "" }}</span>
|
<span class="font-weight-bold">
|
||||||
<span class="font-weight-bold">{{ timer.additionalhour ? "Heures supplémentaires" : "" }}</span>
|
|
||||||
|
{{ timer.activepenalty ? "<i class='fa fa-exclamation' style='color:red;opacity: 0.33;'></i> Astreinte active" : "" }}
|
||||||
|
</span>
|
||||||
|
<span class="font-weight-bold">
|
||||||
|
{{ timer.additionalhour ? "<i class='fa fa-exclamation-triangle' style='color:red;opacity: 0.33;'></i> Heures supplémentaires" : "" }}
|
||||||
|
</span>
|
||||||
<p>{{ timer.description }}</p>
|
<p>{{ timer.description }}</p>
|
||||||
</td>
|
</td>
|
||||||
<td>{{ timer.start|date("d/m/Y H:i") }}</td>
|
<td>{{ timer.start|date("d/m/Y H:i") }}</td>
|
||||||
|
@@ -68,8 +68,12 @@
|
|||||||
{{ timer.taskname }}
|
{{ timer.taskname }}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<span class="font-weight-bold">{{ timer.activepenalty ? "Astreinte active" : "" }}</span>
|
<span class="font-weight-bold">
|
||||||
<span class="font-weight-bold">{{ timer.additionalhour ? "Heures supplémentaires" : "" }}</span>
|
{{ timer.activepenalty ? "<i class='fa fa-exclamation' style='color:red;opacity: 0.33;'></i> Astreinte active" : "" }}
|
||||||
|
</span>
|
||||||
|
<span class="font-weight-bold">
|
||||||
|
{{ timer.additionalhour ? "<i class='fa fa-exclamation-triangle' style='color:red;opacity: 0.33;'></i> Heures supplémentaires" : "" }}
|
||||||
|
</span>
|
||||||
<p>{{ timer.description }}</p>
|
<p>{{ timer.description }}</p>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
Reference in New Issue
Block a user