Merged in victorsl/processmaker (pull request #1406)
PM-00000 "Solo los Start-Event pueden iniciar casos" SOLVED
This commit is contained in:
@@ -238,7 +238,7 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
$event = \BpmnEventPeer::retrieveByPK($data["FLO_ELEMENT_ORIGIN"]);
|
$event = \BpmnEventPeer::retrieveByPK($data["FLO_ELEMENT_ORIGIN"]);
|
||||||
|
|
||||||
// setting as start task
|
// setting as start task
|
||||||
if ($event && $event->getEvnType() == "START") {
|
if (!is_null($event) && $event->getEvnType() == "START" && $event->getEvnMarker() == "EMPTY") {
|
||||||
$this->wp->setStartTask($data["FLO_ELEMENT_DEST"]);
|
$this->wp->setStartTask($data["FLO_ELEMENT_DEST"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -284,7 +284,7 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
) {
|
) {
|
||||||
$event = \BpmnEventPeer::retrieveByPK($flowBefore->getFloElementOrigin());
|
$event = \BpmnEventPeer::retrieveByPK($flowBefore->getFloElementOrigin());
|
||||||
|
|
||||||
if (!is_null($event) && $event->getEvnType() == "START") {
|
if (!is_null($event) && $event->getEvnType() == "START" && $event->getEvnMarker() == "EMPTY") {
|
||||||
//Remove as start task
|
//Remove as start task
|
||||||
$this->wp->setStartTask($flowBefore->getFloElementDest(), false);
|
$this->wp->setStartTask($flowBefore->getFloElementDest(), false);
|
||||||
|
|
||||||
@@ -358,7 +358,7 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
if (is_null($bpmnFlow)) {
|
if (is_null($bpmnFlow)) {
|
||||||
$event = \BpmnEventPeer::retrieveByPK($flow->getFloElementOrigin());
|
$event = \BpmnEventPeer::retrieveByPK($flow->getFloElementOrigin());
|
||||||
|
|
||||||
if (!is_null($event) && $event->getEvnType() == "START") {
|
if (!is_null($event) && $event->getEvnType() == "START" && $event->getEvnMarker() == "EMPTY") {
|
||||||
$activity = \BpmnActivityPeer::retrieveByPK($flow->getFloElementDest());
|
$activity = \BpmnActivityPeer::retrieveByPK($flow->getFloElementDest());
|
||||||
|
|
||||||
if (!is_null($activity)) {
|
if (!is_null($activity)) {
|
||||||
@@ -390,7 +390,7 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
switch ($flow->getFloElementOriginType()) {
|
switch ($flow->getFloElementOriginType()) {
|
||||||
case "bpmnActivity":
|
case "bpmnActivity":
|
||||||
switch ($flow->getFloElementDestType()) {
|
switch ($flow->getFloElementDestType()) {
|
||||||
// activity->activity
|
//Activity1 -> Activity2
|
||||||
case "bpmnActivity":
|
case "bpmnActivity":
|
||||||
$this->wp->removeRouteFromTo($flow->getFloElementOrigin(), $flow->getFloElementDest());
|
$this->wp->removeRouteFromTo($flow->getFloElementOrigin(), $flow->getFloElementDest());
|
||||||
break;
|
break;
|
||||||
@@ -411,12 +411,12 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
$eventUid = parent::addEvent($data);
|
$eventUid = parent::addEvent($data);
|
||||||
$event = \BpmnEventPeer::retrieveByPK($eventUid);
|
$event = \BpmnEventPeer::retrieveByPK($eventUid);
|
||||||
|
|
||||||
// create case scheduler
|
//Delete case scheduler
|
||||||
if ($event && $event->getEvnMarker() == "TIMER" && $event->getEvnType() == "START") {
|
if ($event && $event->getEvnMarker() == "TIMER" && $event->getEvnType() == "START") {
|
||||||
$this->wp->addCaseScheduler($eventUid);
|
$this->wp->addCaseScheduler($eventUid);
|
||||||
}
|
}
|
||||||
|
|
||||||
// create web entry
|
//Delete WebEntry-Event
|
||||||
if ($event && $event->getEvnMarker() == "MESSAGE" && $event->getEvnType() == "START") {
|
if ($event && $event->getEvnMarker() == "MESSAGE" && $event->getEvnType() == "START") {
|
||||||
$this->wp->addWebEntry($eventUid);
|
$this->wp->addWebEntry($eventUid);
|
||||||
}
|
}
|
||||||
@@ -782,11 +782,13 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
$result = array();
|
$result = array();
|
||||||
|
|
||||||
$projectData['prj_uid'] = $prjUid;
|
$projectData['prj_uid'] = $prjUid;
|
||||||
|
|
||||||
$bwp = BpmnWorkflow::load($prjUid);
|
$bwp = BpmnWorkflow::load($prjUid);
|
||||||
|
|
||||||
$projectRecord = array_change_key_case($projectData, CASE_UPPER);
|
$projectRecord = array_change_key_case($projectData, CASE_UPPER);
|
||||||
|
|
||||||
$bwp->update($projectRecord);
|
$bwp->update($projectRecord);
|
||||||
|
|
||||||
////
|
|
||||||
/*
|
/*
|
||||||
* Diagram's Laneset Handling
|
* Diagram's Laneset Handling
|
||||||
*/
|
*/
|
||||||
@@ -831,7 +833,6 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
////
|
|
||||||
/*
|
/*
|
||||||
* Diagram's Lane Handling
|
* Diagram's Lane Handling
|
||||||
*/
|
*/
|
||||||
@@ -1184,7 +1185,6 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
////
|
|
||||||
/*
|
/*
|
||||||
* Diagram's Participant Handling
|
* Diagram's Participant Handling
|
||||||
*/
|
*/
|
||||||
@@ -1241,7 +1241,6 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Diagram's Flows Handling
|
* Diagram's Flows Handling
|
||||||
*/
|
*/
|
||||||
@@ -1252,16 +1251,23 @@ class BpmnWorkflow extends Project\Bpmn
|
|||||||
|
|
||||||
// if it is a new flow record
|
// if it is a new flow record
|
||||||
if ($forceInsert || ($generateUid && !\BpmnFlow::exists($flowData["FLO_UID"]))) {
|
if ($forceInsert || ($generateUid && !\BpmnFlow::exists($flowData["FLO_UID"]))) {
|
||||||
$oldFloUid = $flowData["FLO_UID"];
|
$uidOld = $flowData["FLO_UID"];
|
||||||
|
|
||||||
$flowData["FLO_UID"] = Util\Common::generateUID();
|
$flowData["FLO_UID"] = Util\Common::generateUID();
|
||||||
$result[] = array("object" => "flow", "new_uid" => $flowData["FLO_UID"], "old_uid" => $oldFloUid);
|
$result[] = array(
|
||||||
|
"object" => "flow",
|
||||||
|
"old_uid" => $uidOld,
|
||||||
|
"new_uid" => $flowData["FLO_UID"]
|
||||||
|
);
|
||||||
|
|
||||||
$mappedUid = self::mapUid($flowData["FLO_ELEMENT_ORIGIN"], $result);
|
$mappedUid = self::mapUid($flowData["FLO_ELEMENT_ORIGIN"], $result);
|
||||||
|
|
||||||
if ($mappedUid !== false) {
|
if ($mappedUid !== false) {
|
||||||
$flowData["FLO_ELEMENT_ORIGIN"] = $mappedUid;
|
$flowData["FLO_ELEMENT_ORIGIN"] = $mappedUid;
|
||||||
}
|
}
|
||||||
|
|
||||||
$mappedUid = self::mapUid($flowData["FLO_ELEMENT_DEST"], $result);
|
$mappedUid = self::mapUid($flowData["FLO_ELEMENT_DEST"], $result);
|
||||||
|
|
||||||
if ($mappedUid !== false) {
|
if ($mappedUid !== false) {
|
||||||
$flowData["FLO_ELEMENT_DEST"] = $mappedUid;
|
$flowData["FLO_ELEMENT_DEST"] = $mappedUid;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user