diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/AssignmentRulesMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/AssignmentRulesMigrator.php index 6c705e1a3..49012987f 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/AssignmentRulesMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/AssignmentRulesMigrator.php @@ -27,10 +27,15 @@ class AssignmentRulesMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createTaskRows($data); + if ($replace) { + $this->processes->createTaskRows($data); + } else { + $this->processes->updateTaskRows($data); + } + } catch (\Exception $e) { \Logger::log($e->getMessage()); throw new ImportException($e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DBConnectionMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DBConnectionMigrator.php index f4848c28c..884f0ae54 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DBConnectionMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DBConnectionMigrator.php @@ -25,10 +25,14 @@ class DBConnectionMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createDBConnectionsRows($data); + if ($replace) { + $this->processes->createDBConnectionsRows($data); + } else { + $this->processes->updateDBConnectionsRows($data); + } } catch (\Exception $e) { \Logger::log($e->getMessage()); throw new ImportException($e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DynaformsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DynaformsMigrator.php index 9e0100363..f0a051082 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DynaformsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/DynaformsMigrator.php @@ -24,10 +24,15 @@ class DynaformsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createDynaformRows($data); + if ($replace) { + $this->processes->createDynaformRows($data); + } else { + $this->processes->updateDynaformRows($data); + } + } catch (\Exception $e) { \Logger::log($e->getMessage()); throw new ImportException($e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/FilesMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/FilesMigrator.php index 8f7d7ceef..0486b03fd 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/FilesMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/FilesMigrator.php @@ -29,13 +29,18 @@ class FilesMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { $aTable = $data['TABLE']; foreach ($aTable as $value) { + if($value['PRF_EDITABLE'] !== 1){ - $this->processes->createFilesManager($value['PRO_UID'],array($value)); + if ($replace) { + $this->processes->createFilesManager($value['PRO_UID'], array($value)); + } else { + $this->processes->updateFilesManager(array($value)); + } } } $aPath = $data['PATH']; diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/InputDocumentsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/InputDocumentsMigrator.php index 409dbe766..24d5a5eaa 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/InputDocumentsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/InputDocumentsMigrator.php @@ -25,10 +25,15 @@ class InputDocumentsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createInputRows($data); + if ($replace) { + $this->processes->createInputRows($data); + } else { + $this->processes->updateInputRows($data); + } + } catch (\Exception $e) { \Logger::log($e->getMessage()); throw new ImportException($e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/NullMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/NullMigrator.php index 7e08e39ca..394b79da6 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/NullMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/NullMigrator.php @@ -31,7 +31,7 @@ class NullMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { // TODO: Implement import() method. } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/OutputDocumentsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/OutputDocumentsMigrator.php index 7e4c111c0..7ad2bbbf5 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/OutputDocumentsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/OutputDocumentsMigrator.php @@ -27,10 +27,15 @@ class OutputDocumentsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createOutputRows($data); + if ($replace) { + $this->processes->createOutputRows($data); + } else { + $this->processes->updateOutputRows($data); + } + } catch (\Exception $e) { \Logger::log($e->getMessage()); throw new ImportException($e->getMessage()); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/PermissionsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/PermissionsMigrator.php index 5f81cdefd..b3be41d87 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/PermissionsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/PermissionsMigrator.php @@ -26,7 +26,7 @@ class PermissionsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ProcessDefinitionMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ProcessDefinitionMigrator.php index 3318492fd..a142a3b4b 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ProcessDefinitionMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ProcessDefinitionMigrator.php @@ -81,8 +81,7 @@ class ProcessDefinitionMigrator implements Importable, Exportable $oData->tasks = $this->processes->getTaskRows($prj_uid); $oDataTask = new \StdClass(); - $oDataTask->taskusers = $this->getTaskUserRows( $oData->tasks ); - + $oDataTask->taskusers = $this->processes->getTaskUserRows( $oData->tasks ); $oData->routes = $this->processes->getRouteRows($prj_uid); $oData->lanes = $this->processes->getLaneRows($prj_uid); $oData->gateways = $this->processes->getGatewayRows($prj_uid); diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ReportTablesMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ReportTablesMigrator.php index 1f6d1e33f..851d2ed4c 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ReportTablesMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/ReportTablesMigrator.php @@ -25,7 +25,7 @@ class ReportTablesMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsMigrator.php index 567f331d0..3d363a6d8 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsMigrator.php @@ -26,7 +26,7 @@ class SupervisorsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsObjectsMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsObjectsMigrator.php index be3722fca..ffd9c967a 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsObjectsMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/SupervisorsObjectsMigrator.php @@ -25,7 +25,7 @@ class SupervisorsObjectsMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TemplatesMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TemplatesMigrator.php index 7dce9a5df..80fd529aa 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TemplatesMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TemplatesMigrator.php @@ -27,7 +27,7 @@ class TemplatesMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { //TABLE diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TriggersMigrator.php b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TriggersMigrator.php index ba2ccbd50..69de754a6 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TriggersMigrator.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Migrator/TriggersMigrator.php @@ -27,10 +27,15 @@ class TriggersMigrator implements Importable, Exportable // TODO: Implement beforeImport() method. } - public function import($data) + public function import($data, $replace) { try { - $this->processes->createTriggerRows($data); + if ($replace) { + $this->processes->createTriggerRows($data); + } else { + $this->processes->updateTriggerRows($data); + } + } catch (\Exception $e) { \Logger::log($e->getMessage()); throwException(new ImportException($e->getMessage()));