Skip to content
Snippets Groups Projects
Commit d93972fa authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Poursuite

parent efe5e47d
No related branches found
No related tags found
No related merge requests found
Showing with 71 additions and 13 deletions
......@@ -5,6 +5,7 @@ use Application\Entity\Db\Structure;
use Application\Provider\Privilege\AgentPrivileges;
use EntretienProfessionnel\Entity\Db\Campagne;
use EntretienProfessionnel\Provider\Privilege\EntretienproPrivileges;
use EntretienProfessionnel\Provider\Privilege\SursisPrivileges;
/**
* @var Campagne $campagne
......@@ -19,6 +20,10 @@ $canModifierEntretien = $this->isAllowed(EntretienproPrivileges::getResourceId(E
$canHistoriserEntretien = $this->isAllowed(EntretienproPrivileges::getResourceId(EntretienproPrivileges::ENTRETIENPRO_HISTORISER));
$canDetruireEntretien = $this->isAllowed(EntretienproPrivileges::getResourceId(EntretienproPrivileges::ENTRETIENPRO_DETRUIRE));
$canSursisAjouter = $this->isAllowed(SursisPrivileges::getResourceId(SursisPrivileges::SURSIS_AJOUTER));
$canSursisModifier = $this->isAllowed(SursisPrivileges::getResourceId(SursisPrivileges::SURSIS_MODIFIER));
$canSursisSupprimer = $this->isAllowed(SursisPrivileges::getResourceId(SursisPrivileges::SURSIS_SUPPRIMER));
$complete = [];
$encours = [];
$sans = [];
......@@ -149,7 +154,37 @@ foreach ($agents as $agent) {
<tr>
<td> <?php echo $entretien->getAgent()->getDenomination(); ?></td>
<td> <?php echo $entretien->getResponsable()->getDisplayName(); ?> </td>
<td> <?php echo $entretien->getDateEntretien()->format('d/m/Y'); ?> </td>
<td>
<?php $sursis = $entretien->getSursisActive(); ?>
<?php if ($sursis === null) : ?>
<?php echo $entretien->getDateEntretien()->format('d/m/Y'); ?>
<?php if ($canSursisAjouter) : ?>
<a <?php /** @see \EntretienProfessionnel\Controller\SursisController::modifierAction() */ ?>
href="<?php echo $this->url('entretien-professionnel/sursis/ajouter', ['entretien-professionnel' => $entretien->getId()], [], true); ?>"
class="ajax-modal" data-event="modification"
>
<span class="icon sursis"></span></a>
<?php endif; ?>
<?php else : ?>
<span class="texte-sursis" title="<?php echo $sursis->getDescription(); ?>">
<?php echo $sursis->getSursis()->format('d/m/Y'); ?>
</span>
<?php if ($canSursisModifier) : ?>
<a <?php /** @see \EntretienProfessionnel\Controller\SursisController::modifierAction() */ ?>
href="<?php echo $this->url('entretien-professionnel/sursis/modifier', ['sursis' => $sursis->getId()], [], true); ?>"
class="ajax-modal" data-event="modification"
>
<span class="icon sursis"></span></a>
<?php endif; ?>
<?php if ($canSursisSupprimer) : ?>
<a <?php /** @see \EntretienProfessionnel\Controller\SursisController::supprimerAction() */ ?>
href="<?php echo $this->url('entretien-professionnel/sursis/supprimer', ['sursis' => $sursis->getId()], [], true); ?>"
class="ajax-modal" data-event="modification"
>
<span class="icon detruire"></span></a>
<?php endif; ?>
<?php endif; ?>
</td>
<td>
<?php if ($entretien->getValidationResponsable() !== null) : ?>
<span
......@@ -279,6 +314,12 @@ foreach ($agents as $agent) {
</tbody>
</table>
<style>
span.texte-sursis {
color:darkred;
font-style: italic;
}
</style>
<script>
$(function() {
$("body").on("entretien", function (event) {
......
......@@ -124,14 +124,14 @@ return [
],
],
],
'detruire' => [
'supprimer' => [
'type' => Segment::class,
'may_terminate' => true,
'options' => [
'route' => '/detruire/:sursis',
'route' => '/supprimer/:sursis',
'defaults' => [
'controller' => SursisController::class,
'action' => 'detruire',
'action' => 'supprimer',
],
],
],
......
......@@ -32,7 +32,7 @@ class SursisController extends AbstractActionController {
$sursis->setEntretien($entretien);
$form = $this->getSursisForm();
$form->setAttribute('action', $this->url()->fromRoute('sursis/ajouter', ['entretien-professionnel' => $entretien->getId()], [], true));
$form->setAttribute('action', $this->url()->fromRoute('entretien-professionnel/sursis/ajouter', ['entretien-professionnel' => $entretien->getId()], [], true));
$form->bind($sursis);
$request = $this->getRequest();
......@@ -57,7 +57,7 @@ class SursisController extends AbstractActionController {
$sursis = $this->getSursisService()->getRequestedSursis($this);
$form = $this->getSursisForm();
$form->setAttribute('action', $this->url()->fromRoute('sursis/modifier', ['sursis' => $sursis->getId()], [], true));
$form->setAttribute('action', $this->url()->fromRoute('entretien-professionnel/sursis/modifier', ['sursis' => $sursis->getId()], [], true));
$form->bind($sursis);
$request = $this->getRequest();
......@@ -111,7 +111,7 @@ class SursisController extends AbstractActionController {
$vm->setVariables([
'title' => "Suppression d'un sursis",
'text' => "La suppression est définitive êtes-vous sûr&middot;e de vouloir continuer ?",
'action' => $this->url()->fromRoute('entretien-professionnel/default/supprimer', ["sursis" => $sursis->getId()], [], true),
'action' => $this->url()->fromRoute('entretien-professionnel/sursis/supprimer', ["sursis" => $sursis->getId()], [], true),
]);
}
return $vm;
......
......@@ -2,7 +2,7 @@
namespace EntretienProfessionnel\Form\Sursis;
use UnicaenApp\Form\Element\Date;
use Zend\Form\Element\Date;
use Zend\Form\Element\Textarea;
use Zend\Form\Form;
use Zend\InputFilter\Factory;
......@@ -17,6 +17,7 @@ class SursisForm extends Form
'name' => 'date',
'options' => [
'label' => "Fin du sursis * :",
'format' => 'd/m/Y',
],
'attributes' => [
'id' => 'date',
......
......@@ -15,7 +15,7 @@ class SursisHydrator implements HydratorInterface {
public function extract($object)
{
$data = [
'date' => $object->getSursis()->format('Y-m-d'),
'date' => ($object->getSursis())?$object->getSursis()->format('d/m/Y'):null,
'description' => $object->getDescription(),
];
return $data;
......@@ -28,7 +28,7 @@ class SursisHydrator implements HydratorInterface {
*/
public function hydrate(array $data, $object)
{
$date = (isset($data['date']))?DateTime::createFromFormat('Y-m-d', $data['date']):null;
$date = (isset($data['date']))?DateTime::createFromFormat('d/m/Y H:i:s', $data['date']." 23:59:59"):null;
$description = (isset($data['description']) AND trim($data['description']) !== "")?trim($data['description']):null;
$object->setSursis($date);
......
......@@ -23,7 +23,12 @@ $canRenseigner = ($isAgent OR $isConducteur OR $canValiderDrh OR $canVa
$retour = $this->url('entretien-professionnel/renseigner', ['entretien' => $entretien->getId()], ['force_canonical' => false], true);
$now = new DateTime();
$dayAfter = $entretien->getDateEntretien()->add(new DateInterval('P1D'));
$date = DateTime::createFromFormat('d/m/Y à H:i', $entretien->getDateEntretien()->format('d/m/Y à H:i'));
$sursis = $entretien->getSursisActive();
if ($sursis AND $sursis->getSursis() > $entretien->getDateEntretien()) {
$date = DateTime::createFromFormat('d/m/Y à H:i', $entretien->getDateEntretien()->format('d/m/Y à H:i'));
}
$dayAfter = $date->add(new DateInterval('P1D'));
?>
<h2> Formulaire d'entretien </h2>
......
......@@ -14,7 +14,13 @@ $canHistoriserObservation = true;
$canDetruireObservation = true;
$now = new DateTime();
$entretien7 = $entretien->getDateEntretien()->add(new DateInterval('P7D'));
$date = DateTime::createFromFormat('d/m/Y à H:i', $entretien->getDateEntretien()->format('d/m/Y à H:i'));
$entretien7 = $date->add(new DateInterval('P7D'));
$sursis = $entretien->getSursisActive();
if ($sursis AND $sursis->getSursis() > $entretien->getDateEntretien()) {
$entretien7 = $sursis->getSursis()->add(new DateInterval('P7D'));
}
?>
<h2> Observation lié à l'entretien professionnel</h2>
......
......@@ -41,7 +41,12 @@ $options['retour'] = $this->url('entretien-professionnel/renseigner', ['entretie
$DEBUG = false;
$now = new DateTime();
$dayAfter = $entretien->getDateEntretien()->add(new DateInterval('P1D'));
$date = DateTime::createFromFormat('d/m/Y à H:i', $entretien->getDateEntretien()->format('d/m/Y à H:i'));
$sursis = $entretien->getSursisActive();
if ($sursis AND $sursis->getSursis() > $entretien->getDateEntretien()) {
$date = DateTime::createFromFormat('d/m/Y à H:i', $entretien->getDateEntretien()->format('d/m/Y à H:i'));
}
$dayAfter = $date->add(new DateInterval('P1D'));
?>
<?php if ($DEBUG) : ?>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment