From 721fd6d84ca7955665fd9b3ea3f39b1fe88e6e9c Mon Sep 17 00:00:00 2001 From: "marcelo.cuiza" Date: Fri, 20 Nov 2015 18:59:10 -0400 Subject: [PATCH] =?UTF-8?q?PM-4134:=20Agregar=20validaci=C3=B3n=20cuando?= =?UTF-8?q?=20se=20cambian=20los=20markers=20y=20se=20tienen=20casos=20una?= =?UTF-8?q?ssigned?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit . --- .../src/ProcessMaker/BusinessModel/Task.php | 18 +++++++++++++++++ .../Services/Api/Project/Activity.php | 20 +++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Task.php b/workflow/engine/src/ProcessMaker/BusinessModel/Task.php index 0bf128b11..1bd506ad4 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Task.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Task.php @@ -1927,5 +1927,23 @@ class Task throw $e; } } + + public function getValidateSelfService($data) + { + $data = array_change_key_case($data, CASE_LOWER); + $sTaskUID = $data['act_uid']; + $response = new stdclass(); + $oCriteria = new Criteria(); + $oCriteria->add(AppDelegationPeer::DEL_THREAD_STATUS, "OPEN"); + $oCriteria->add(AppDelegationPeer::TAS_UID, $sTaskUID); + $oCriteria->add(AppDelegationPeer::USR_UID, ""); + $oApplication = AppDelegationPeer::doSelectOne($oCriteria); + if(!empty($oApplication)) { + $response->result = false; + $response->message = G::LoadTranslation('ID_CURRENT_ASSING_TYPE_WITH_CASES'); + } + $response->result = true; + return $response; + } } diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Project/Activity.php b/workflow/engine/src/ProcessMaker/Services/Api/Project/Activity.php index 9a04e2232..136db2822 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Project/Activity.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Project/Activity.php @@ -202,6 +202,26 @@ class Activity extends Api throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); } } + + /** + * @url PUT /:prj_uid/activity/validate-active-cases + * + * @param string $prj_uid {@min 32}{@max 32} + */ + public function doGetActivityValidateSelfService($prj_uid, $request_data = array()) + { + try { + $task = new \ProcessMaker\BusinessModel\Task(); + $task->setFormatFieldNameInUppercase(false); + $task->setArrayParamException(array("taskUid" => "act_uid")); + + $response = $task->getValidateSelfService($request_data); + + return $response; + } catch (\Exception $e) { + throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage())); + } + } }