ProcessMaker-BE "BPMN Import (fix)"
- Al realizar la importacion de un proceso con la opcion "keep" genera un error, esto debido a que estamos tratando de importar un proceso suponiendo que ya existe el mismo. - Se setea el campo "PRO_UID" con el valor correcto, esto al adicionar un Activity, Event y Gateway
This commit is contained in:
@@ -309,7 +309,10 @@ class Bpmn extends Handler
|
|||||||
}
|
}
|
||||||
|
|
||||||
// setting defaults
|
// setting defaults
|
||||||
$data['ACT_UID'] = array_key_exists('ACT_UID', $data) ? $data['ACT_UID'] : Common::generateUID();;
|
$processUid = $process->getProUid();
|
||||||
|
|
||||||
|
$data["ACT_UID"] = (array_key_exists("ACT_UID", $data))? $data["ACT_UID"] : Common::generateUID();
|
||||||
|
$data["PRO_UID"] = $processUid;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
self::log("Add Activity with data: ", $data);
|
self::log("Add Activity with data: ", $data);
|
||||||
@@ -317,7 +320,7 @@ class Bpmn extends Handler
|
|||||||
$activity = new Activity();
|
$activity = new Activity();
|
||||||
$activity->fromArray($data);
|
$activity->fromArray($data);
|
||||||
$activity->setPrjUid($this->getUid());
|
$activity->setPrjUid($this->getUid());
|
||||||
$activity->setProUid($process->getProUid());
|
$activity->setProUid($processUid);
|
||||||
$activity->save();
|
$activity->save();
|
||||||
|
|
||||||
self::log("Add Activity Success!");
|
self::log("Add Activity Success!");
|
||||||
@@ -395,7 +398,10 @@ class Bpmn extends Handler
|
|||||||
public function addEvent($data)
|
public function addEvent($data)
|
||||||
{
|
{
|
||||||
// setting defaults
|
// setting defaults
|
||||||
|
$processUid = $this->getProcess("object")->getProUid();
|
||||||
|
|
||||||
$data['EVN_UID'] = array_key_exists('EVN_UID', $data) ? $data['EVN_UID'] : Common::generateUID();
|
$data['EVN_UID'] = array_key_exists('EVN_UID', $data) ? $data['EVN_UID'] : Common::generateUID();
|
||||||
|
$data["PRO_UID"] = $processUid;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
self::log("Add Event with data: ", $data);
|
self::log("Add Event with data: ", $data);
|
||||||
@@ -403,7 +409,7 @@ class Bpmn extends Handler
|
|||||||
$event = new Event();
|
$event = new Event();
|
||||||
$event->fromArray($data);
|
$event->fromArray($data);
|
||||||
$event->setPrjUid($this->project->getPrjUid());
|
$event->setPrjUid($this->project->getPrjUid());
|
||||||
$event->setProUid($this->getProcess("object")->getProUid());
|
$event->setProUid($processUid);
|
||||||
$event->save();
|
$event->save();
|
||||||
|
|
||||||
self::log("Add Event Success!");
|
self::log("Add Event Success!");
|
||||||
@@ -485,14 +491,17 @@ class Bpmn extends Handler
|
|||||||
public function addGateway($data)
|
public function addGateway($data)
|
||||||
{
|
{
|
||||||
// setting defaults
|
// setting defaults
|
||||||
|
$processUid = $this->getProcess("object")->getProUid();
|
||||||
|
|
||||||
$data['GAT_UID'] = array_key_exists('GAT_UID', $data) ? $data['GAT_UID'] : Common::generateUID();
|
$data['GAT_UID'] = array_key_exists('GAT_UID', $data) ? $data['GAT_UID'] : Common::generateUID();
|
||||||
|
$data["PRO_UID"] = $processUid;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
self::log("Add Gateway with data: ", $data);
|
self::log("Add Gateway with data: ", $data);
|
||||||
$gateway = new Gateway();
|
$gateway = new Gateway();
|
||||||
$gateway->fromArray($data);
|
$gateway->fromArray($data);
|
||||||
$gateway->setPrjUid($this->getUid());
|
$gateway->setPrjUid($this->getUid());
|
||||||
$gateway->setProUid($this->getProcess("object")->getProUid());
|
$gateway->setProUid($processUid);
|
||||||
$gateway->save();
|
$gateway->save();
|
||||||
self::log("Add Gateway Success!");
|
self::log("Add Gateway Success!");
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
@@ -826,4 +835,5 @@ class Bpmn extends Handler
|
|||||||
$status = $value ? "DISABLED" : "ACTIVE";
|
$status = $value ? "DISABLED" : "ACTIVE";
|
||||||
$this->update(array("PRJ_STATUS" => $status));
|
$this->update(array("PRJ_STATUS" => $status));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user