entityManager = $entityManager; } /** * @param string $name * @param string $extension * * @return FileType|null */ public function findByNameAndExtension(string $name, string $extension): ?FileType { $qb = $this->entityManager->createQueryBuilder(); $qb->select('ft') ->from(FileType::class, 'ft') ->where('ft.name = :name') ->andWhere('ft.extension = :extension') ->andWhere('ft.deletedAt IS NULL') ->setParameters(['name' => $name, 'extension' => $extension]); return $qb->getQuery() ->getOneOrNullResult(); } /** * @param FileType $fileType * * @return FileType */ public function save(FileType $fileType): FileType { $this->entityManager->persist($fileType); $this->entityManager->flush(); return $fileType; } }