change
This commit is contained in:
@@ -41,7 +41,9 @@ use Espo\Core\Exceptions\BadRequest;
|
||||
use Espo\Core\Exceptions\Forbidden;
|
||||
use Espo\Core\Exceptions\NotFound;
|
||||
use Espo\Core\ORM\EntityManager;
|
||||
use Espo\Core\ORM\Repository\Option\SaveOption;
|
||||
use Espo\Core\Utils\Metadata;
|
||||
use Espo\Entities\User;
|
||||
use Espo\Tools\Currency\Conversion\EntityConverterFactory;
|
||||
use RuntimeException;
|
||||
|
||||
@@ -52,7 +54,8 @@ class ConvertCurrency implements Action
|
||||
private Acl $acl,
|
||||
private EntityManager $entityManager,
|
||||
private Metadata $metadata,
|
||||
private CurrencyConfigDataProvider $configDataProvider
|
||||
private CurrencyConfigDataProvider $configDataProvider,
|
||||
private User $user
|
||||
) {}
|
||||
|
||||
public function process(Params $params, Data $data): void
|
||||
@@ -97,6 +100,8 @@ class ConvertCurrency implements Action
|
||||
$converter = $this->converterFactory->create($entityType);
|
||||
|
||||
$converter->convert($entity, $targetCurrency, $rates);
|
||||
|
||||
$this->entityManager->saveEntity($entity, [SaveOption::MODIFIED_BY_ID => $this->user->getId()]);
|
||||
}
|
||||
|
||||
private function getRatesFromData(Data $data): ?CurrencyRates
|
||||
|
||||
@@ -42,7 +42,9 @@ use Espo\Core\MassAction\QueryBuilder;
|
||||
use Espo\Core\MassAction\Result;
|
||||
use Espo\Core\ORM\Entity as CoreEntity;
|
||||
use Espo\Core\ORM\EntityManager;
|
||||
use Espo\Core\ORM\Repository\Option\SaveOption;
|
||||
use Espo\Core\Utils\Metadata;
|
||||
use Espo\Entities\User;
|
||||
use Espo\Tools\Currency\Conversion\EntityConverterFactory;
|
||||
use RuntimeException;
|
||||
|
||||
@@ -54,7 +56,8 @@ class MassConvertCurrency implements MassAction
|
||||
private EntityManager $entityManager,
|
||||
private Metadata $metadata,
|
||||
private CurrencyConfigDataProvider $configDataProvider,
|
||||
private EntityConverterFactory $converterFactory
|
||||
private EntityConverterFactory $converterFactory,
|
||||
private User $user
|
||||
) {}
|
||||
|
||||
public function process(Params $params, Data $data): Result
|
||||
@@ -115,6 +118,8 @@ class MassConvertCurrency implements MassAction
|
||||
|
||||
$converter->convert($entity, $targetCurrency, $rates);
|
||||
|
||||
$this->entityManager->saveEntity($entity, [SaveOption::MODIFIED_BY_ID => $this->user->getId()]);
|
||||
|
||||
$ids[] = $entity->getId();
|
||||
$count++;
|
||||
}
|
||||
|
||||
@@ -36,7 +36,6 @@ use Espo\Core\Currency\Rates;
|
||||
use Espo\Core\Field\Currency;
|
||||
use Espo\Core\ORM\Entity as CoreEntity;
|
||||
use Espo\Core\Utils\Metadata;
|
||||
use Espo\Entities\User;
|
||||
use Espo\ORM\Entity;
|
||||
use Espo\ORM\EntityManager;
|
||||
use LogicException;
|
||||
@@ -50,8 +49,7 @@ class DefaultEntityConverter implements EntityConverter
|
||||
private Converter $converter,
|
||||
private EntityManager $entityManager,
|
||||
private Metadata $metadata,
|
||||
private Acl $acl,
|
||||
private User $user
|
||||
private Acl $acl
|
||||
) {}
|
||||
|
||||
/**
|
||||
@@ -88,8 +86,6 @@ class DefaultEntityConverter implements EntityConverter
|
||||
|
||||
$entity->setValueObject($field, $convertedValue);
|
||||
}
|
||||
|
||||
$this->entityManager->saveEntity($entity, ['modifiedById' => $this->user->getId()]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -33,6 +33,8 @@ use Espo\Core\Currency\Rates;
|
||||
use Espo\ORM\Entity;
|
||||
|
||||
/**
|
||||
* Converts entity currency values. Is not supposed to save the entity.
|
||||
*
|
||||
* @template TEntity of Entity
|
||||
*/
|
||||
interface EntityConverter
|
||||
|
||||
Reference in New Issue
Block a user