diff --git a/src/app/action/controllers/ExternalSignatoryBookTrait.php b/src/app/action/controllers/ExternalSignatoryBookTrait.php index f05c32182695129e0a1b3db5db0a9d255691548c..c1ae10ea885ff28e0e3b77779eb06ec5cc2c131e 100644 --- a/src/app/action/controllers/ExternalSignatoryBookTrait.php +++ b/src/app/action/controllers/ExternalSignatoryBookTrait.php @@ -13,11 +13,13 @@ namespace Action\controllers; use Attachment\models\AttachmentModel; +use Entity\models\ListInstanceModel; use ExternalSignatoryBook\controllers\MaarchParapheurController; use ExternalSignatoryBook\controllers\XParaphController; use Resource\models\ResModel; use SrcCore\models\CoreConfigModel; use SrcCore\models\ValidatorModel; +use User\models\UserModel; trait ExternalSignatoryBookTrait { @@ -106,11 +108,28 @@ trait ExternalSignatoryBookTrait $document = ResModel::getById(['resId' => $args['resId'], 'select' => ['status']]); if ($document['status'] == 'EVIS' || $document['status'] == 'ESIG') { - // $sequence = $circuit_visa->getCurrentStep($res_id, $coll_id, 'VISA_CIRCUIT'); - $stepDetails = array(); - // $stepDetails = $circuit_visa->getStepDetails($res_id, $coll_id, 'VISA_CIRCUIT', $sequence); + $stepDetails = ListInstanceModel::getCurrentStepByResId(['resId' => $args['resId']]); - // $message = $circuit_visa->processVisaWorkflow(['stepDetails' => $stepDetails, 'res_id' => $res_id]); + if (!empty($stepDetails) && $stepDetails['item_id'] != $GLOBALS['userId']) { + ListInstanceModel::update([ + 'set' => ['process_date' => 'CURRENT_TIMESTAMP'], + 'where' => ['listinstance_id = ?', 'item_mode = ?', 'res_id = ?', 'item_id = ?', 'difflist_type = ?'], + 'data' => [$stepDetails['listinstance_id'], $stepDetails['item_mode'], $args['resId'], $stepDetails['item_id'], 'VISA_CIRCUIT'] + ]); + + $currentUserInfo = UserModel::getByLogin(['login' => $GLOBALS['userId'], 'select' => ['firstname', 'lastname']]); + $visaUserInfo = UserModel::getByLogin(['login' => $stepDetails['item_id'], 'select' => ['firstname', 'lastname']]); + + $historyInfo = ' ' . _VISA_BY . ' ' . $currentUserInfo['firstname'] . ' ' . $currentUserInfo['lastname'] . ' ' . _INSTEAD_OF . ' ' . $visaUserInfo['firstname'] . ' ' . $visaUserInfo['lastname']; + } elseif (!empty($stepDetails)) { + ListInstanceModel::update([ + 'set' => ['process_date' => 'CURRENT_TIMESTAMP'], + 'where' => ['listinstance_id = ?', 'item_mode = ?', 'res_id = ?', 'item_id = ?', 'difflist_type = ?'], + 'data' => [$stepDetails['listinstance_id'], $stepDetails['item_mode'], $args['resId'], $GLOBALS['userId'], 'VISA_CIRCUIT'] + ]); + + $historyInfo = ''; + } } } diff --git a/src/core/lang/lang-en.php b/src/core/lang/lang-en.php index f4a3bc098374811113eb634c106b1bc5ec9210ae..4fd58e549fdec667fe1c9d552ce6f073c6a7d227 100755 --- a/src/core/lang/lang-en.php +++ b/src/core/lang/lang-en.php @@ -479,3 +479,5 @@ define("_SEND_SHIPPING", "Send a mailpiece"); define("_VIEW_DOCUMENTS_WITH_NOTES", "View mail with notes"); define("_VIEW_DOCUMENTS_WITH_NOTES_DESC", "View attachment of 'document_with_notes' type"); +define('_VISA_BY', 'Visa by'); +define('_INSTEAD_OF', 'Instead of'); diff --git a/src/core/lang/lang-fr.php b/src/core/lang/lang-fr.php index a62249bb8e569e11b71723d57cffda32ba180e77..cb447bee6eadd0f805f0750a1a1733839d881fbf 100755 --- a/src/core/lang/lang-fr.php +++ b/src/core/lang/lang-fr.php @@ -479,3 +479,5 @@ define("_SEND_SHIPPING", "Envoyer un pli postal"); define("_VIEW_DOCUMENTS_WITH_NOTES", "Voir les courriers annotés"); define("_VIEW_DOCUMENTS_WITH_NOTES_DESC", "Voir les pièces jointes de type 'Document annoté'"); +define('_VISA_BY', 'Visa par'); +define('_INSTEAD_OF', 'à la place de'); diff --git a/src/core/lang/lang-nl.php b/src/core/lang/lang-nl.php index 56603f2748a2a6457586416619ed37bc5022cf9a..fc80aad267d67c7f5cd27e2667ab3be372a5a8e5 100644 --- a/src/core/lang/lang-nl.php +++ b/src/core/lang/lang-nl.php @@ -481,3 +481,5 @@ define("_SEND_SHIPPING", "Send a mailpiece_TO_TRANSLATE"); define("_VIEW_DOCUMENTS_WITH_NOTES", "View mail with notes_TO_TRANSLATE"); define("_VIEW_DOCUMENTS_WITH_NOTES_DESC", "View attachment of 'document_with_notes' type_TO_TRANSLATE"); +define('_VISA_BY', 'Goedkeuring door'); +define('_INSTEAD_OF', 'in plaats van');