feat(claims): implement automatic claim creation for insurance sessions

This commit is contained in:
hamed
2026-06-24 02:08:12 +03:30
parent 14c6dd6456
commit f7eb1ebd91
5 changed files with 56 additions and 1 deletions
@@ -67,6 +67,21 @@ class ClaimRepository extends ServiceEntityRepository
}, $rows);
}
/** آیا برای این صورتحساب از قبل مطالبه‌ای ساخته شده؟ (از طریق آیتم‌های صورتحساب) */
public function existsForInvoice(int $invoiceId): bool
{
$count = (int) $this->createQueryBuilder('c')
->select('COUNT(c.id)')
->join('c.items', 'ci')
->join('App\Billing\Entity\InvoiceItem', 'ii', 'WITH', 'ii.id = ci.invoiceItemId')
->where('IDENTITY(ii.invoice) = :invoiceId')
->setParameter('invoiceId', $invoiceId)
->getQuery()
->getSingleScalarResult();
return $count > 0;
}
public function save(Claim $entity, bool $flush = true): void
{
$this->getEntityManager()->persist($entity);