/** * @param TblDebtor $tblDebtor * * @return bool */ public function checkInvoiceFromDebtorIsPaidByDebtor(TblDebtor $tblDebtor) { $Entity = $this->Connection->getEntityManager()->getEntity('TblInvoice')->findOneBy(array(TblInvoice::ATTR_IS_PAID => true, TblInvoice::ATTR_DEBTOR_NUMBER => $tblDebtor->getDebtorNumber())); return null === $Entity ? false : true; }
/** * @param IFormInterface $Stage * @param TblDebtor $Debtor * @param $Reference * * @return IFormInterface|string */ public function executeAddReference(IFormInterface &$Stage = null, TblDebtor $Debtor, $Reference) { /** * Skip to Frontend */ if (null === $Reference) { return $Stage; } $Error = false; if (isset($Reference['Reference']) && empty($Reference['Reference'])) { $Stage->setError('Reference[Reference]', 'Bitte geben sie eine Mandatsreferenz an'); $Error = true; } if (isset($Reference['Reference']) && Banking::useService()->entityReferenceByReferenceActive($Reference['Reference'])) { $Stage->setError('Reference[Reference]', 'Die Mandatsreferenz exisitiert bereits. Bitte geben Sie eine andere an'); $Error = true; } if (!$Error) { (new Data($this->Binding))->actionAddReference($Reference['Reference'], $Debtor->getDebtorNumber(), $Reference['ReferenceDate'], Commodity::useService()->entityCommodityById($Reference['Commodity'])); return new Success('Die Referenz ist erfasst worden') . new Redirect('/Billing/Accounting/Banking/Debtor/Reference', 0, array('Id' => $Debtor->getId())); } return $Stage; }