From 66fb7b4e811266f2318e61e3b5c43314bf2cae47 Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 10 Apr 2015 11:49:42 +0300 Subject: [PATCH] fix import --- application/Espo/Repositories/Import.php | 2 +- application/Espo/Services/Import.php | 14 +++++++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/application/Espo/Repositories/Import.php b/application/Espo/Repositories/Import.php index d95ae4815c..52b16a6242 100644 --- a/application/Espo/Repositories/Import.php +++ b/application/Espo/Repositories/Import.php @@ -51,7 +51,7 @@ class Import extends \Espo\Core\ORM\Repositories\RDB case 'duplicates': $part = "import_entity.is_duplicate = 1"; break; - case 'updates': + case 'updated': $part = "import_entity.is_updated = 1"; break; } diff --git a/application/Espo/Services/Import.php b/application/Espo/Services/Import.php index fc6e374b13..208082def0 100644 --- a/application/Espo/Services/Import.php +++ b/application/Espo/Services/Import.php @@ -218,7 +218,7 @@ class Import extends \Espo\Services\Record if ($entity) { $this->getEntityManager()->removeEntity($entity); } - $this->getEntityManager()->getRepository($scope)->deleteFromDb($entityId); + $this->getEntityManager()->getRepository($entityType)->deleteFromDb($entityId); } $this->getEntityManager()->removeEntity($import); @@ -347,6 +347,12 @@ class Import extends \Espo\Services\Record $recordService = $this->getRecordService($scope); $entity = $this->getEntityManager()->getEntity($scope, $id); + if (!$entity) { + $entity = $this->getEntityManager()->getEntity($scope); + $entity->set('id', $id); + } + + $isNew = $entity->isNew(); $entity->set('assignedUserId', $this->getUser()->id); @@ -469,10 +475,12 @@ class Import extends \Espo\Services\Record $a = $entity->toArray(); try { - $isDuplicate = $recordService->checkEntityForDuplicate($entity); + if ($isNew) { + $isDuplicate = $recordService->checkEntityForDuplicate($entity); + } if ($this->getEntityManager()->saveEntity($entity, array('noStream' => true, 'noNotifications' => true))) { $result['id'] = $entity->id; - if (empty($id)) { + if ($isNew) { $result['isImported'] = true; if ($isDuplicate) { $result['isDuplicate'] = true;