Example #1
0
 public function confirmDocument(Document $invoice, User $user)
 {
     if ($invoice instanceof Invoice) {
         $numberPrefix = null;
         $numberNumber = null;
         $number = $this->settingsService->getNumberByUser($user);
         if ($number) {
             $numberNumber = $number->getStartNumber();
             $numberPrefix = $number->getPrefix();
         }
         $sysNr = $this->entityManager->getRepository(Invoice::getClass())->getNextDocumentNumber();
         $finalNumber = $numberNumber > $sysNr ? $numberNumber : $sysNr;
         $invoice->setDocumentNumber($finalNumber);
         $invoice->setPrefix($numberPrefix);
         $invoice->setFullNumber($numberPrefix . $finalNumber);
     }
     $invoice->setConfirmed(true);
     $invoice->setStatus(Invoice::STATUS_CONFIRMED);
     return $this->saveInvoice($invoice);
 }