From 11db71eff3e8cd0f67414decfac7299358b4d7a8 Mon Sep 17 00:00:00 2001 From: Henry Jordan Date: Thu, 4 Nov 2021 22:20:05 +0000 Subject: [PATCH] PMCORE-3182 --- workflow/engine/methods/cases/open.php | 7 +++++++ workflow/engine/templates/cases/open.js | 24 ++++++++++++++++-------- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/workflow/engine/methods/cases/open.php b/workflow/engine/methods/cases/open.php index c30ea1c4b..8cbab67af 100644 --- a/workflow/engine/methods/cases/open.php +++ b/workflow/engine/methods/cases/open.php @@ -16,6 +16,7 @@ use ProcessMaker\BusinessModel\Cases as BmCases; use ProcessMaker\BusinessModel\ProcessSupervisor; +use ProcessMaker\Core\System; $tBarGmail = false; if (isset($_GET['gmail']) && $_GET['gmail'] == 1) { @@ -157,6 +158,7 @@ if ($isBpmn && $viewSummaryForm && $isNoEmpty) { } /*----------------------------------********---------------------------------*/ +$pmDynaform = new PmDynaform(); $step = new Step(); $step = $step->loadByProcessTaskPosition($case['PRO_UID'], $case['TAS_UID'], 1); $headPublisher->assign('uri', $script . $uri); @@ -171,6 +173,11 @@ $headPublisher->assign('appStatus', $case['APP_STATUS']); $headPublisher->assign('tbarGmail', $tBarGmail); $headPublisher->assign('showCustomForm', $showCustomForm); $headPublisher->assign('canClaimCase', $canClaimCase); +$headPublisher->assign('_CREDENTIALS', G::json_encode($pmDynaform->getCredentials())); +$headPublisher->assign('_SERVER', System::getHttpServerHostnameRequestsFrontEnd()); +$headPublisher->assign('_WORKSPACE', config("system.workspace")); +$headPublisher->assign('_DEL_INDEX_DELEGATE', $delIndex); +$headPublisher->assign('_USR_DELEGATE', $case['CURRENT_USER_UID']); if (!isset($_SESSION['APPLICATION']) || !isset($_SESSION['TASK']) || !isset($_SESSION['INDEX'])) { $_SESSION['PROCESS'] = $case['PRO_UID']; diff --git a/workflow/engine/templates/cases/open.js b/workflow/engine/templates/cases/open.js index 1e4a91057..d4c09e5b5 100644 --- a/workflow/engine/templates/cases/open.js +++ b/workflow/engine/templates/cases/open.js @@ -1368,7 +1368,8 @@ Ext.onReady(function(){ Actions.reassignCase = function() { var rowSelected = Ext.getCmp("grdpnlUsersToReassign").getSelectionModel().getSelected(); - + var msg = ""; + var credentials = JSON.parse(_CREDENTIALS); if( rowSelected ) { if (Ext.getCmp('idTextareaReason').getValue() === '') { Ext.Msg.alert(_('ID_ALERT'), _('ID_THE_REASON_REASSIGN_USER_EMPTY')); @@ -1376,11 +1377,17 @@ Ext.onReady(function(){ } PMExt.confirm(_('ID_CONFIRM'), _('ID_REASSIGN_CONFIRM'), function(){ Ext.Ajax.request({ - url : 'ajaxListener' , - params : {action : 'reassignCase', USR_UID: rowSelected.data.USR_UID, NOTE_REASON: Ext.getCmp('idTextareaReason').getValue(), NOTIFY_REASSIGN: Ext.getCmp('idCheckboxReason').getValue()}, - success: function ( result, request ) { - var data = Ext.util.JSON.decode(result.responseText); - if( data.status == 0 ) { + method:"PUT", + url: _SERVER + "/api/1.0/" + _WORKSPACE + `/cases/${_APP_UID}/reassign-case`, + headers: { + "Accept": "application/json", + "Content-Type": "application/json", + "Authorization": `Bearer ` + credentials.accessToken, + }, + jsonData : {del_index : _DEL_INDEX_DELEGATE, usr_uid_target: rowSelected.data.USR_UID,usr_uid_source: _USR_DELEGATE, reason: Ext.getCmp('idTextareaReason').getValue()}, + success: function (result, request) { + var data = result; + if( data.status == 0 || data.status == 200) { try { if (typeof parent.notify !== "undefined") { parent.notify('', data.msg); @@ -1402,8 +1409,9 @@ Ext.onReady(function(){ alert(data.msg); } }, - failure: function ( result, request) { - Ext.MessageBox.alert( _('ID_FAILED') , result.responseText); + failure: function (result, request) { + msg = JSON.parse(result.responseText); + Ext.MessageBox.alert( _('ID_FAILED') , msg.error? msg.error.message: ""); } }); });