Commit 6bc9f51a authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

- Ajout du context métier pour les signatures (utilisation dans le système de...

 - Ajout du context métier pour les signatures (utilisation dans le système de rappel pour le sujet et le corps du mail)
 - Model : Ajout de 2 champs dans l'objet Signature
 - Commande de rappel en cours
parent 492b3d18
Loading
Loading
Loading
Loading
+1 −1
Changes for src/Controller/InternalLetterfileController.php: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ class InternalLetterfileController extends AbstractActionController
            $waitingVisa = $signatureRecipient->getSignature()->getStatus() == Signature::STATUS_SIGNATURE_WAIT;

            if ( !$signatureRecipient->requireSignFromEmail($this->getInternalLetterfileService()->getSignatureConfigurationService()->getCurrentUserMail()) ){
                $this->flash()->addErrorMessage("Ce document a déjà été validé. Merci.");
                $this->flash()->addErrorMessage("Ce document n'est pas disponible.");
                return $this->redirect()->toRoute('unicaen-signature/my-documents');
            }

+1 −0
Changes for src/Entity/Db/ProcessStep.php: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -160,6 +160,7 @@ class ProcessStep
            'order' => $this->getOrder(),
            'status' => $this->getStatus(),
            'status_text' => $this->getStatusText(),
            'allSignToComplete' => $this->getSignature()->getAllSignToComplete(),
            'recipients' => $recipients,
            'observers' => $observers
        ];
+38 −0
Changes for src/Entity/Db/Signature.php: 38 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -166,6 +166,22 @@ class Signature
     */
    private string $document_localkey;

    /**
     * Clef permettant d'identifier le document côté application
     *
     * @var string
     * @ORM\Column (type="string", length=255, options={"default":""})
     */
    private string $context_short = "";

    /**
     * Clef permettant d'identifier le document côté application
     *
     * @var string
     * @ORM\Column (type="text", options={"default":""})
     */
    private string $context_long = "";

    /**
     * Clef permettant d'identifier le parapheur
     *
@@ -255,6 +271,28 @@ class Signature
        return $this;
    }

    public function getContextShort(): string
    {
        return $this->context_short;
    }

    public function setContextShort(string $context_short): self
    {
        $this->context_short = $context_short;
        return $this;
    }

    public function getContextLong(): string
    {
        return $this->context_long;
    }

    public function setContextLong(string $context_long): self
    {
        $this->context_long = $context_long;
        return $this;
    }

    /**
     * @return bool
     */
+7 −2
Changes for src/Entity/Db/SignatureRecipient.php: 7 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -56,7 +56,7 @@ class SignatureRecipient
     * @var ?DateTime
     * @ORM\Column(type="datetime", nullable=true)
     */
    private ?DateTime $dateUpdate;
    private ?DateTime $dateUpdate = null;

    /**
     * Date d'accomplissement
@@ -64,7 +64,7 @@ class SignatureRecipient
     * @var ?DateTime
     * @ORM\Column(type="datetime", nullable=true)
     */
    private ?DateTime $dateFinished;
    private ?DateTime $dateFinished = null;

    /**
     * Clef interne d'accès
@@ -306,6 +306,11 @@ class SignatureRecipient
        return $this->getStatus() == Signature::STATUS_SIGNATURE_REJECT;
    }

    public function isNotifiable() :bool
    {
        return $this->getStatus() == Signature::STATUS_SIGNATURE_WAIT;
    }

    /**
     * Retourne true
     * @param string $email
+6 −0
Changes for src/Service/ProcessService.php: 6 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -181,12 +181,16 @@ class ProcessService
        $process->setDateCreated(new \DateTime())
            ->setStatus(Signature::STATUS_SIGNATURE_DRAFT);



        foreach ($jsonDatas['steps'] as $stepData) {
            $signatureFlowStep = $signatureFlow->getStepAtOrder($stepData['order']);

            // Création des étapes
            $processStep = new ProcessStep();
            $this->getObjectManager()->persist($processStep);


            $processStep->setSignatureFlowStep($signatureFlowStep);
            $processStep->setProcess($process);
            $process->getSteps()->add($processStep);
@@ -198,6 +202,8 @@ class ProcessService
                ->setStatus(Signature::STATUS_SIGNATURE_DRAFT)
                ->setDateCreated(new \DateTime())
                ->setLabel($process->getLabel() . ' - ' . $stepData['label'])
                ->setContextShort($stepData['context_subject'] ?? "")
                ->setContextLong($stepData['context_body'] ?? "")
                ->setDescription($stepData['description'])
                ->setAllSignToComplete($stepData['allSignToComplete'])
                ->setNotificationsRecipients($signatureFlowStep->isNotificationsRecipients())
Loading