diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php b/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php index f8e126d10..39236f97c 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/CaseScheduler.php @@ -151,6 +151,7 @@ class CaseScheduler $criteria = new \Criteria("workflow"); $criteria->addSelectColumn(\CaseSchedulerPeer::TAS_UID); $criteria->add(\CaseSchedulerPeer::SCH_NAME, $name, \Criteria::EQUAL); + $criteria->add(\CaseSchedulerPeer::PRO_UID, $processUid, \Criteria::EQUAL); $rsCriteria = \CaseSchedulerPeer::doSelectRS($criteria); $rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC); $rsCriteria->next(); @@ -168,13 +169,14 @@ class CaseScheduler * * return bool Return true if the name exists, false otherwise */ - public function existsNameUpdate($schUid, $name) + public function existsNameUpdate($processUid, $schUid, $name) { try { $criteria = new \Criteria("workflow"); $criteria->addSelectColumn(\CaseSchedulerPeer::TAS_UID); $criteria->add(\CaseSchedulerPeer::SCH_NAME, $name, \Criteria::EQUAL); $criteria->add(\CaseSchedulerPeer::SCH_UID, $schUid, \Criteria::NOT_EQUAL); + $criteria->add(\CaseSchedulerPeer::PRO_UID, $processUid, \Criteria::EQUAL); $rsCriteria = \CaseSchedulerPeer::doSelectRS($criteria); $rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC); $rsCriteria->next(); @@ -545,7 +547,7 @@ class CaseScheduler if ($caseSchedulerData['SCH_NAME']=='') { throw new \Exception(\G::LoadTranslation("ID_CAN_NOT_BE_EMPTY", array ('sch_name'))); } - if ($this->existsNameUpdate($sSchUID, $caseSchedulerData['SCH_NAME'])) { + if ($this->existsNameUpdate($sProcessUID, $sSchUID, $caseSchedulerData['SCH_NAME'])) { throw new \Exception(\G::LoadTranslation("ID_CASE_SCHEDULER_DUPLICATE")); } $mUser = $this->getUser($caseSchedulerData['SCH_DEL_USER_NAME'], $caseSchedulerData['TAS_UID']);