Esempio n. 1
0
 /**
  * @param ClientAccount $account
  * @param Bill $bill
  * @param integer $year
  * @param integer $quarter
  * @param bool $flush
  * @return BillItem
  */
 public function createBillItem(ClientAccount $account, Bill $bill, $flush = true)
 {
     $sysAccount = $account->getSystemAccount();
     $year = $bill->getYear();
     $quarter = $bill->getQuarter();
     $riaFee = $this->getRiaBillSumByPeriod($account, $year, $quarter);
     $adminFee = $this->getAdminBillSumByPeriod($account, $year, $quarter);
     $billItem = new BillItem();
     $billItem->setSystemAccount($sysAccount);
     $billItem->setBill($bill);
     $billItem->setFeeBilled($riaFee + $adminFee);
     $billItem->setRiaFee($riaFee);
     $billItem->setAdminFee($adminFee);
     $billItem->setCreatedAt(new \DateTime());
     $billItem->setStatus(BillItem::STATUS_BILL_GENERATED);
     $this->em->persist($billItem);
     $flush && $this->em->flush();
     return $billItem;
 }