mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2026-03-03 20:49:41 +00:00
Update AuditTrailRepository to improve user handling and fix nullable user type in AuditTrail
- Changed `getUser` method in `AuditTrail` to allow null values by updating the return type to `?User`. - Updated `insert` method in `AuditTrailRepository` to handle nullable users, ensuring the `user_id` parameter is set only when applicable. - Improved code robustness by adding null-check logic for user assignment in the SQL query.
This commit is contained in:
@@ -54,7 +54,7 @@ class AuditTrail
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
public function getUser(): User
|
||||
public function getUser(): ?User
|
||||
{
|
||||
return $this->user;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ use Doctrine\DBAL\Types\Types;
|
||||
use Doctrine\Persistence\ManagerRegistry;
|
||||
|
||||
/**
|
||||
* @implements ServiceEntityRepository<AuditTrail>
|
||||
* @extends ServiceEntityRepository<AuditTrail>
|
||||
*/
|
||||
class AuditTrailRepository extends ServiceEntityRepository
|
||||
{
|
||||
@@ -48,11 +48,15 @@ class AuditTrailRepository extends ServiceEntityRepository
|
||||
->setParameter('id', $auditTrail->getId())
|
||||
->setParameter('action', $auditTrail->getAction())
|
||||
->setParameter('occured_at', $auditTrail->getOccurredAt(), Types::DATETIMETZ_IMMUTABLE)
|
||||
->setParameter('user_id', $auditTrail->getUser()?->getId())
|
||||
->setParameter('user_id', null)
|
||||
->setParameter('description', $auditTrail->getDescription())
|
||||
->setParameter('targets', $auditTrail->getTargets(), Types::JSON)
|
||||
->setParameter('metadata', $auditTrail->getMetadata(), Types::JSON);
|
||||
|
||||
if (null !== $user = $auditTrail->getUser()) {
|
||||
$sql->setParameter('user_id', $user->getId());
|
||||
}
|
||||
|
||||
$sql->executeQuery();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user